Wie stelle ich sicher, dass OpenVPN verbunden ist?

7

Ich benötige eine Art "Schutz" für meine VPN-Verbindung. Wenn die Verbindung unterbrochen wird, sollte das Gerät nicht einmal das Internet erreichen. (Ich kann die Maschine auf andere Weise erreichen.)

Ist es irgendwie möglich?
Wenn ich mich richtig erinnere, gibt es einige "Schutzmaßnahmen" für Windows, aber ich habe noch nie von einer solchen Lösung für Linux gehört. Ganz zu schweigen von Cli.

Apache
quelle
Sie müssen Ihre Verbindung auf dem Server oder dem Client überprüfen?
Tim
Klient. Wenn der Client die Verbindung trennt, sollte der Computer versuchen, die Verbindung erneut herzustellen, oder nicht erreichbar sein. Es sollte jedoch niemals die normale ISP-Verbindung verwendet werden.
Apache
Betrachten Sie es als Safe. Sie leben in einem Land, in dem das Internet nicht kostenlos ist. Sie erstellen eine passwortgeschützte (verschlüsselte) VM und haben openvpn in dieser Box. Sie können SSH oder sogar die VM als Ihre eigene Umgebung verwenden. Aber: Wenn openvpn ausfällt, ist die Verbindung öffentlich. | Wie lösen Sie das? :)
Apache
Ps.: Nein, ich lebe nicht in einem solchen Land, nur ein Beispiel für einen Anwendungsfall.
Apache

Antworten:

4

Sie können die downAnweisung in Ihrer Client-Konfiguration verwenden, um ein benutzerdefiniertes Skript auszulösen, wenn die Verbindung unterbrochen wird. Im Skript können Sie verschiedene Maßnahmen ergreifen, um die öffentlichen Netzwerkverbindungen einzuschränken. Hier sind meine Ideen:

  • Richten Sie einige iptables ein, die nur Verbindungen zum VPN-Server zulassen. Alle anderen Verbindungen wurden getrennt. Vergessen Sie natürlich nicht, diese Einschränkung aufzuheben, wenn der Client wieder hochfährt
  • Ändern Sie die Datei resolv.conf, um die Namensauflösung einzuschränken oder zu deaktivieren
  • Integrieren Sie benutzerdefinierte Routing-Tabellen
Tim
quelle
Nun das ist ordentlich.
Apache
0

Sie können dafür eine Firewall verwenden. Deaktivieren Sie standardmäßig den gesamten eingehenden und ausgehenden Datenverkehr. Erlauben Sie ausgehenden Datenverkehr auf der openvpn-Netzwerkschnittstelle. Ermöglichen Sie den Zugriff auf Ihren VPN-Server über alle Schnittstellen (damit Sie eine Verbindung zu VPN herstellen können).

Wenn Sie nur einen Hostnamen für den Zugriff auf den VPN-Server verwenden können, müssen Sie diese Regeln zulässiger gestalten. Lassen Sie den ausgehenden Port 53 für die Namensauflösung und einen ausgehenden VPN-Port zu.

Ich werde die Konfigurationsbefehle für ufw(unkomplizierte Firewall) setzen. Diese Befehle basieren auf der Antwort von askubuntu "UFW for OpenVPN" .

# Adapt this value to your config!
VPN_ADDRESS=...

ufw --force reset

ufw default deny incoming
ufw default deny outgoing

ufw allow out on tun0
ufw allow out to $VPN_ADDRESS

ufw enable
Filhit
quelle