OPNsense Forum

International Forums => German - Deutsch => Topic started by: Navigator on November 20, 2024, 02:38:32 PM

Title: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: Navigator on November 20, 2024, 02:38:32 PM
Hallo zusammen,

m.E. funktioniert OpenVPN mit Benutzer-Authentifizierung TOTP nicht korrekt. Vielleicht mache ich aber ja auch einen Gedankenfehler. Dann wäre ich sehr dankbar für Hilfe.

Folgende Situation:

Ich wollte meine OpenVPN Server (legacy) Einstellungen umstellen auf die Instances. Soweit klappt das auch und man kann einen Tunnel zumindest schon mal aufbauen. Dieser bricht jedoch nach ca. 30-40 Sekunden ab mit dem Hinweis

2024-11-20T14:16:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2024-11-20T14:16:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'

Nach einigem Testen bin ich dann auf die Einstellungen Renegotiate time und Auth Token Lifetime gekommen. Laut der Hilfebeschreibung muss man die Renegotiate time auf "0" setzen wenn man ein One Time Password nutzt, was ja auch Sinn macht. Setzt man dies aber auf "0" wir im Feld "Auth Token Lifetime" ein Wert ungleich Null erwartet. Gibt man jedoch einen Wert > 0 ein kann man die Config nicht speichern mit dem Hinweis "A token lifetime requires a non zero Renegotiate time." Gibt mal den Wert "0" ein, kann man zwar speichern aber der OpenVPN Service lässt sich nicht mehr starten.

Ich habe mal etwas herumgetestet und kann nun eine "vermeintlich" konstante VPN Verbindung mit einer Benutzer-Authentifizierung mit Benutzername+Passwort+TOTP herstellen. Ich habe lediglich bei Auth Token Lifetime den Wert "0" stehen. Ich habe das "vermeintlich" aber in Anführungsstriche gesetzt, weil der VPN alle ca 60 Sekunden auch den o.g. Hinweis wirft und die VPN Verbindung kurz unterbricht aber sich danach sofort wieder reconnected. Das ist aber doch auch nicht richtig.

Wie eingangs geschrieben, vielleicht mache ich ja auch einen Gedankenfehler, aber irgendwie wirkt das auf mich gerade nicht richtig. Ich switche erstmal wieder auf OpenVPN (legacy) zurück. Vielleicht hat ja jemand einen Tip für mich.

Danke und viele Grüße
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on January 22, 2025, 05:22:29 PM
Hallo,

bin gerade dabei, ebenfalls einen OpenVPN Server mit TOTP so zu konfigurieren, dass er nutzerfreundlich zu verwenden ist, allerdings im Legacy Mode.
Den Sinn von Instances habe ich bislang noch nicht verstanden. Vielleicht kann es jemand hier erklären.
Ich vermute aber, dass Legacy mittelfristig aus OPNsense verbannt werden soll. Bei den Advanced Options gibt es ja jetzt schon den Hinweis, dass das Feld künftig entfernt wird, weil unsicher. Meiner Meinung müsste da OPNsense aber zuvor häufig benötige Optionen in die GUI einbauen, was dieser wohl aber unübersichtlich machen würde.
Ich verstehe dann aber nicht, weswegen man sich an der Möglichkeit, weitere OpenVPN Optionen angeben zu können, stört. Da kommt ohnehin nur hin, wer Administrator ist oder von diesem entsprechend privilegiert wurde. Ich vermute, dass gar nicht die Sicherheit der Knackpunkt ist, sondern dass man in diesen Optionen jede Menge falsch machen kann, was in der GUI nicht überprüft wird und dann der Server nicht startest. Wie du selbst erfahren hast, akzeptiert aber auch die GUI solche Fehlangaben.
Da hätten die Entwickler noch eine Menge zu tun. Aber das ist eine andere Geschichte.

Bei der Suche nach einer brauchbaren Konfiguration für TOTP bin ich auf dein Post gestoßen. Die Dokumentation verrät leider nicht alle nötigen Schritte, daher war ich gezwungen zu recherchieren.

