SOLVED OpenVPN Plugin: Keine Verbindung möglich

bo2000

Dabbler
Joined
Nov 19, 2020
Messages
12
Nächste Baustelle bei mir:
Ich habe OpenVPN als Plugin installiert und bekomme darüber keinerlei Verbindungen.
Hier scheint es ein grundsätzliches Problem zu geben.

Im OpenVPN-Log auf dem NAS sehe ich mit TCP4 dies:
Mon Nov 23 16:55:24 2020 OpenVPN 2.4.8 amd64-portbld-freebsd12.0 [SSL (OpenSSL)] [LZO] [LZ4] [MH/RECVDA] [AEAD] built on Oct 19 2020 Mon Nov 23 16:55:24 2020 library versions: OpenSSL 1.1.1h-freebsd 22 Sep 2020, LZO 2.10 Mon Nov 23 16:55:24 2020 WARNING: --keepalive option is missing from server config Mon Nov 23 16:55:24 2020 Diffie-Hellman initialized with 2048 bit key Mon Nov 23 16:55:24 2020 Failed to extract curve from certificate (UNDEF), using secp384r1 instead. Mon Nov 23 16:55:24 2020 ECDH curve secp384r1 added Mon Nov 23 16:55:24 2020 Outgoing Control Channel Encryption: Cipher 'AES-256-CTR' initialized with 256 bit key Mon Nov 23 16:55:24 2020 Outgoing Control Channel Encryption: Using 256 bit message hash 'SHA256' for HMAC authentication Mon Nov 23 16:55:24 2020 Incoming Control Channel Encryption: Cipher 'AES-256-CTR' initialized with 256 bit key Mon Nov 23 16:55:24 2020 Incoming Control Channel Encryption: Using 256 bit message hash 'SHA256' for HMAC authentication Mon Nov 23 16:55:24 2020 TUN/TAP device /dev/tun0 opened Mon Nov 23 16:55:24 2020 /sbin/ifconfig tun0 10.20.30.1 10.20.30.2 mtu 1500 netmask 255.255.255.0 up Mon Nov 23 16:55:24 2020 /sbin/route add -net 10.20.30.0 10.20.30.2 255.255.255.0 add net 10.20.30.0: gateway 10.20.30.2 Mon Nov 23 16:55:24 2020 Socket Buffers: R=[65536->65536] S=[32768->32768] Mon Nov 23 16:55:24 2020 Listening for incoming TCP connection on [AF_INET][undef]:1194 Mon Nov 23 16:55:24 2020 TCPv4_SERVER link local (bound): [AF_INET][undef]:1194 Mon Nov 23 16:55:24 2020 TCPv4_SERVER link remote: [AF_UNSPEC] Mon Nov 23 16:55:24 2020 GID set to nobody Mon Nov 23 16:55:24 2020 UID set to nobody Mon Nov 23 16:55:24 2020 MULTI: multi_init called, r=256 v=256 Mon Nov 23 16:55:24 2020 IFCONFIG POOL: base=10.20.30.2 size=252, ipv6=0 Mon Nov 23 16:55:24 2020 MULTI: TCP INIT maxclients=1024 maxevents=1028 Mon Nov 23 16:55:24 2020 Initialization Sequence Completed

Nur mit TCP dies:

