OpenVPN Roadwarrior Setup

01/02/2008 - 11:49 von Sebastian Kaps | Report spam
Hi!

Ich habe mir mal OpenVPN 2.0.9 installiert, um mit meinem Notebook von
unterwegs auf mein Heimnetzwerk zugreifen zu können. Leider scheint es
irgendwo mit dem Routing zu haken, denn der Tunnel wird aufgebaut und
wenn ich den Server vom Client aus anpinge, sehe ich, daß sich auf dem
Server der Traffic-Counter bei Rx erhöht. Tx bleibt allerdings bei Null.

Das Setup ist folgendes:
Zu Hause steht ein WLAN-Router mit einem öffentlichen Interface und
einem WLAN-Interface mit der IP 192.168.10.1. Der Router macht Port
Forwarding von 1194/UDP auf das dahinterliegende Linux-Gateway, auf dem
der OpenVPN Server làuft. Dieses hat ein WLAN-Interface mit IP
192.168.10.2 und ein Ethernet Interface mit 192.168.1.10.
Für die VPN-Geschichte habe ich 192.168.100.0/24 reserviert.

Die Routing-Tabelle auf dem Linux-GW sieht nach dem OpenVPN-Start:
,-
| Kernel IP routing table
| Destination Gateway Genmask Flags Metric Ref Use Iface
| 192.168.100.0 192.168.10.1 255.255.255.0 UG 0 0 0 ath0
| 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
| 192.168.10.0 0.0.0.0 255.255.255.0 U 0 0 0 ath0
| 0.0.0.0 192.168.10.1 0.0.0.0 UG 0 0 0 ath0
`-

Die Server-Konfiguration sieht so aus:
,-[ server.conf ]
| dev tun
| mode server
| tls-server
| local 192.168.10.2
| client-config-dir /etc/openvpn/ccd
| route 192.168.100.0 255.255.255.0
| route-gateway 192.168.10.1
| ifconfig-pool 192.168.100.128 192.168.100.255
| client-to-client
| push "route 192.168.100.0 255.255.255.0"
| push "dhcp-option DNS 192.168.10.2"
| push "dhcp-option WINS 192.168.10.2"
| keepalive 30 120
| dh /etc/openvpn/keys/dh1024.pem
| ca /etc/openvpn/keys/ca.crt
| cert /etc/openvpn/keys/server.crt
| key /etc/openvpn/keys/server.key
| port 1194
| comp-lzo
| verb 3
`-

In /etc/openvpn/ccd liegt eine Datei "notebook" mit folgendem Inhalt:
,-
| iroute 192.168.100.0 255.255.255.0
`-

Nun zur Client-Seite:
,-
| client
| dev tun
| up /Users/seb/Library/openvpn/client.up.sh
| down /Users/seb/Library/openvpn/client.down.sh
| proto udp
| remote <Serveradresse> 1194
| resolv-retry infinite
| nobind
| persist-key
| persist-tun
| mute-replay-warnings
| ca ca.crt
| cert notebook.crt
| key notebook.key
| ns-cert-type server
| comp-lzo
| verb 3
`-

Kann damit jemand etwas anfangen? Ich meine, durch die
route/iroute-Eintràge sollte das Routing doch klappen?! Ich bin mir aber
nicht sicher, ob das ccd/notebook File überhaupt ausgewertet wird - die
Log-Ausgaben geben nichts her.
IP-Forwarding habe ich aktiviert und eine Firewall làuft auf dem Gateway
nicht (Default Policy "ACCEPT" - ich habe aber nicht noch extra
ACCEPT-Regeln für "tun+" angelegt).

Ciao, Sebastian
 

Lesen sie die antworten

#1 Stefan Dreyer
01/02/2008 - 15:44 | Warnen spam
Sebastian Kaps wrote:
Hi!