Mit den beiden von dir erwähnten Parametern, "Renegotiate time" und "Auth Token Lifetime" musste ich mich auch auseinander setzen, weil der Client jeweils nach eine Stunde wieder das PW und einen neuen TOTP Token haben wollte. Diese Parameter sind hierbei auch wichtig.

Ja, "Renegotiate time" auf 0 gesetzt, deaktiviert die Renegotiation, doch steht da auch, dass man die entsprechende Einstellung auch am Client machen muss, aber nicht wie. Im Client Konfig Export findet sich auch keine Zeile dazu, wenn es im Server auf 0 steht. Ohne dieser Einstellung wurde nach wie vor jede Stunde (Standardwert) am Client dennoch erneut das Passwort und der Token abgefragt.

So hatte ich mich damit weiter beschäftigt und die Empfehlung gefunden, die Renegotiation aktiv zu belassen und für "Auth Token Lifetime" einen sehr hohen Wert von vielen Stunden zu setzen. Ich habe 12 Stunden genommen. Damit steht die Verbindung nun seit mehr als 2 Stunden.
Aber wie erwähnt, das ist ein Legacy Server, falls das einen Unterschied macht.

Zu den Optionen, die hast du vermutlich nicht richtig verstanden, sind aber auch nicht in OPNsense ordentlich erklärt.
Mit einem Wert für "Auth Token Lifetime" generiert der Server bei Verbindungsherstellung einen Session-Token, den er an den Client schickt. Mit diesem wird dann die Renegotiation nach der in "Renegotiate time" gesetzten Zeit durchgeführt. Der Client benötigt dafür also keinen frischen TOTP PIN. Und "Auth Token Lifetime" gibt die Gültigkeitsdauer des Session-Tokens an, sollte also länger als eine übliche Session sein.
Renegotiation zu deaktivieren wird aus Sicherheitsgründen nicht empfohlen.

Wäre nett, wenn diese Info in die Dokumentation einfließen würde.
Und auch fehlt in der Client Konfiguration (Client Export) die Option für TOTP, so dass der Client getrennte Felder für die beiden Werte anbietet.

Vielleicht bist du ja gewillt, es mit den neuen Erkenntnissen nochmals zu versuchen.

Grüße
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: Navigator on February 02, 2025, 12:02:37 PM
Hallo viragomann,

erst einmal Sorry für die verspätete Antwort.

Habe das jetzt nochmal getestet mit einer neuen Testinstanz. Der alte OpenVPN Server (legacy) läuft super stabil ohne jegliche Abbrüche. Wenn ich nun die OpenVPN Instances aufbaue und dann teste, kommt wieder immer nach genau 60 Sekunden der Abbruch.

2025-02-02T11:50:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:50:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:50:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx
...
...
...
2025-02-02T11:49:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:49:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:49:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx
...
...
...
2025-02-02T11:48:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:48:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:48:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx
...
...
...
2025-02-02T11:47:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:47:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:47:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx

Habe jetzt auch Deine empfohlene Einstellung in der "Auth Token Lifetime" vorgenommen (auf 43200 gesetzt, also auch 12 Stunden). Trotzdem gleiches Verhalten.

Das muss meiner Meinung nach irgendwas in der OPNsense bzw. dem OpenVPN selbst sein. Ich verfolge gerade mal, parallel wo ich hier die Antwort tippe, das Log von OpenVPN und diese "Client disconnected" Meldungen kommen auch jetzt, wo mein Testclient gar nicht verbunden ist. Was fehlt sind natürlich die dazwischen liegenden Connects eines Client.

2025-02-02T11:57:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:57:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:57:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx   
2025-02-02T11:56:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:56:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:56:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx
2025-02-02T11:55:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:55:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:55:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx
2025-02-02T11:54:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:54:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:54:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx
2025-02-02T11:53:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:53:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:53:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx
2025-02-02T11:52:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:52:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:52:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx

Aber ich habe keine Idee, woran das liegen könnte.