Mon Nov 23 17:15:43 2020 FreeBSD 'destroy tun interface' failed (non-critical): external program exited with error status: 1 Mon Nov 23 17:15:43 2020 SIGTERM[hard,] received, process exiting Mon Nov 23 17:16:07 2020 OpenVPN 2.4.8 amd64-portbld-freebsd12.0 [SSL (OpenSSL)] [LZO] [LZ4] [MH/RECVDA] [AEAD] built on Oct 19 2020 Mon Nov 23 17:16:07 2020 library versions: OpenSSL 1.1.1h-freebsd 22 Sep 2020, LZO 2.10 Mon Nov 23 17:16:07 2020 WARNING: --keepalive option is missing from server config Mon Nov 23 17:16:07 2020 Diffie-Hellman initialized with 2048 bit key Mon Nov 23 17:16:07 2020 Failed to extract curve from certificate (UNDEF), using secp384r1 instead. Mon Nov 23 17:16:07 2020 ECDH curve secp384r1 added Mon Nov 23 17:16:07 2020 Outgoing Control Channel Encryption: Cipher 'AES-256-CTR' initialized with 256 bit key Mon Nov 23 17:16:07 2020 Outgoing Control Channel Encryption: Using 256 bit message hash 'SHA256' for HMAC authentication Mon Nov 23 17:16:07 2020 Incoming Control Channel Encryption: Cipher 'AES-256-CTR' initialized with 256 bit key Mon Nov 23 17:16:07 2020 Incoming Control Channel Encryption: Using 256 bit message hash 'SHA256' for HMAC authentication Mon Nov 23 17:16:07 2020 TUN/TAP device /dev/tun0 opened Mon Nov 23 17:16:07 2020 /sbin/ifconfig tun0 10.20.30.1 10.20.30.2 mtu 1500 netmask 255.255.255.0 up Mon Nov 23 17:16:07 2020 /sbin/route add -net 10.20.30.0 10.20.30.2 255.255.255.0 add net 10.20.30.0: gateway 10.20.30.2 Mon Nov 23 17:16:07 2020 Could not determine IPv4/IPv6 protocol. Using AF_INET6 Mon Nov 23 17:16:07 2020 Socket Buffers: R=[65536->65536] S=[32768->32768] Mon Nov 23 17:16:07 2020 setsockopt(IPV6_V6ONLY=0) Mon Nov 23 17:16:07 2020 Listening for incoming TCP connection on [AF_INET6][undef]:1194 Mon Nov 23 17:16:07 2020 TCPv6_SERVER link local (bound): [AF_INET6][undef]:1194 Mon Nov 23 17:16:07 2020 TCPv6_SERVER link remote: [AF_UNSPEC] Mon Nov 23 17:16:07 2020 GID set to nobody Mon Nov 23 17:16:07 2020 UID set to nobody Mon Nov 23 17:16:07 2020 MULTI: multi_init called, r=256 v=256 Mon Nov 23 17:16:07 2020 IFCONFIG POOL: base=10.20.30.2 size=252, ipv6=0 Mon Nov 23 17:16:07 2020 MULTI: TCP INIT maxclients=1024 maxevents=1028 Mon Nov 23 17:16:07 2020 Initialization Sequence Completed


Im VPN-Client passiert auch nichts:
Mon Nov 23 17:14:28 2020 OpenVPN 2.4.6 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [LZ4] [PKCS11] [AEAD] built on Apr 26 2018 Mon Nov 23 17:14:28 2020 Windows version 6.2 (Windows 8 or greater) 64bit Mon Nov 23 17:14:28 2020 library versions: OpenSSL 1.1.0h 27 Mar 2018, LZO 2.10 Mon Nov 23 17:14:28 2020 Outgoing Control Channel Encryption: Cipher 'AES-256-CTR' initialized with 256 bit key Mon Nov 23 17:14:28 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]xx.xx.xx.xx:1194 Mon Nov 23 17:14:28 2020 Socket Buffers: R=[65536->65536] S=[65536->65536] Mon Nov 23 17:14:28 2020 Attempting to establish TCP connection with [AF_INET]xx.xx.xx.xx:1194 [nonblock] Disconnected

Forwardings sind im Router korrekt eingetragen.
 

micneu

Patron
Joined
Mar 23, 2019
Messages
474
- bitte mal einen grafischen netzwerkplan
- was genau ist dein ziel, hier einfach die konfig und deine logs posten ist nicht immer hilfreich
- bitte deine server und client konfig posten
 

bo2000

Dabbler
Joined
Nov 19, 2020
Messages
12
GW: Fritzbox 192.168.2.1
DNS: pihole 192.168.2.1
TrueNAS: 192.168.2.5
OpenVPN Plugin 192.168.2.25

Ziel: Eine VPN-Verbindung herzustellen.

Aber ich habe gerade mal was ausprobiert und bin schon etwas weiter.
Ich habe das Forwarding nicht auf die .25 des OpenVPN Jails gelegt, sonder auf die .5 vom TrueNAs Host.

Und siehe da, ich bekomme zumindest einen TLS Error:

