Ich habe einen OpenVPN-Server auf einem Raspi aufgesetzt, den ich zum Zocken (AoE2) mit der Familie nutzen will. Dabei habe ich mich an diese Anleitung gehalten (und natürlich das Wiki genutzt).
# Server-Config (die meisten Standard-Kommentare für Übersicht entfernt) port 1194 proto udp dev tap # Aus dem Tutorial fragment 1024 # unklar ob notwendig mssfix # An client angepasst nach warnung link-mtu 1594 cipher AES-256-CBC ca ./easy-rsa2/keys/ca.crt cert ./easy-rsa2/keys/server.crt key ./easy-rsa2/keys/server.key # Diese Datei geheim halten. dh ./easy-rsa2/keys/dh2048.pem # Diffie-Hellman-Parameter server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt keepalive 10 120 comp-lzo user nobody group nogroup persist-key persist-tun status openvpn-status.log verb 3
Client.conf
# Client-Config (die meisten Standard-Kommentare für Übersicht entfernt) client dev tap # Aus Tutorial fragment 1024 proto udp # (Domain habe ich zum Eigenschutz hier geändert) remote meine.dyndns.net 1194 resolv-retry infinite nobind persist-key persist-tun ca ca.crt # Jeder Client hat eigenes Zertifikat und Schlüssel cert client.crt key client.key remote-cert-tls server cipher AES-256-CBC comp-lzo verb 3
Etwas unklar ist, warum ich die /etc/network/interfaces ändern sollte und was das genau bewirkt.
# interfaces(5) file used by ifup(8) and ifdown(8) # Please note that this file is written to be used with dhcpcd # For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf' # Include files from /etc/network/interfaces.d: source-directory /etc/network/interfaces.d # Diese Zeile habe ich auskommentiert #auto lo iface lo inet loopback # Diesen Teil habe ich eingefügt auto br0 iface br0 inet static # First bring up the OpenVPN interface so we can bridge it pre-up /usr/sbin/openvpn --mktun --dev tap0 # Hier habe ich die Daten vom LAN eingetragen, worin sich der Server befindet address 192.168.178.1 # Gateway's inside static IP netmask 255.255.255.0 network 192.168.178.0 broadcast 192.168.178.255 # New options # bridge_ports eth0 tap0 # Forward delay in seconds bridge_fd 1 bridge_stp off # DNS setup copied from eth0, too # dns-* options are implemented by the resolvconf package, if installed # Das sind die DNS-Daten meiner FritzBox dns-nameservers 192.168.178.1 dns-search fritz.box # And bring it down again when we're done post-down /usr/sbin/openvpn --rmtun --dev tap0 # Ende der Einfügung iface eth0 inet manual allow-hotplug wlan0 iface wlan0 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf allow-hotplug wlan1 iface wlan1 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Ergebnis ist nun, dass sich sowohl ein Linuxclient (allerdings im gleichen LAN), als auch ein Windowsclient (woanders) erfolgreich mit dem Server verbinden können. Beide können den Server anpingen und der Server auch die Clients. Nur die Clients können sich gegenseitig nicht anpingen:
$ ping 10.8.0.3 PING 10.8.0.3 (10.8.0.3) 56(84) bytes of data. From 10.8.0.2 icmp_seq=1 Destination Host Unreachable ^C --- 10.8.0.3 ping statistics --- 5 packets transmitted, 0 received, +1 errors, 100% packet loss, time 3999ms pipe 4
Was mache ich falsch? Gibt es einen einfacheren Weg?