Viele Grüße
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 02, 2025, 03:07:04 PM
Quote from: Navigator on February 02, 2025, 12:02:37 PM2025-02-02T11:53:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:53:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:53:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx
2025-02-02T11:52:00   Notice   openvpn_server2   MANAGEMENT: Client disconnected   
2025-02-02T11:52:00   Notice   openvpn_server2   MANAGEMENT: CMD 'status 3'   
2025-02-02T11:52:00   Notice   openvpn_server2   MANAGEMENT: Client connected from /var/etc/openvpn/instance-xxxxxxxxxx

Hallo,

soweit ich weiß, sind diese Logs normal. Ich weiß aber jetzt nicht das Intervall. Müsste ich nachsehen.
Ist der Log Verbosity Level auf Standard (1) gesetzt?

Ergibt sich darauf irgendein Problem?
Ist die Verbindung nach wie vor nicht stabil?
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on February 03, 2025, 11:34:31 AM
Moin,

Das Hauptproblem mit TOTP ist, dass die Clients dieses nicht vorsehen:

Wenn man TOTP macht, wird der User nach Benutzer / Passwort gefragt.
Normal erwartet man danach die Abfrage vom TOTP Code.
Das passiert aber nicht!
Man muss im Passwort-Feld das Passwort, gefolgt vom TOTP Code eingeben BSP.: Password081596.
Damit ist Passwort speichern und "nur" TOTP aktuell eingeben nicht möglich.

Ein Workaround ist es das Passwort auf etwas "gemeinsames" zu setzen BSP.: @081596, wobei @ das Passwort wäre.
Finde ich nicht schön, aber funktioniert.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 03, 2025, 12:43:43 PM
Quote from: trixter on February 03, 2025, 11:34:31 AMDas Hauptproblem mit TOTP ist, dass die Clients dieses nicht vorsehen:
Das stimmt so nicht. Es ist in entsprechende Clients sehr wohl eingebaut. Es muss aber in der Konfiguration auch aktiviert werden, aber diese Info fehlt in der OPNsense Dokumentation ebenso, wie oben angemerkt, wie im Client Export.

Baut man die Zeile
Quotestatic-challenge "Time-based one-time password:" 1
in die Client Konfig ein, zeigt sich der OpenVPN GUI Client auf Windows bei der Anmeldung wie im Screenshot. Der Text innerhalb der Anführungszeichen kann individuell gesetzt werden.
Benutzername und Passwort können dabei gespeichert werden, dann muss nur das TOTP bei jeder Anmeldung neu eingegeben werden.
Das scheint mir komfortabel genug.

Wünschenswert wäre, dass der Client Export diesen Eintrag automatisch setzt, wenn eine Konfig für einen TOTP-aktivierten Server exportiert wird. Aktuell muss mein die Zeile manuell bei "Custom config" einfügen.

Grüße
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on February 03, 2025, 02:57:18 PM
Danke - da habe ich wieder mal was dazu gelernt.

Das sollte vielleicht wirklich mit in die entsprechende Doku.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: Monviech (Cedrik) on February 03, 2025, 03:04:03 PM
Räusper:

Das ist schon drin:
https://github.com/opnsense/docs/pull/655

Zukunft:
https://github.com/opnsense/docs/issues/663
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 03, 2025, 03:21:03 PM
Danke!

Meine Aussage bezüglich des Fehlens in der Doku bezog sich auf den Zeitpunkt meines oberen Posts. Da bin ich die Doku durchgegangen und fand die Erwähnung noch nicht.
Schön aber, dass mittlerweile darauf hingewiesen wird.

Noch schöner wäre es, wenn der Client Export die Zeile gleich automatisch setzen würde. Vielleicht lässt sich das auch noch einrichten.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 03, 2025, 04:27:09 PM
Wenn wir hier nun schon die Vollständigkeit der Dokumentation diskutieren, will ich noch hinzufügen, dass auch die Option "Auth Token Lifetime" da keine Erwähnung findet. Das gilt auch noch heute.
Ohne dies explizit auf einen entsprechenden Wert zu setzen, wird die VPN jeweils nach einer Stunde beendet und man sieht sich gezwungen, ein neues TOTP einzugeben zu müssen.
Ist auch nicht gerade komfortabel. Bei OpenVPN mit TOTP sehe ich diese Einstellung daher als essentiell.

