In diesem Blogpost zeigen wir dir Schritt für Schritt, wie du NordVPN auf einem Ubuntu 22.04 Droplet bei DigitalOcean einrichtest, sodass nur ein bestimmtes Python-Skript den VPN nutzt, während dein Droplet weiterhin unter seiner statischen IP-Adresse erreichbar bleibt.
Hier ist die Anleitung für NordVPN auf DigitalOcean:
1. NordVPN installieren
Zunächst musst du den NordVPN-Client auf deinem Ubuntu-Server installieren.
Befolge dazu die offizielle Anleitung von NordVPN.
2. Netzwerknamespace erstellen
Erstelle einen neuen Netzwerknamespace, nennen wir ihn vpnns
.
sudo ip netns add vpnns
Füge dann ein virtuelles Ethernet-Paar (veth) hinzu, um den neuen Namespace mit dem Haupt-Namespace zu verbinden.
sudo ip link add veth0 type veth peer name veth1 sudo ip link set veth1 netns vpnns
Weise diesen Schnittstellen IP-Adressen zu.
sudo ip addr add 10.200.200.1/24 dev veth0 sudo ip link set veth0 up sudo ip netns exec vpnns ip addr add 10.200.200.2/24 dev veth1 sudo ip netns exec vpnns ip link set veth1 up
3. IP-Weiterleitung aktivieren und NAT konfigurieren
sudo sysctl -w net.ipv4.ip_forward=1 sudo iptables -t nat -A POSTROUTING -s 10.200.200.0/24 -o eth0 -j MASQUERADE
4. VPN im Namespace einrichten
Verbinde NordVPN im vpnns
-Namespace:
sudo ip netns exec vpnns nordvpn connect <wunschland>
Ersetze <wunschland>
durch das Land, über das du die Verbindung herstellen möchtest.
5. Python-Skript durch den Namespace leiten
Um dein Python-Skript durch den VPN zu leiten, führe es innerhalb des Namespaces aus:
sudo ip netns exec vpnns python3 /pfad/zu/deinem_script.py
Dabei wird sichergestellt, dass nur der Datenverkehr deines Skripts über den VPN geleitet wird.
6. Erreichbarkeit des Droplets sicherstellen
Da der Haupt-Netzwerknamespace nicht verändert wurde, bleibt dein Droplet weiterhin unter seiner öffentlichen IP-Adresse erreichbar.
Diese Anleitung ermöglicht es dir, spezifischen Datenverkehr durch einen VPN zu leiten, während dein Server weiterhin normal erreichbar bleibt. Viel Spaß beim Einrichten!