Tue Nov 24 09:01:03 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]xx.xx.xx.xx:1194 Tue Nov 24 09:01:03 2020 Socket Buffers: R=[65536->65536] S=[65536->65536] Tue Nov 24 09:01:03 2020 Attempting to establish TCP connection with [AF_INET]xx.xx.xx.xx:1194 [nonblock] Tue Nov 24 09:01:04 2020 TCP connection established with [AF_INET]xx.xx.xx.xx:1194 Tue Nov 24 09:01:04 2020 TCPv4_CLIENT link local: (not bound) Tue Nov 24 09:01:04 2020 TCPv4_CLIENT link remote: [AF_INET]xx.xx.xx.xx:1194 Tue Nov 24 09:01:04 2020 TLS: Initial packet from [AF_INET]xx.xx.xx.xx:1194, sid=5a1ec615 6cc8de88 Tue Nov 24 09:01:04 2020 VERIFY OK: depth=1, C=DE, ST=xx, L=-, O=xx, emailAddress=xx ERROR: TLS error! See log for details Tue Nov 24 09:01:04 2020 TLS Error: TLS handshake failed Tue Nov 24 09:01:04 2020 Fatal TLS error (check_tls_errors_co), restarting Tue Nov 24 09:01:04 2020 SIGUSR1[soft,tls-error] received, process restarting Tue Nov 24 09:01:04 2020 Restart pause, 5 second(s) Tue Nov 24 09:01:09 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]xx.xx.xx.xx:1194 Tue Nov 24 09:01:09 2020 Socket Buffers: R=[65536->65536] S=[65536->65536] Tue Nov 24 09:01:09 2020 Attempting to establish TCP connection with [AF_INET]xx.xx.xx.xx:1194 [nonblock] Disconnected

Ich nutze für OpenVPN immer den Securepoint VPN Client.

Hat hier jemand Tipps, wo ich zielführend nachhaken kann?
 

micneu

Patron
Joined
Mar 23, 2019
Messages
474
ich nutze entweder tunnelblick und damals als ich noch windows genutzt hatte den original openvpn client
deshalb kann ich dir mit deinem client nicht helfen
- leider hast du noch nicht die konfiguratione vom client und vom server gepostet
 

bo2000

Dabbler
Joined
Nov 19, 2020
Messages
12
- leider hast du noch nicht die konfiguratione vom client und vom server gepostet

Welche Einstellungen hättest du denn gerne eingesehen?

Momentan würde ich vermuten, dass die Verbindungsdaten nicht korrekt sind.
Ich habe mich an diese Anleitung gehalten, die eine Verbindung über Zertifikate erklärt: https://youtu.be/S8I-IiQYVas

Laut Plugin-Anleitung soll man über die Konsole User mit Benutzername und Passwort anlegen.
Das fand ich jetzt etwas altertümlich (wie so manche Dinge an dem Plugin. Ein ordentliches Userinterface ist leider Fehlanzeige.)
 
Joined
Jan 27, 2020
Messages
577

bo2000

Dabbler
Joined
Nov 19, 2020
Messages
12
Da brauchst du auch keine gui, das wird alles über ein .conf file eingerichtet und dann als service gestartet.

Naja, wenn ich Benutzer einrichten möchte, dann ist eine GUI schon schön anstatt da immer die Konsole bemühen zu müssen, um dann schlussendlich doch wieder im Browser zu landen, weil man die *.ovpn laden muss. Für mich sind solche Geschichte immer etwas zu sehr oldschool, das geht eindeutig schöner.
Aber das ist auch eindeutig ein anderes Thema.

Wie bereits erwähnt, ist momentan mein Problem einen Benutzer anzulegen.
Dies soll ich dann doch über die Konsole mit Benutzername + Passwort machen und nicht wie im YT-Tutorial erklärt über Zertifikate?
Diesen Punkt habe ich noch nicht genau erklärt gefunden.
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Du brauchst für OpenVPN immer ein Client- und ein Server-Zertifikat, das ist ja SSL-basiert. Die Frage ist, ob Du jeden reinlassen willst, der Dein Zertifikat "klaut" oder zusätzlich authentifizieren. Nur Benutzername & Passwort geht nicht.

Was das UI angeht - wenn Du eine OPNsense oder PFsense nimmst, hast Du ein UI für OpenVPN. FreeNAS ist aber keine Firewall - Du kannst in Jails eben zusätzlich FreeBSD-Container laufen lassen. Innerhalb von denen hast Du dann ein old school FreeBSD. Kann man nehmen, muss man nicht. Kannst auch eine VM anlegen und da OPNsense rein installieren ...

Apropos: TrueNAS 12 bringt doch einen OpenVPN-Server mit samt UI - taugt der nicht?
 

bo2000

Dabbler
Joined
Nov 19, 2020
Messages
12
Du brauchst für OpenVPN immer ein Client- und ein Server-Zertifikat, das ist ja SSL-basiert. Die Frage ist, ob Du jeden reinlassen willst, der Dein Zertifikat "klaut" oder zusätzlich authentifizieren. Nur Benutzername & Passwort geht nicht.

