Strona 1 z 2

Openvpn - konfiguracja adresów dla wielu klientów

: 14 lutego 2008, 07:42
autor: poldas
Witam

Uruchomiłem Openvpn-a w oparciu o certyfikaty (serwer Debian, stacje klienckie Windows), konfiguracja dla jednego klienta nie sprawiła żadnego problemu, pytanie brzmi:

Jak powinny być zdefiniowane zakresy adresów dla stacji klienckich w pliku serwera oraz jak powinno to wyglądać w pliku klienta?

Poniżej konfigi.

Serwer:

Kod: Zaznacz cały

dev tun
               tun-mtu 1500
               ifconfig 10.3.0.1 10.3.0.2

               ; port 5000

                user nobody
                group nobody

               comp-lzo

                  ; ping 15

                  ; ping 15
                  ; ping-restart 45
                  ; ping-timer-rem
                  ; persist-tun
                  ; persist-key

                verb 4
                tls-server
                dh /etc/openvpn/certs/dh1024.pem
                
                # certyfikat wystawcy (CA)
                ca /etc/openvpn/certs/cacert.pem

                # certyfikat bramy
                cert /etc/openvpn/certs/gwcert.pem

                # klucz prywatny bramy 
                key /etc/openvpn/certs/gwkey.pem
                # lub /etc/openvpn/certs/gwkey.pem_bezhasla
                ;eof
Klient:

Kod: Zaznacz cały

                dev tun
                tun-mtu 1500
                ifconfig 10.3.0.2 10.3.0.1

                tls-client

                 Certificate Authority file
                 ca c:\progra~1\openvpn\config\cacert.pem
                
                 # Our certificate/public key
                 cert c:\progra~1\openvpn\config\usercert.pem
                
                 # Our private key
                 key c:\progra~1\openvpn\config\userkey.pem
                
                 ; ping-restart 60
                 ; ping-timer-rem
                 ; persist-tun
                 ; persist-key
                 ; resolv-retry 86400
                
                # # keep-alive ping
                ping 10
                
                # # enable LZO compression
                comp-lzo
                verb 4
                ; eof
Z góry dziękuję za pomoc.

: 14 lutego 2008, 12:46
autor: kayo
Klient win32 ma obostrzenia co do adresow ip wykonaj na windowsie komende

Kod: Zaznacz cały

openvpn --show-valid-subnets
da ci to liste dostepnych ip dla klientow. Jeszcze na serwerze musisz podac w konfiguracji ze klienci korzystaja z tego samego certyfikatu - do pliku konfiguracji Openvpn dodaj

Kod: Zaznacz cały

duplicate-cn
Tak wygladaja moje configi
serwer

Kod: Zaznacz cały

local xx.xx.xx.xx
port 5000
proto udp
dev tun0
ca keys/roadwarrior/ca.crt
cert keys/roadwarrior/merynos.crt
key keys/roadwarrior/merynos.key
dh keys/roadwarrior/dh2048.pem
server 192.168.2.0 255.255.255.0
push "route 10.0.0.0 255.0.0.0"
duplicate-cn
crl-verify keys/roadwarrior/crl.pem
cipher BF-CBC
user nobody
group nogroup
status servers/merynos/logs/openvpn-status.log
log-append servers/merynos/logs/openvpn.log
verb 3
mute 20
max-clients 100
keepalive 10 120
client-config-dir /etc/openvpn/servers/merynos/ccd
comp-lzo
persist-key
persist-tun
ccd-exclusive
klient

Kod: Zaznacz cały

client
remote xx.xx.xx.xx 5000
dev tun
proto udp
resolv-retry infinite
nobind
ca c:\\progra~1\\openvpn\\config\\ca.crt
cert c:\\progra~1\\openvpn\\config\\merynosik.crt
key c:\\progra~1\\openvpn\\config\\merynosik.key
comp-lzo
ping 15
ping-restart 45
ping-timer-rem
persist-tun
persist-key
Powyzsza konfiguracja przydziela automagicznie ip klientowi

