OpenVPN nach dem Trennen beenden - So deaktivieren Sie das erneute Verbinden

1

Ich möchte, dass meine OpenVPN-Clientanwendung (die auf A ausgeführt wird ) beendet wird, wenn keine Verbindung zu einem Server ( B ) hergestellt (oder eine neue Verbindung hergestellt ) werden kann. Ich benutze das UDP-Protokoll. Sowohl A als auch B sind Linux-Systeme.

Genauer gesagt erhalte ich immer wieder die folgenden Protokolleinträge.

UDPv4 link remote: [AF_INET] [remote-ip]
TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
TLS Error: TLS handshake failed
SIGUSR1[soft,tls-error] received, process restarting
Re-using SSL/TLS context
UDPv4 link remote: [AF_INET] [remote-ip]
...

Ich weiß, warum A nicht auf B zugreifen kann . Anstatt den Prozess neu zu starten, möchte ich, dass OpenVPN beendet wird.

man openvpnIch habe versucht, einige Optionen zu verwenden.

  • Ich habe resolv-retryauf eine kleine Zahl gesetzt (funktioniert nicht, die Adresse von B kann aufgelöst werden).
  • Ich habe connect-retry-maxauf 1 gesetzt (funktioniert nicht, ich verwende UDP).

Ich vermute, dass ich über eine Option nachdenke ...

BEARBEITEN: Hintergrundinfo: Ich möchte dies wegen Firewalllochung tun. B befindet sich hinter einer Firewall, die nur SSH-Verkehr zulässt. Bevor ich den Client auf A starte, führe ich ein Skript aus, das den Datenverkehr von A nach B ermöglicht . Dies funktioniert für eine Weile, aber die Lücke in der Firewall von B muss nach einiger Zeit 'erneuert' werden (z. B. aufgrund von Netzwerkproblemen, aber auch, weil A eine dynamische IP-Adresse hat). Da es kein up-preGegenstück zu gibt down-preund ich keinen Patch anwenden und OpenVPN selbst kompilieren möchte, um ihn hinzuzufügen, führe ich auf A ein Wrapper-Skript aus , das ein neues Loch stanzt (in B)Firewall) und startet OpenVPN jedes Mal, wenn OpenVPN nicht mehr ausgeführt wird. Dies würde funktionieren, wenn nur OpenVPN beendet würde ....

Semafoor
quelle
Ist es eine Option, nur "5" in der Konfiguration stummzuschalten, um mehrere Protokolleinträge zu unterdrücken?
Mattias Åslund
Nein, leider nicht. Ich brauche den Prozess zu beenden. Ich habe meiner Frage einige Hintergrundinformationen hinzugefügt, um zu erklären, warum ich diese benötige.
Semafoor

Antworten:

0

Fügen Sie der OpenVpn-Konfiguration die Direktive --down hinzu, um ein Skript aufzurufen, wenn OpenVpn den Tunnel schließt. Dieses Skript kann die Anwendung oder ein Ereignis besser schließen - sitzen Sie herum und versuchen Sie, das Lochen direkt neu zu initialisieren.

Mattias Åslund
quelle