Die Arbeitsweise von OpenVPN generell ist mir schon klar.
Wenn man als Authentifizierung nur zertifikatsbasiert macht, muss man natürlich für jeden Benutzer ein eigenes Zertifikat haben, um bei einer Kompromittierung nicht gleich das komplette System zurücksetzen zu müssen.
Man ersetzt hier ja nur einmal "Benutzername + Passwort" durch "Zertifikat". Da bei beiden Methoden ja eh alles auf dem Gerät gespeichert wird, ist es vor allem nur eine Einrichtungserleichterung.

Was das UI angeht - wenn Du eine OPNsense oder PFsense nimmst, hast Du ein UI für OpenVPN. FreeNAS ist aber keine Firewall - Du kannst in Jails eben zusätzlich FreeBSD-Container laufen lassen. Innerhalb von denen hast Du dann ein old school FreeBSD. Kann man nehmen, muss man nicht. Kannst auch eine VM anlegen und da OPNsense rein installieren ...

Selber nutze ich eine Sophos UTM. Daher ist mir klar, wie sowas "normaler Weise" aussieht und mich daher immer wieder reine Konsolenkonfigurationen auf die Palme bringen.

Ich hatte es hier nicht erwähnt (nur in einem anderen Post): Ich richte dieses System als Gefallen für einen Freund ein und habe jetzt schon mehr Zeit reingesteckt, als mir lieb ist.
Daher ist mir schnelles Klickibunti gerade wichtig :)


Apropos: TrueNAS 12 bringt doch einen OpenVPN-Server mit samt UI - taugt der nicht?

Hier darf man mir allerdings gerne eine scheuern.
Ich Vollpfosten habe extra das Plugin installiert, ohne vorher nachzugucken.
Ich bin einfach davon ausgegangen, dass ein NAS soetwas in der Standardkonfiguration gar nicht dabei hat.

Ich deinstalliere jetzt erstmal das Plugin und schaue mir das nochmal an. *facepalm*
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Ich vermute, dass das Feature auf Drängen der ganzen "prosumer" Heimanwender rein kam ;)
 

bo2000

Dabbler
Joined
Nov 19, 2020
Messages
12
Steige da jetzt nicht ganz durch.
Ich habe alle CAs und Zertifikate neu erstellt und alles bei 0 eingerichtet.
Trotzdem erhalte ich TLS Fehler:

2020-11-24 17:52:02 Outgoing Control Channel Encryption: Cipher 'AES-256-CTR' initialized with 256 bit key 2020-11-24 17:52:02 Outgoing Control Channel Encryption: Using 256 bit message hash 'SHA256' for HMAC authentication 2020-11-24 17:52:02 Incoming Control Channel Encryption: Cipher 'AES-256-CTR' initialized with 256 bit key 2020-11-24 17:52:02 Incoming Control Channel Encryption: Using 256 bit message hash 'SHA256' for HMAC authentication 2020-11-24 17:52:02 MANAGEMENT: >STATE:1606236722,RESOLVE,,,,,, 2020-11-24 17:52:02 TCP/UDP: Preserving recently used remote address: [AF_INET]xx.xx.xx.xx:1194 2020-11-24 17:52:02 Socket Buffers: R=[65536->65536] S=[65536->65536] 2020-11-24 17:52:02 UDPv4 link local (bound): [AF_INET][undef]:1194 2020-11-24 17:52:02 UDPv4 link remote: [AF_INET]xx.xx.xx.xx:1194 2020-11-24 17:52:02 MANAGEMENT: >STATE:1606236722,WAIT,,,,,, 2020-11-24 17:52:02 MANAGEMENT: >STATE:1606236722,AUTH,,,,,, 2020-11-24 17:52:02 TLS: Initial packet from [AF_INET]xx.xx.xx.xx:1194, sid=54027a47 84395ceb 2020-11-24 17:52:02 VERIFY ERROR: could not extract CN from X509 subject string ('C=DE, ST=-, L=-, O=-, OU=-, emailAddress=a@b.com') -- note that the username length is limited to 64 characters 2020-11-24 17:52:02 OpenSSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed 2020-11-24 17:52:02 TLS_ERROR: BIO read tls_read_plaintext error 2020-11-24 17:52:02 TLS Error: TLS object -> incoming plaintext read error 2020-11-24 17:52:02 TLS Error: TLS handshake failed 2020-11-24 17:52:02 SIGUSR1[soft,tls-error] received, process restarting 2020-11-24 17:52:02 MANAGEMENT: >STATE:1606236722,RECONNECTING,tls-error,,,,, 2020-11-24 17:52:02 Restart pause, 5 second(s) 2020-11-24 17:52:06 SIGTERM[hard,init_instance] received, process exiting 2020-11-24 17:52:06 MANAGEMENT: >STATE:1606236726,EXITING,init_instance,,,,,
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Du brauchst einen CN in Deinem Zertifikat. Der muss kein existierender FQDN sein. Beispiel:
Code:
C = DE, ST = Baden-Wuerttemberg, L = Karlsruhe, O = punkt_de GmbH, emailAddress = **********@punkt.de, CN = VPN-Server
 