Auch die Option "Renegotiate time" könnte in diesem Zusammenhang erklärt werden.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on February 03, 2025, 04:50:44 PM
Quote from: viragomann on February 03, 2025, 04:27:09 PMWenn wir hier nun schon die Vollständigkeit der Dokumentation diskutieren, will ich noch hinzufügen, dass auch die Option "Auth Token Lifetime" da keine Erwähnung findet. Das gilt auch noch heute.
Ohne dies explizit auf einen entsprechenden Wert zu setzen, wird die VPN jeweils nach einer Stunde beendet und man sieht sich gezwungen, ein neues TOTP einzugeben zu müssen.
Ist auch nicht gerade komfortabel. Bei OpenVPN mit TOTP sehe ich diese Einstellung daher als essentiell.

Auch die Option "Renegotiate time" könnte in diesem Zusammenhang erklärt werden.


Dem Wunsch schließe ich mich an.

Außerdem betrachte ich die Doku auf Github eher als Doku für Beta-Stadium.

Für Produktiv sollte die Doku auf de Webseiten gelten - ist aber vielleicht bloß meine Meinung.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 03, 2025, 05:07:14 PM
Ich hatte mich an die offizielle Doku gehalten: https://docs.opnsense.org/manual/how-tos/sslvpn_client.html

Auch da ist mittlerweile das von Monviech erwähnte "static-challenge" nun schon eingeflossen. Vor 2 Wochen fehlte es wohl noch.
Allerdings fehlen nach wie vor die anderen o.g. Optionen.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on February 03, 2025, 07:37:04 PM
Habe vor ca 2 Jahren angefangen mit TOTP zu spielen.

Dann im Anschluss wurde die OpenVPN Config auf die Instance umgestellt.
Dabei habe ich ebenfalls festgestellt, dass "Renegotiate time" wohl Probleme macht - weil die Verbindung dann immer unterbrochen wird - Stündlich..

Habe diese dann auf 43200 (12 Std) gestellt - das missfällt mir zwar (andere Hersteller bekommen das unterbrechungsfrei hin, die liegen dann bei 30-60 Minuten).

Das scheint das Problem zwischenzeitlich zu beheben.

"Auth Token Lifetime" finde ich missverständlich, da mit Token auch der TOTP Key bezeichnet wird - das habe ich in dem Kontext noch nicht getestet.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 03, 2025, 08:43:16 PM
Quote from: trixter on February 03, 2025, 07:37:04 PM"Auth Token Lifetime" finde ich missverständlich, da mit Token auch der TOTP Key bezeichnet wird - das habe ich in dem Kontext noch nicht getestet.
Naja, der Term Token wird sehr verbreitet verwendet, wenn es um die Autorisierung einer Session geht.
Hier hat er mit dem TOTP nichts zu tun.

Ich hatte die beiden Optionen so verstanden, aber das klingt auch plausibel und funktioniert bei mir:

"Renegotiate time" ist die Zeit, nach welcher der Handshake quasi aufgefrischt wird. Der Client verwendet dazu die gecachten Authentifizierungsdaten, also Benutzername und Passwort.
Im Fall von TOTP schließt das Passwort jedoch den Token mit ein, weshalb dieser bei jeder Renegotiation eingegeben werden müsste. Wenn du diese auf 12 Stunden setzt, ist das erst eben nach 12 Stunden, vorausgesetzt, es ist auch am Client so gesetzt.
So sollte es aber nicht gemacht werden. Häufigere Renegotiations machen durchaus Sinn im Hinblick auf die Sicherheit.

Dafür gibt es nun "Auth Token Lifetime". Das ist zwar ein Zeitwert, aber erst das explizite Setzen dieser Option veranlasst den Server dem Client einen Authentication Token beim Verbindungsaufbau zu übermitteln. Diesen verwendet der Client dann, um die Renegotiation durchzuführen.
Das hat bei TOTP den Vorteil, dass der Token für die Dauer der "Auth Token Lifetime" nicht bei jeder Renegotiation eingegeben werden muss.

Daher sind meine Einstellungen:
"Renegotiate time" nicht gesetzt, also Standardwert 3600
"Auth Token Lifetime" 43200

