Pakety pro OpenVPN jdou do internetu

rade-brno

Pakety pro OpenVPN jdou do internetu
« kdy: 14. 09. 2013, 12:22:22 »
Dobrý den všem.

Mám problém s OpenVPN na routeru s OpenWRT. Pakety nechodí do sítě VPN ale do internetu:

root@OpenWrt:~# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.0.0.138      0.0.0.0         UG    0      0        0 eth0.1
10.0.0.0        *               255.255.255.0   U     0      0        0 eth0.1
10.10.10.0      10.10.10.1      255.255.255.0   UG    0      0        0 tap0
10.10.10.0      *               255.255.255.0   U     0      0        0 tap0
192.168.1.0     *               255.255.255.0   U     0      0        0 br-lan
root@OpenWrt:~# ping 10.10.10.1
PING 10.10.10.1 (10.10.10.1): 56 data bytes
^C
--- 10.10.10.1 ping statistics ---
8 packets transmitted, 0 packets received, 100% packet loss
root@OpenWrt:~# traceroute 10.10.10.1
traceroute to 10.10.10.1 (10.10.10.1), 30 hops max, 38 byte packets
 1  10.0.0.138 (10.0.0.138)  0.889 ms  0.993 ms  0.962 ms
 2  88.103.200.9 (88.103.200.9)  8.113 ms  7.128 ms  7.850 ms
 3  88.103.203.33 (88.103.203.33)  13.375 ms  12.704 ms  12.500 ms
 4^C
root@OpenWrt:~#



Konfigurace klienta:
remote <ip_serveru>
tls-client
port 1194
proto tcp-client
dev tap
pull
ca /etc/openvpn/ca.crt
cert /etc/openvpn/client1.crt
key /etc/openvpn/client1.key

# uzivatel pod kterym bezi klient
user nobody
# skupina pod kterou bezi klient
group nogroup
# opakovani radku v logu
mute 10
# logy klienta
log-append /tmp/log/openvpn.log
# status klienta
status /var/run/vpn.status 10
# komprese prenasenych dat
comp-lzo
# ukecanost klienta
verb 3



Konfigurace serveru:
mode server
tls-server
port 1194
proto tcp-server
dev tap
server 10.10.10.0 255.255.255.0

# soucasne prihlaseni vice klientu
duplicate-cn

ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key
dh /etc/openvpn/dh2048.pem

# logy serveru
log-append /var/log/openvpn.log
# status serveru
status /var/run/vpn.status 10
# uzivatel pod kterym bezi server
user nobody
# skupina pod kterou bezi server
group nogroup
# udrzuje spojeni nazivu, 10 (ping) a 120 (ping-restart)
keepalive 10 120
# komprese prenasenych dat
comp-lzo
# ukecanost serveru
verb 3

push "route 10.10.10.0 255.255.255.0" # BEZ TOHOTO TO NA NOTEBOOKU TAKY FUNGUJE
route 10.10.10.0 255.255.255.0 # BEZ TOHOTO TO NA NOTEBOOKU TAKY FUNGUJE



Netušíte někdo co je špatně? Ta samá konfigurace na notebooku funguje bez problému i bez těch posledních dvou řádků v konfiguraci serveru, které jsem vyčetl někde na internetu a které v OpenWRT stejně nepomohly... :-(



Díky za radu,
Radek
« Poslední změna: 16. 09. 2013, 13:39:38 od Petr Krčmář »


qqqhhh

aka ip je na interface tap0 ?

rade-brno

IP na serveru je 10.10.10.1 na klientovi je 10.10.10.2 nebo 10.10.10.3 podle toho v jakem poradi se pripoji na server notebook a OpenWRT...

rade-brno

Vyřešil jsem to trochu nesportovně (ale fakt jsem s tím nemohl hnout).

Místo OpenWRT jsem na router nahral DD-WRT a tam se dá (od verze 24 - sp1) OpenVPN naklikat přes webové rozhraní (včetně certifikátu)... Pak už to jede v pohodě. Toto řešení má jednu nevýhodu - certifikáty jsou uloženy v NVRAM spolu s ostatní konfigurací routeru a na ostatní nastavovaní už nemusí zbýt místo, ale zatím je tam ještě pár kB volných. Druhá nevýhoda je, že jsem si na OpenWRT zvykl, ale tak třeba se mi časem zalíbí DD-WRT, stejně jak jsem pár měsíců remcal na Unity... :-D

Kdyb někoho napadlo, proč ta samá konfigurace jede na notebooku s Ubuntu 12.04 vpohodě a na OpenWRT se vše tváří že je OK, žádné chyby v logu ani na serveru ani na klientovi, ale pakety lezou místo do tap0 do eth0, tak určitě napište... Zkoušel jsem různě překopat routovací tabulku, ale stejně to nepomohlo. Když jsem Googlil, tak jsem pochopil že ten záznam default v routovací tabulce by měl být až úplně dole, protože routovací tabulka se prochází od vrchu dolů a měla by být seřazena od nejstriktnější masky podsítě (255.255.255.255) až po tu pro výchozí bránu (0.0.0.0). Ale na notebooku je routovací tabulka úplně stejně seřazená a pakety pro OpenVPN chodí správně přes tap0...

Je lepší používat tap nebo tun rozhraní? Vím že jedno je na nižší vrstvě něž druhé, ale co to ve skutečností má/nemá za výhody neruším...

Radek