Last edited:

bo2000

Dabbler
Joined
Nov 19, 2020
Messages
12
Tatsächlich.
Danke.
Mir war bisher nicht bewusst, dass Common Name tatsächlich interpretiert wird und nicht nur optional ist (so ist es auch im TrueNAS Server eingestellt. Das Feld ist nicht mandatory...Der "alternative name" hingegen schon und den habe ich auch immer angegeben.)
Witziger Weise wird das Feld im verlinkten YT Tutorial auch frei gelassen.

Tue Nov 24 20:04:57 2020 Initialization Sequence Completed Tue Nov 24 20:04:57 2020 MANAGEMENT: >STATE:1606244697,CONNECTED,SUCCESS,10.20.0.2,xx.xx.xx.xx,1194,,

Ich danke dir vielmals.
 
Last edited:

ChrisChros

Patron
Joined
Nov 24, 2018
Messages
218

ChrisChros

Patron
Joined
Nov 24, 2018
Messages
218
Eine Sache noch.
Ich habe bei dem OpenVPN-Server die IP 10.10.90.0/24 eingetragen. Diesen Bereich habe ich auch als Netzwerk in dem Unifi-Controller angelegt.
Bildschirmfoto 2020-11-26 um 13.17.30.png
Bildschirmfoto 2020-11-26 um 16.38.50.png
Der Client bekommt auch eine entsprechende IP aus dem Bereich zugewiesen, zumindest wird mir das in der OpenVPN-App angezeigt. Leider kann ich im Unifi-Controller unter Clients keinen entsprechenden User mit der genannten IP finden.

In der Firewall meines USG habe ich dann noch unter LAN IN die Regel eingetragen das aus dem Netz 10.10.90.0/24 auf das Netz 192.168.1.0/24 zugegriffen werden darf. Das scheint saber nicht zu funktionieren
Bildschirmfoto 2020-11-26 um 16.34.51.png

Jemand eine Idee was ich einstellen muss damit ich von dem VPN-Netzwerk auf ein anderes zugreifen kann?

Gruß Chris
 

micneu

Patron
Joined
Mar 23, 2019
Messages
474
ich verstehe gerade nicht was der Unifi-Controller mit dem OpenVPN zu tun haben soll, ich denke du machst das mit deinem Free/TrueNAS?
 

ChrisChros

Patron
Joined
Nov 24, 2018
Messages
218
Naja das USG beinhaltet ja die gesamte Firewall. Darin kann ich ja zugriffe gewähren oder blockieren, auch subnet übergreifend.
Das OpenVPN Plugin vergibt ja jedem Client eine IP aus dem zuvor definierten Subnet und dieses wird ja von dem USG verwaltet, oder verstehe ich da was falsch?
 

micneu

Patron
Joined
Mar 23, 2019
Messages
474
ich kenne mich mit deiner USG nicht aus, da solltest du am besten in dem forum für dieses USG fragen
ich persönlich setze OPNsense ein, auf dieser mache ich das vpn.
 

ChrisChros

Patron
Joined
Nov 24, 2018
Messages
218
nun ja die Frage ist ja auch ob am TrueNAS eventuell noch weitere Sachen eingestellt werden müssen z.B. in den Netzwerkeinstellungen ein neues VLan und Bridge?
 

ChrisChros

Patron
Joined
Nov 24, 2018
Messages
218
Hallo,
Ich habe nun hier im Forum die Lösung gefunden, wie ich über die OpenVPN Verbindung auf meine lokalen Netzwerke zugreifen kann.

Es müssen noch Additional Parameters und ein Tunables eingetragen werden. Zusätzlich muss noch eine static route für das VPN Netzwerk in den Router eingetragen werden.
 
Top