Somit macht der Client zwar jede Stunde Renegotiation, doch die Verbindung hält einen Arbeitstag ohne Zutun durch.

Ja, noch was: Das clientseitige Caching des Passworts darf nicht deaktiviert sein. Sonst vergisst er den Auth-Token und er müsste neu übertragen werden, was eine erneute Authentifizierung mit Passwort und TOTP erfordern würde. Eine entsprechende Option gibt es im Client Export.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on February 04, 2025, 01:49:51 PM
Quote from: viragomann on February 03, 2025, 08:43:16 PMJa, noch was: Das clientseitige Caching des Passworts darf nicht deaktiviert sein. Sonst vergisst er den Auth-Token und er müsste neu übertragen werden, was eine erneute Authentifizierung mit Passwort und TOTP erfordern würde. Eine entsprechende Option gibt es im Client Export.

Das gibt glaube ich beim Tunnelaufbau immer eine Warnmeldung ?

Finde es auch Legitim wenn die User Benutzer / Passwort abgespeichert haben (idealer Weise im Passwortsafe) und "nur" den TOTP eingeben müssen - das gibt sonst wieder gejammer, dass alles soooo kompliziert für die Nutzer ist ;)
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 04, 2025, 02:18:29 PM
Quote from: trixter on February 04, 2025, 01:49:51 PMDas gibt glaube ich beim Tunnelaufbau immer eine Warnmeldung ?
Ja, in der OpenVPN GUI kommt da eine schöne rote Zeile. Daran habe ich mich schon gewöhnt. :-)

Die Alternative wäre eben, die Zugangsdaten jeweils nach der Renegotiation Time neu einzugeben. Macht beim empfohlenen 1 Stunden-Intervall auch keinen Spaß.

QuoteFinde es auch Legitim wenn die User Benutzer / Passwort abgespeichert haben
Ich kenne keinen Weg, das zu unterbinden.

Hier suggeriert der Wortlaut "Disable password save" im OPNsense OpenVPN Client Export auch mehr als die Option in der Realität zu bewirken vermag. Die Instanthilfe verrät aber eh, was es tatsächlich tut. Es fügt die Zeile "auth-nocache" in die Client Konfig ein, die dem Client veranlasst, das Passwort bzw. den Auth-Token nicht im Cache zu halten. Das Speichern des Passworts am Client verhindert es nicht.

Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on February 05, 2025, 11:40:07 AM
Eine Lösung zum Thema Passwort war: wir vergeben ein Passwort, dass der User nicht kennt - so kann der Account nicht auf Fremd-HW umgezogen werden ;)

Frage: Wie kommen Deine User an TOTP? Bei mir würde man rumzicken bevor eine App aufs Handy kommt.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on February 05, 2025, 11:54:03 AM
Quote from: viragomann on February 03, 2025, 08:43:16 PMDafür gibt es nun "Auth Token Lifetime". Das ist zwar ein Zeitwert, aber erst das explizite Setzen dieser Option veranlasst den Server dem Client einen Authentication Token beim Verbindungsaufbau zu übermitteln. Diesen verwendet der Client dann, um die Renegotiation durchzuführen.
Das hat bei TOTP den Vorteil, dass der Token für die Dauer der "Auth Token Lifetime" nicht bei jeder Renegotiation eingegeben werden muss.

Daher sind meine Einstellungen:
"Renegotiate time" nicht gesetzt, also Standardwert 3600
"Auth Token Lifetime" 43200

Erfahrungswert: habe Renegotiate time auch auf eine Stunde gestellt, leider gibt es Anwendungen, die diese Unterbrechung gar nicht mögen, denn die Verbindung wird immer neu wieder aufgebaut - so mein letzter Stand mit GUI 11.50.0.0
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 05, 2025, 11:59:36 AM
User habe ich bislang noch nicht. Das ist derweil noch ein Testserver, den ich nur selbst genutzt habe.