: 15 lutego 2008, 11:43
autor: poldas
Dziękuję za pomoc, oczywiście ruszyło, mam jednak jeszcze kilka pytań:
  1. Czy jest możliwość przydzielenia klientom adresów IP w sposób statyczny tj wpisując je w konfig?
  2. Co konkretnie oznaczają poniższe linie w pliku konfiguracyjnym:

    Kod: Zaznacz cały

    server 192.168.2.0 255.255.255.0 
    push "route 10.0.0.0 255.0.0.0" 
    
  3. Oraz poniższe linie:

    Kod: Zaznacz cały

    client-config-dir /etc/openvpn/servers/merynos/ccd 
    comp-lzo 
    persist-key 
    persist-tun 
    ccd-exclusive 
    
Z góry dziękuję za informacje.

: 04 lipca 2009, 14:01
autor: jacexx
Ja równiez przyłączam sie do przedmówcy, bardzo proszę kogoś o wytłumaczenie tych parametrów

: 04 lipca 2009, 19:29
autor: Cyphermen
Domyślam się że

Kod: Zaznacz cały

server 192.168.2.0 255.255.255.0
push "route 10.0.0.0 255.0.0.0" 
oznacza pule adresów z której są one przydzielane serwerowi oraz klientom a także przekierowanie domyślnej trasy bodajże do klienta. Chodzi chyba by dostać się przez tunel do sieci lan gdzie 10.0.0.0 to siec lokalna serwera. Ale głowy za to nie dam.

: 05 lipca 2009, 13:26
autor: jacexx
No tak, mozna z tego tak wnioskować ale dobrze by było wiedzieć co dokładnie się wpisuje. Może ktoś jeszcze się wypowie i pomoże odszyfrować te magiczne wpisy?

: 05 lipca 2009, 13:57
autor: Cyphermen

Kod: Zaznacz cały

server 192.168.2.0 255.255.255.0 
to pula adresów z których zostaną one przydzielone dla serwera i klientów by stworzyć tunel wirtualny.

Kod: Zaznacz cały

push "route 10.0.0.0 255.0.0.0" 
ten adres to zapewne adres sieci lan po stronie klienta, tak by można było dostać się do niej. Tyle wiem i tyle wywnioskowałem z google.pl.
Wydaje mi się że nie, a tu więcej już do wyjaśnienia chyba ze skorygowania mojej wypowiedzi jeśli się mylę.

: 05 lipca 2009, 20:17
autor: jacexx
No dobrze ale jeżeli mamy podłączając się do serwera dostać adres z puli 192.168.2.0 to po co jeszcze ta sieć z 10.0.0.0?

: 05 lipca 2009, 23:40
autor: Cyphermen
Bo adres 192.168.2.0 to jest pula adresów do utworzenia połączenia miedzy wami na tej wirtualnej karcie sieciowej.

Natomiast ta sieć 10.0.0.0 to sieć powiedzmy klienta. Sieć wewnętrzna. Powiedzmy że klient jest serwerem sieci lan 10.0.0.0. To żebyś mógł się do niej dostać to musisz mu podać tą drogę.

: 01 września 2009, 09:40
autor: ketchup
Witam.
¯eby nie zaczynać nowego tematu to podłącze się tutaj.
  1. Kod: Zaznacz cały

    user nobody
    group nogroup
    Oznacza ze vpn będzie startował na uprawnieniach użytkownika nobody.
    w logach mam ostrzeżenie ze użytkownik nobody może nie mieć uprawnień do podniesienia interfejsu wirtualnego.
    Czy uruchamianie na uprawnienia roota (czyli bez tych linijek) może czymś zaszkodzić?
  2. Kod: Zaznacz cały

    tls-server
    mode server
    Czy jak nie ma tych linijek w konfigu serwera to znaczy, że połączenie nie jest szyfrowane?
  3. Odpowiedz na dwie linijki
    comp-lzo – to algorytm kompresji
    client-config-dir ccd - to katalog z plikami specyficznych ustawień użytkowników
    Jeśli chcemy aby użytkownicy dostawali za każdym razem ten sam adres IP, możemy w
    pliku dla każdego użytkownika, w katalogu ccd, wpisać:

    Kod: Zaznacz cały

    ifconfig-push <adres klienta> <adres bramy>
    np.:

    Kod: Zaznacz cały

    ifconfig-push 10.8.0.6 10.8.0.5 
znalezione w M. Serafin „Sieci VPN”, wyd. Helion