Links:
OpenVPN Wiki
OpenVPN Wiki - Vergleich TUN/TAP
OpenVPN Forum (deutsch)
OpenVPN Bedienanleitung
OpenVPN Zertifikat Check
TunnelBlick OpenVPN für OSx
SoftEther - OpenVPN alternative
- nach der Installation ausführen
cd \Programme\OpenVPN\easy-rsa\ init-config edit vars.bat vars clean-all build-ca
- Serverzertifikat erstellen
build-key-server server
- Clientzertifikate erstellen
build-key client1 build-key client2 build-key client3
als "Common Name" muss immer ein anderer Name angegeben werden, da nicht zwei Zertifikate mit gleichen "Common Name" erstellt werden können.
- Diffie Hellmann parameter erstellen
build-dh
Filename Needed By Purpose Secret ca.crt server + all clients Root CA certificate NO ca.key key signing machine only Root CA key YES dh{n}.pem server only Diffie Hellman parameters NO server.crt server only Server Certificate NO server.key server only Server Key YES client1.crt client1 only Client1 Certificate NO client1.key client1 only Client1 Key YES client2.crt client2 only Client2 Certificate NO client2.key client2 only Client2 Key YES client3.crt client3 only Client3 Certificate NO client3.key client3 only Client3 Key YES
- folgende Dateien ins config Verzeichnis auf dem Server kopieren
ca.crt dh1024.pem server.crt server.key
- folgende Dateien ins config Verzeichnis auf dem Client kopieren
ca.crt client.crt client.key
- Schlüsseldatei mit 2048 Bit SSL Key erstellen, diese wird dann im Parameter secret openvpn.sec angegeben. Für einen längerne Schlüssel z.B. die Option --keysize 4096 nutzen.
openvpn --genkey --secret openvpn.sec
openvpn --config server.ovpn
Variablen laden und das Zertifikate für den client3 sperren
vars revoke-full client3
in der letzen Zeile beim Zertifikat sperren, sollte dann folgendes stehn.
error 23 at 0 depth lookup:certificate revoked
in der Serverkonfig noch folgenden Parameter setzen, die Datei crl.pem vorher ins config Verzeichnis kopieren und dann denn Server neustarten.
crl-verify crl.pem
Wenn der Verbindungsaufbau mit dem Fehler TLS handshake failed abbricht, kann es sein das eines der Zertifikate abgelaufen ist. Dies kann man wie folgt am Beispiel des CA Zertifikates prüfen. Die Clientzertifikate müssen daraufhin auch auf Ablauf geprüft werden.
openssl x509 -noout -enddate -in ca.crt
- Zertifikat für ein Android System in PFX/P12/PKCS#12 umwandeln, der Parameter -name bezeichnet den Namen, der dann auf dem Gerät als Zertifikatsname angezeigt wird.
openssl pkcs12 -export -in keys\client1.crt -inkey keys\client1.key -certfile keys\ca.crt -name ZertName -out ZertName.p12
vars-sample
konfigurieren und als vars
speichern.
- PKI (Public Key Infrastructure) initialisieren
-
Diffie-Hellman Schlüsselaustausch generieren
- CA erstellen
und Passwort für das Zertifizierungstellenzertifikat erstellen
- Server Zertifikat erstellen
- Client Zertifikat erstellen
CD \OpenVPN\easy-rsa\ EasyRSA-Start.bat ./easyrsa init-pki ./easyrsa gen-dh ./easyrsa build-ca ./easyrsa build-server-full <UNIQUE_SERVER_SHORT_NAME> nopass ./easyrsa build-client-full <UNIQUE_CLIENT_SHORT_NAME> nopass
- Zertifikat anzeigen
./easyrsa show-cert client1
- Zertifikat zurückziehen
- CRL (Certificate Revoking List) zum Einbinden auf dem Server erzeugen
./easyrsa revoke client1
./easyrsa gen-crl
Device TUN überträgt IP-Pakete im OSI Layer 3, Broadcast werden z.B. nicht übertragen.
Device TAP (Bridge Modus) überträgt Ethernetframes im OSI Layer 2, Broadcast werden übertragen, ist als ob man local am Netz angeschlossen ist. Protokolle wie AppleTalk oder IPX können auch über den Tunnel genutzt werden.
Parameter für Server und Client | Erläuterung |
---|---|
dev tun/tap | welches Device verwendet werden soll tun oder tap |
proto udp/tcp-client | Protokoll udp oder tcp |
dev-node <TAP-Device> | Name der virtuellen Netzwerkkarte/Device, bei Verwendung von mehreren Device z.B. wenn der PC als Server und Client läuft. |
comp-lzo | Komprimierung aktivieren |
ifconfig ServerIP ClientIP | (Linux) Angabe der IP Adressen des Tunnelendes |
ca ca.crt | Zertifikat des Zertifizierungsstelle (Öffentlich) |
cert zertifikat.crt | Zertifikatsdatei (Öffentlich) |
key zertifikat.key | Schlüsseldatei (Privat) |
secret /etc/openvpn/openvpn.sec | Speicherort der gemeinsamen Keydatei (für Client und Server) |
tun-mtu 1380 | (Maximum Tranfer Unit) MTU des TUN Device, der OpenVPN Overhead muss bei tun-mtu mit eingerechnet werden |
link-mtu 1432 | der OpenVPN Overhead wird vom TUN-Interface automatisch berücksichtigt |
mssfix | Fix für Microsoft Clients (MTU 1300 wird gesetzt) |
mssfix 1357 | Fix für Microsoft Clients MTU auf 1357 setzen |
fragment 1300 | ab welcher Größe die Pakete die durch den Tunnel gehen, geteilt (fragmentiert) werden. !! nur unter UDP verwendbar !! |
verb 3 | LogLevel auf 3 gesetzt (Loglevel 0 - 9) |
persist-key | Hält den privaten Schlüssel im Speicher |
persist-tun | Hält das TUN/TAP Gerät bei einem Neustart offen |
ip-win32 ipapi | DHCP-Server/Client über die Windows API |
ip-win32 netsh | verwendet netsh und trägt die IP statisch ein |
ip-win32 manual | statische IP |
auth SHA1 | |
cipher AES-256-CBC | |
Server Parameter | |
port 1194 | Portnummer auf der der Server auf Verbindung wartet |
topology subnet/net30/p2p | Wiki ab OpenVPN 2.1 und höher im TUN Modus, Parameter p2p ist nicht für Windows |
server 192.168.17.0 255.255.255.0 | TUN Servermodus, der Server ist unter der IP 192.168.17.1 erreichbar, der erste Client bekommt die 192.168.17.6 zugewiesen per DHCP |
server-bridge 192.168.17.1 255.255.255.0 192.168.17.5 192.168.17.10 | TAP Servermodus, der Server ist unter der IP 192.168.17.1 erreichbar, die Clients bekommen die IPs 192.168.17.5 - 192.168.17.10 per DHCP zugewiesen |
push "route 192.168.1.0 255.255.255.0" | Route ins OpenVPN-Server-LAN auf dem Client automatisch zuweisen |
route 192.168.2.0 255.255.255.0 | Route beim herstellen der Verbindung auf dem OpenVPNServer automatisch setzen |
push "dhcp-option DNS 192.168.1.1" | DNS Server automatisch zuweisen |
client-to-client | ermöglicht die Kommunikation der VPN-Clients untereinander |
keepalive 10 120 | alle 10 Sekunden wird versucht, die Gegenstelle zu erreichen, wenn diese nach 120 Sekunden nicht geantwortet hat wird versucht die Verbindung neu aufzubauen |
status openvpn-status.log | Name der LOG Datei |
tls-server | Server bei der Authentifizierungs |
dh dh1024.pem | Dieffie-Hellman Zertifikat |
ifconfig-pool-persist ipp.txt | in der Datei ipp.txt werden die IPs der Clients gespeichert. |
server-ipv6 fd00:defa:defa:17::/64 | IPv6 Netzwerk des Servers festlegen, Server erhätl die IPv6 fd00:defa:defa:17::1 |
crl-verify crl.pem | gesperrte Zertifikate aus der Datei crl.pem auslesen |
auth-user-pass-verify <Datei/Script> via-env/via-file | Username und Passwort abfragen, per Variable oder Datei |
script-security 3 | Security Level beim Ausführen von Scripten |
Client Parameter | |
client | im Clientmodus starten |
nobind | keine Bindung an locale Ports |
remote <Server-IP oder DNSName> Port | Adresse des Servers |
iroute 192.168.2.0 255.255.255.0 | setzt eine Interne Route, wird auf dem OpenVPN Server verwendet, wenn man für bestimmte Clients Konfigurationen im CCD Verzeichnis abgelegt hat. client-config-dir /vpn/ccd-dir Wiki |
tls-client | Client bei der Authentifizierungs |
auth-nocache | Passwörter nicht im Speicher halten |
remote-cert-tls server | Zertifikat von Server prüfen, der Parameter ns-cert-type ist ab V2.4 veraltet |
auth-user-pass | Username und Passwort abfragen oder hinterlegen |
ein Verzeichnis erstellen z.B. "ccd" in diesem Verzeichnis wird dann eine Text Datei abgelegt mit folgendem Inhalt. Diese Textdatei enthält die Konfiguration und die IP Adressen des/der Clients.
client-config-dir ccd route 192.168.17.0 255.255.255.252 ifconfig-push 192.168.17.5 192.168.17.6
Beispiel: TUN Device (dev tun)
IP-Netz | IP Adresse | Gateway | SubnetMask | |
---|---|---|---|---|
LAN IP OpenVPN Client | 192.168.200.0 | 10.0.200.50 | 255.255.255.0 | |
LAN IP OpenVPN Server | 192.168.100.0 | 10.0.100.100 | 255.255.255.0 | |
TAP-Device IP OpenVPN Server | 192.168.17.0 | 192.168.17.1 | 192.168.17.2 | 255.255.255.252 |
TAP-Device IP OpenVPN Client | 192.168.17.4 | 192.168.17.6 | 192.168.17.5 | 255.255.255.252 |
Route auf den OpenVPN Client ins OpenVPN Server Netzwerk
route add 10.0.100.0 mask 255.255.255.0 192.168.17.5
# automatisch durch Eintrag in der Konfig des Servers server.ovpn ... push "route 192.168.100.0 255.255.255.0"
Route auf dem PC im OpenVPN Client Netz zum OpenVPN Server Netzwerk
route add 192.168.17.4 mask 255.255.255.252 10.0.200.50
auf den OpenVPN Server muss das Routing aktiviert werden, so das die Pakete vom VPN Client zum PC im Netz des VPN Servers und wieder zurück gelangen können.
nach dem setzen des Parameters, der Rechner neu starten.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters] "IPEnableRouter"=dword:00000001
Befehl | Erläuterung |
---|---|
openvpn --show-adapters | TAP Adapter anzeigen |
openvpn --show-digests | Krypo Hash, mögliche Parameter für die auth Option z.B. auth SHA512 |
openvpn --show-ciphers | Verschlüsselungsalgorithmus, Parameter für cipher Option z.B. cipher AES-256-GCM |
openvpn --help | alle möglichen Parameter für OpenVPN |
[HKEY_LOCAL_MACHINE\SOFTWARE\OpenVPN] @="C:\\Programme\\OpenVPN" "config_dir"="C:\\Programme\\OpenVPN\\config" "config_ext"="ovpn" "exe_path"="C:\\Programme\\OpenVPN\\bin\\openvpn.exe" "log_dir"="C:\\Programme\\OpenVPN\\log" "priority"="NORMAL_PRIORITY_CLASS" "log_append"="0"
Variante 1 OpenVPN TAP Device hat eine andere IP als das LAN Interface des Servers, wenn weitere Rechner im LAN mit dem VPN Client kommunizieren sollen, muss bei denen noch eine Route gesetzt werden.
# OpenVPN Windows Server Konfiguration # das OpenVPN TAP Device hat die IP 192.168.17.1/255.255.255.0 zugewiesen # das LAN Netzwerk hat die IP 192.168.5.0 # TAP Adaptereinstellung MTU 1500 # IP 192.168.17.1 # Mask 255.255.255.0 # DNS 127.0.0.1 (beliebig) port 1194 proto udp dev tap ;dev-node ServerTAP mssfix 1357 # Anpassung ab Win2008/Win7 route-method exe route-delay 2 ca ca.crt cert server.crt key server.key dh dh1024.pem ifconfig-pool-persist ipp.txt server-bridge 192.168.17.1 255.255.255.0 192.168.17.5 192.168.17.10 push "route 192.168.5.0 255.255.255.0 192.168.17.1" push "dhcp-option DNS 192.168.5.1" persist-key persist-tun auth SHA1 cipher AES-256-CBC keepalive 10 120 status openvpn-status.log verb 3
für eine bessere Verschlüsselung können die auth und cipher Parameter noch angepasst werden, die Parameter müssen in der Server und Client Konfiguration gleich sein.
auth SHA512 cipher AES-256-GCM
Variante 2 das OpenVPN TAP Device ist mit einer Netzwerkbrücke mit dem LAN Interface verbunden
Die OpenVPN Clients bekommen IP-Adressen von 192.168.5.5 - 192.168.5.10 zugewiesen.
# OpenVPN Windows Server Konfiguration # Netzwerkbrücke zwischen TAP und LAN Device # die Netzwerkbrücke hat die IP 192.168.5.1 # port 1194 proto udp dev tap ;dev-node ServerTAP mssfix 1357 # Anpassung ab Win2008/Win7 route-method exe route-delay 2 ca ca.crt cert server.crt key server.key dh dh1024.pem ifconfig-pool-persist ipp.txt server-bridge 192.168.5.1 255.255.255.0 192.168.5.5 192.168.5.10 push "dhcp-option DNS 192.168.5.1" persist-key persist-tun auth SHA1 cipher AES-256-CBC keepalive 10 120 status openvpn-status.log verb 3
# OpenVPN Windows Client Konfiguration # das OpenVPN TAP Device steht auf DHCP remote <IP-des-Servers> 1194 ca ca.crt cert client1.crt key client1.key client dev tap # ab v2.4 per Default aktiv # dhcp-release dhcp-renew # Anpassung OpenVPN 2.4 # Server Zertifikat prüfen remote-cert-tls server # Passwort nicht im Speicher halten auth-nocache ;dev-node TAP proto udp nobind resolv-retry infinite persist-key persist-tun auth SHA1 cipher AES-256-CBC verb 3
TUN-Device Konfiguration läuft nicht auf Domaincontrollern ab Windows 2008. Dafür ein TAP-Device verwenden.
Variante 1 OpenVPN TUN-Device ab Win2008/Win7
# OpenVPN Windows ab Win2008/Win7 # das TAP Device steht auf DHCP MTU 1500 belassen port 1194 proto udp dev tun ;dev-node ServerTUN mssfix 1357 # Anpassung ab Win2008/Win7 route-method exe route-delay 2 ca ca.crt cert server.crt key server.key dh dh1024.pem ifconfig-pool-persist ipp.txt # IPv4 Servers Netzwerk - Server IP 192.168.17.1 server 192.168.17.0 255.255.255.0 # IPv6 Servers Netzwerk - Server IP fd00:defa:defa:17::1
server-ipv6 fd01:edda:edda:17::/64 persist-key persist-tun auth SHA1 cipher AES-256-CBC keepalive 10 120 status openvpn-status.log verb 3
für eine bessere Verschlüsselung können die auth und cipher Parameter noch angepasst werden, die Parameter müssen in der Server und Client Konfiguration gleich sein.
auth SHA512 cipher AES-256-GCM
Variante 2 OpenVPN TUN-Device Konfiguration für ältere Server
# OpenVPN Windows bis Win2003/WinXP # das LAN Netzwerk hat die IP 192.168.0.0 # das TAP Device hat die IP 192.168.17.1/255.255.255.252 zugewiesen, Adaptereinstellung MTU 1300 # IP 192.168.17.1 # Mask 255.255.255.252 # DNS 127.0.0.1 (beliebig) port 1194 proto udp dev tun ;dev-node ServerTUN mssfix 1357 ca ca.crt cert server.crt key server.key dh dh1024.pem server 192.168.17.0 255.255.255.0 ifconfig-pool-persist ipp.txt persist-key persist-tun auth SHA1 cipher AES-256-CBC keepalive 10 120 status openvpn-status.log verb 3
# OpenVPN Windows Client Konfiguration # das OpenVPN TAP Device steht auf DHCP # remote <IP-des-Servers> 1194 ca ca.crt cert client1.crt key client1.key client dev tun # ab v2.4 per Default aktiv # dhcp-release dhcp-renew # Anpassung OpenVPN 2.4 # Server Zertifikat prüfen remote-cert-tls server # Passwort nicht im Speicher halten auth-nocache ;dev-node Tap proto udp nobind resolv-retry infinite persist-key persist-tun auth SHA1 cipher AES-256-CBC verb 3
Konfiguration anpassen anzeigen
"allow_edit"="1"
Passwort ändern anzeigen, das Passwort wird in der Datei gesetzt die unter den Parameter key client.key in der .ovpn Datei angegeben ist. (mind. 8 Stellen lang)
"allow_password"="1"
Proxy Einstellungen anzeigen
"allow_proxy"="1"
Balloon bei Verbindungsaufbau anzeigen
"show_balloon"="1"
Verbindungsfenster anzeigen
"silent_connection"="0"
Fehler
write UDPv4: Interrupted system call (WSAEINTR) (code=10004)
WSACancelBlockingCall
Could not determine IPv4/IPv6 protocol. Using AF_INET6
scheint eine Statusmeldung zu sein, keinen Parameter gefunden diese Meldung abzustellen.
WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
in der Clientkonfiguration den Parameter auth-nocache
setzen, Passwörter werden nicht mehr im Speicher des Rechners gehalten.
WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.
in der Clientkonfiguration den Parameter ns-cert-type server
setzen, Die Option wird in OpenVPN 2.5 entfernt und statdessen soll der Parameter remote-cert-tls
verwendet werden.
Obsolete option --dhcp-release detected. This is now on by default
Der Parameter # dhcp-release
kann aus der Konfiguration entfernt werden, wird per Default gesetzt.
- Fehlermeldung beim Verbindungsaufbau vom Client ab OpenVPN 2.4.6 mit OpenSSL 1.1.0h
OpenSSL: error:140AB18E:SSL routines:SSL_CTX_use_certificate:ca md too weak Cannot load certificate file client.crt
Das Clientzertifikat wird von OpenSSL abgelehnt, da im Zertifikat noch MD5 Hash verwendet wird. OpenSSL unterstützt per default keine MD5 Zertifikate mehr. !!! Die Zertifikate sollten erneuert werden !!!
Mit dem folgenden Parameter kann man OpenSSL anweisen mit MD5 Zertifikaten zu arbeiten.
tls-cipher "DEFAULT:@SECLEVEL=0"
ein weiteres Tun/TAP Interface installieren, passend benennen. Das Device kann man dann nach Namen zuordnen z.B. Device wurde mit Server-TAP benannt.
# server.ovpn
... dev-node Server-TAP
...
Der Linux Kernel muss mit Unterstützung für TUN und TAP Device kompiliert sein.
TUN - Tunnel Device
TAP - Bridging für andere Protokolle wie NetBEUI, IPX oder AppelTalk
Kernel 2.4
Network Device Support | Universal TUN/TAP Device
Kernel 2.6
Device Drivers | Networking Support
- TUN Device anlegen
mkdir /dev/net mknod /dev/net/tun c 10 200
- TUN Device laden
modprobe tun
- Kernelmodul beim Booten automatisch laden in /etc/modules.conf eintragen
alias char-major-10-200 tun
- IP Forwarding einschalten, wenn Pakete ins lokale Netz weitergeleitet werden sollen
Testen ob IP-Forwarding eingeschaltet ist (es wird eine 1 ausgegeben)
cat /proc/sys/net/ipv4/ip_forward
wenn IP-Forwarding aktivieren
echo 1 > /proc/sys/net/ipv4/ip_forward
- Firewall Regeln anpassen OpenVPN läuft in der Grundeinstellung im UDP Modus auf Port 1194
iptables -I INPUT -p upd -dport 1194 -j ACCEPT iptables -I OUTPUT -m state --state ESTABLISHED -j ACCEPT
Pakete openvpn und openssl installieren.
Schlüssel und Zertifikate generieren
Konfigurationsdatei openssl.cnf von OpenSSL bearbeiten im Abschnitt [ CA_default ]
- Ordnervariable setzen
dir = /etc/ssl/ # Where everything is kept
- Dateinamen des CA-Zertifikates festlegen
certificate = $dir/cacert.pem # The CA certificate
- Dateinamen des privaten CA Schlüssels
private_key = $dir/private/cakey.pem # The private key
- beim anlegen von mehreren Zertifikaten ist es vorteilhaft die Voreinstellungen in der openssl.cnf zu setzen. Unter [ req_distinguished_name ]
countryName_default = Staat stateOrProvinceName_default = Bundesland localityName = Stadt 0.organizationName_default = Firma organizationalUnitName_default = Abteilung commonName = CA-Name emailAddress = user@example.com
- Das private Verzeichnis der CA vor unerlaubten Zugriff schützen.
cd /etc/ssl chmod 700 /etc/ssl/private
- Schlüsselpaar der CA erstellen mit der Schlüssellänge 2048Bit. Es wird nach einer Passphrase gefragt, die dann beim Anlegen neuer Zertifikate der CA benötigt wird.
openssl genrsa -aes256 -out private/cakey.pem 2048
- ein selbstsigniertes CA-Zertifikat erzeugen, dient der Verteilung des öffentlichen Schlüssels an die VPN Teilnehmer
openssl req -new -x509 -days 3650 -key private/cakey.pem -out cacert.pem -set_serial 1 |
- Zertifikate der Clients vorbereiten
touch index.txt echo 01 > serial
- Serverzertifikat erstellen, bei der Frage nach dem CommonName Server eingeben. Die extra Attribute bleiben leer.
openssl req -new -newkey rsa:1024 -out certs/servercsr.pem -nodes -keyout private/serverkey.pem -days 365 |
Der private Schlüssel des Servers serverkey.pem wird erzeugt.
- Serverzertifikat erstellen
openssl x509 -req -in certs/servercsr.pem -out certs/servercert.pem -CA cacert.pem -CAkey private/cakey.pem -CAserial /etc/ssl/serial |
Das Serverzertifikat befindet sich unter certs/servercert.pem.
- Clientzertifikate anlegen, als CommonName trägt man z.B. Client1 ein
openssl req -new -newkey rsa:1024 -out certs/client1csr.pem -nodes -keyout private/client1key.pem -days 365 |
openssl x509 -req -in certs/client1csr.pem -out certs/client1cert.pem -CA cacert.pem -CAkey private/cakey.pem -CAserial /etc/ssl/serial |
private Schlüssel client1key.pem
öffentliche Schlüssel certs/client1cert.pem
- löschen der CSR Dateien da diese nicht mehr gebraucht werden
rm certs/*csr.pem
- für den Schlüsselaustausch von OpneVPN erforderliche Diffie-Hellman-Parameter anlegen
openssl dhparam -out dh1024.pem 1024
unter /etc/openvpn die Serverkonfigurationsdatei und Zertifikate ablegen
server.conf Konfigurationsdatei des Servers serverkey.pem geheime Schlüssel des Servers Zugriff auf 600 setzen servercert.pem Zertifikat des Servers cacert.pem CA-Zertifikat dh1024.pem Diffie-Hellman-Parameter
port 1194 port udp dev tun tun-mtu 1300 ca cacert.pem cert servercert.pem key serverkey.pem dh dh1024.pem server 10.12.34.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "route 192.168.2.0 255.255.255.0" push "dhcp-option DNS 192.168.2.1" keepalive 30 300 auth SHA1 cipher AES-256-CBC comp-lzo verb 3
- starten des Servers
openvpn --config /etc/openvpn/server.conf
openvpn --show-digests | Liste der unterstützten Authentifizierungsverfahren |
openvpn --show-cipher | Liste der unterstützten Verschlüsselungsverfahren |
client1.conf Konfigurationsdatei des Clients (Linux) client1key.pem geheime Schlüssel des Clients client1cert.pem Zertifikat des Clients cacert.pem CA-Zertifikat
remote <IP-des-Servers> 1194 client proto udp dev tun # ab v2.4 per Default aktiv # dhcp-release hcp-renew ca cacert.pem cert client1cert.pem key client1key.pem auth SHA1 cipher AES-256-CBC comp-lzo
Denn MTU Wert sollte man auf 1300 Byte setzen, da den Datenpaketen zusätzliche Header hinzugefügt werden und man so verhindert, das die Pakete zu gross werden.
Im Kernel unter "Network device support" als Modul einbinden
<
M> Universal TUN/TAP device driver support
Devicefile erstellen
mknod /dev/net/tun c 10 200
oder mknod /dev/net/tun0 c 10 200 je nach Distribution
Die Route wird beim starten des OpenVPN Servers nicht richtig gesetzt. Es wird das LAN Interface (IP der LAN Schnittstelle 192.168.20.54) als Schnittstelle gesetzt, nicht das TAP Interface der OpenVPN Netzwerkkarte.
# route print ... 192.168.17.0 255.255.255.0 192.168.17.2 192.168.20.54 11 ...
mit dem erneuten setzen der Route kann man das umgehen, oder Neustart des OpenVPN Dienstes. Macht aber kein Sinn, da das bei jedem Neustart des Servers geschehen muss.
route change 192.168.17.0 mask 255.255.255.0 192.168.17.2
OpenVPN Server Parameter TAP Device MTU 1300 tun-mtu 1500 fragment 1300 mssfix OpenVPN Client Parameter TAP Device MTU 1300 tun-mtu 1500 fragment 1300 mssfix ping -n 1 192.168.17.1 -f -l 1272 Ping wird ausgeführt für 192.168.17.1 mit 1272 Bytes Daten: Antwort von 192.168.17.1: Bytes=1272 Zeit<1ms TTL=128
OpenVPN Server Parameter TAP Device MTU 1300 tun-mtu 1500 fragment 1300 mssfix OpenVPN Client Parameter TAP Device MTU 1500 tun-mtu 1500 fragment 1300 mssfix ping -n 1 192.168.17.1 -f -l 1276 Ping wird ausgeführt für 192.168.17.1 mit 1276 Bytes Daten: Antwort von 192.168.17.1: Bytes=1276 Zeit<1ms TTL=128
OpenVPN Server Parameter TAP Device MTU 1500 tun-mtu 1500 fragment 1300 mssfix OpenVPN Client Parameter TAP Device MTU 1500 tun-mtu 1500 fragment 1300 mssfix ping -n 1 192.168.17.1 -f -l 1472 Ping wird ausgeführt für 192.168.17.1 mit 1472 Bytes Daten: Antwort von 192.168.17.1: Bytes=1472 Zeit<1ms TTL=128
OpenVPN Server Parameter TAP Device MTU 1500 tun-mtu 1300 fragment 1300 mssfix OpenVPN Client Parameter TAP Device MTU 1500 tun-mtu 1300 fragment 1300 mssfix ping -n 1 192.168.17.1 -f -l 1272 Ping wird ausgeführt für 192.168.17.1 mit 1272 Bytes Daten: Antwort von 192.168.17.1: Bytes=1272 Zeit<1ms TTL=128
- DNS Meldung deaktivieren
defaults write net.tunnelblick.tunnelblick skipWarningAboutDnsProblems -bool yes
- DNS Meldung wieder aktivieren
defaults delete net.tunnelblick.tunnelblick skipWarningAboutDnsProblems
- MTU setzen im der .ovpn Konfigurationsdatei
tun-mtu 1300