Ich habe das Profil zum MS Authenticator hinzugefügt. Diesen nutzen wir firmenintern ohnehin für andere Zwecke.
Mit dem Google Authenticator und anderen RFC 6238-kompatiblen sollte es aber auch funktionieren.
Ob alle unsere Leute ein Firmenhandy haben, weiß ich jetzt nicht, aber ich denke, die installieren eine App dafür auch am privaten, wenn nötig. Hier geht es vorerst nur um eine handvoll Entwickler, die sind da aufgeschlossen.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: viragomann on February 05, 2025, 12:06:57 PM
Quote from: trixter on February 05, 2025, 11:54:03 AMleider gibt es Anwendungen, die diese Unterbrechung gar nicht mögen, denn die Verbindung wird immer neu wieder aufgebaut - so mein letzter Stand mit GUI 11.50.0.0

Ich verwende auch diese Version. Hatte mir für die Tests die neueste installiert. Da gibt es aber keine Probleme.
Meinen Rechner fahre ich abends in den Standby Modus. Beim nächsten Start wird dann das TOTP verlangt, dann läuft die Verbindung den ganzen Tag stabil.

Aber wie erwähnt, das ist ein Legacy Server. Renegotiation Time ist nicht gesetzt, weder am Server noch am Client, und in den Advanced Options habe ich
auth-gen-token 57600für die Auth Token Lifetime. Die hatte ich irgendwann auf 16 Stunden erhöht.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on June 18, 2025, 10:25:49 AM
Habe bei mir jetzt alle Legacy Tunnel umgestellt, da ja eine EOL Notice erscheint
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on June 18, 2025, 10:46:53 AM
Quote from: viragomann on February 04, 2025, 02:18:29 PM
Quote from: trixter on February 04, 2025, 01:49:51 PMDas gibt glaube ich beim Tunnelaufbau immer eine Warnmeldung ?
Ja, in der OpenVPN GUI kommt da eine schöne rote Zeile. Daran habe ich mich schon gewöhnt. :-)

Die Alternative wäre eben, die Zugangsdaten jeweils nach der Renegotiation Time neu einzugeben. Macht beim empfohlenen 1 Stunden-Intervall auch keinen Spaß.

QuoteFinde es auch Legitim wenn die User Benutzer / Passwort abgespeichert haben
Ich kenne keinen Weg, das zu unterbinden.

Hier suggeriert der Wortlaut "Disable password save" im OPNsense OpenVPN Client Export auch mehr als die Option in der Realität zu bewirken vermag. Die Instanthilfe verrät aber eh, was es tatsächlich tut. Es fügt die Zeile "auth-nocache" in die Client Konfig ein, die dem Client veranlasst, das Passwort bzw. den Auth-Token nicht im Cache zu halten. Das Speichern des Passworts am Client verhindert es nicht.



Klarer Fall von Etikettenschwindel ;)
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: Patrick M. Hausen on June 18, 2025, 10:50:12 AM
Wir haben bisher auch die Credentials nicht im Client gecached, aber den Benutzern empfohlen, sie in der Mac OS Keychain zu speichern. Die ist bis auf weiteres erst mal als sicher angesehen.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on June 18, 2025, 11:02:22 AM
Nachtrag:

Mittlerweile gibt es einen Punkt beim Client Export:

"Enable static challenge (OTP)"

Fügt das Eingabefeld für TOTP hinzu

Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: trixter on June 18, 2025, 11:06:19 AM
Quote from: Patrick M. Hausen on June 18, 2025, 10:50:12 AMWir haben bisher auch die Credentials nicht im Client gecached, aber den Benutzern empfohlen, sie in der Mac OS Keychain zu speichern. Die ist bis auf weiteres erst mal als sicher angesehen.

Für Windows-Menschen scheint Keypass dieses Problem ebenfalls gut zu lösen - wird dennoch gerne von Usern bemängelt, weil man halt ein seperates Masterpasswort unabhängig vom Login benötigt.
Title: Re: OpenVPN (Instances) mit TOTP funktioniert nicht korrekt... oder?!
Post by: Patrick M. Hausen on June 18, 2025, 11:27:29 AM
Die Mac OS Keychain ist nach dem Login offen und der gesamte Vorgang automatisch.

Schlägt der Bildschirmschoner an oder klappt man den Laptop zu, braucht man wieder einmalig das PW.

Wird der Rechner verloren oder geklaut, ist dank FileVault sowieso alles dicht.