Ich habe mir mal OpenVPN 2.0.9 installiert, um mit meinem Notebook von
unterwegs auf mein Heimnetzwerk zugreifen zu können. Leider scheint es
irgendwo mit dem Routing zu haken, denn der Tunnel wird aufgebaut und
wenn ich den Server vom Client aus anpinge, sehe ich, daß sich auf dem
Server der Traffic-Counter bei Rx erhöht. Tx bleibt allerdings bei Null.

Das Setup ist folgendes:
Zu Hause steht ein WLAN-Router mit einem öffentlichen Interface und
einem WLAN-Interface mit der IP 192.168.10.1. Der Router macht Port
Forwarding von 1194/UDP auf das dahinterliegende Linux-Gateway, auf dem
der OpenVPN Server làuft. Dieses hat ein WLAN-Interface mit IP
192.168.10.2 und ein Ethernet Interface mit 192.168.1.10.
Für die VPN-Geschichte habe ich 192.168.100.0/24 reserviert.

Die Routing-Tabelle auf dem Linux-GW sieht nach dem OpenVPN-Start:
,-
| Kernel IP routing table
| Destination Gateway Genmask Flags Metric Ref Use Iface
| 192.168.100.0 192.168.10.1 255.255.255.0 UG 0 0 0 ath0
| 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
| 192.168.10.0 0.0.0.0 255.255.255.0 U 0 0 0 ath0
| 0.0.0.0 192.168.10.1 0.0.0.0 UG 0 0 0 ath0
`-


Du müsstest da aber ein dev tun0 in Deiner Routingtabelle haben.
Ansonsten sollte openvpn das Routing für den Client automatisch machen.
Daher solltest Du mal die meisten der Eintràge rausschmeißen.

Die Server-Konfiguration sieht so aus:
,-[ server.conf ]
| dev tun
| mode server
| tls-server
| local 192.168.10.2
| client-config-dir /etc/openvpn/ccd
| route 192.168.100.0 255.255.255.0


^^^^^^^^^^^weg

server 192.168.100.0 255.255.255.0

| route-gateway 192.168.10.1


^^^^^^^^^^^weg

| ifconfig-pool 192.168.100.128 192.168.100.255
| client-to-client
| push "route 192.168.100.0 255.255.255.0"


^^^^^^^^^^^weg

| push "dhcp-option DNS 192.168.10.2"
| push "dhcp-option WINS 192.168.10.2"
| keepalive 30 120
| dh /etc/openvpn/keys/dh1024.pem
| ca /etc/openvpn/keys/ca.crt
| cert /etc/openvpn/keys/server.crt
| key /etc/openvpn/keys/server.key
| port 1194
| comp-lzo
| verb 3
`-

In /etc/openvpn/ccd liegt eine Datei "notebook" mit folgendem Inhalt:
,-
| iroute 192.168.100.0 255.255.255.0


^^^^^^^^^^^^^^^^^^^^^
weg

`-

Nun zur Client-Seite:
,-
| client
| dev tun
| up /Users/seb/Library/openvpn/client.up.sh
| down /Users/seb/Library/openvpn/client.down.sh
| proto udp
| remote <Serveradresse> 1194
| resolv-retry infinite
| nobind
| persist-key
| persist-tun
| mute-replay-warnings
| ca ca.crt
| cert notebook.crt
| key notebook.key
| ns-cert-type server
| comp-lzo
| verb 3
`-

Kann damit jemand etwas anfangen? Ich meine, durch die
route/iroute-Eintràge sollte das Routing doch klappen?! Ich bin mir aber
nicht sicher, ob das ccd/notebook File überhaupt ausgewertet wird - die
Log-Ausgaben geben nichts her.
IP-Forwarding habe ich aktiviert und eine Firewall làuft auf dem Gateway
nicht (Default Policy "ACCEPT" - ich habe aber nicht noch extra
ACCEPT-Regeln für "tun+" angelegt).



Schmeiß erst einmal die obigen Eintràge raus, dann solltest Du Die die
100er Adresse des Servers anpingen können. Ansonsten schick noch mal die
beiden Routing Tabellen.

Ähnliche fragen