Das ist ziemlich durcheinander, ich weiß. Lassen Sie mich alles erklären.
Ich habe ein dynamisches DNS auf meinem Router eingestellt. Ich habe überprüft, dass ich nach der Portweiterleitung eine Verbindung zur gewünschten Anwendung herstellen kann (wenn ich etwas auf Port 1337 ausführe und den Port an einen geeigneten Computer weiterleiten kann, kann ich ohne Probleme eine Verbindung von außen herstellen).
Wenn ich jetzt mein Macbook mit VPN verbinde und etwas wie oben beschrieben ausführe, funktioniert es wie erwartet. ABER , wenn ich meinen Computer mit Ubuntu Server 16.04 mit dem VPN verbinde und etwas ausführe oder eine Verbindung per SSH herstellen möchte, schlägt dies fehl. Ich habe den Port weitergeleitet, den ich für die SSH-Verbindung am Router verwende. Ich habe auch versucht, einen Webserver zu hosten, was ebenfalls fehlgeschlagen ist.
Was kann ich gegen dieses Problem tun? Das ergibt für mich keinen Sinn.
Informationen zum Ubuntu Server-Computer: Es handelt sich um eine Neuinstallation, bei der der OpenVPN-Client und der SSH-Server konfiguriert sind, keine Firewall ausgeführt wird, die Iptables nicht bearbeitet wurden und über Ethernet mit dem Router verbunden sind.
EDIT: Hier sind die Routing-Tabellen: http://pastebin.com/ay6fpLcL
ip -4 r
auf Ubuntu,netstat -f inet -rn
auf Mac)?Antworten:
OK, ich habe eine Lösung gefunden.
Mit
openvpn
Paket ohne Wrapper:Fügen Sie diese 2 Zeilen zu Ihrer
.ovpn
Datei hinzu (oder.conf
wenn Sie automatisch eine Verbindung herstellen):Erstellen Sie dann
/etc/openvpn/up.sh
mit ausführbaren Berechtigungen (755/700):Hier ist zum Beispiel meine Konfiguration:
Verwenden eines anderen VPN-Clients / einer anderen Konfiguration:
Ich kann die erforderlichen Schritte nicht vorhersagen, aber im Allgemeinen müssen Sie
up.sh
jedes Mal, wenn Ihre VPN-Verbindung hergestellt wird , ein Skript (oben) ausführen.Hoffe, es hilft jemandem, der das gleiche Problem hat. Prost!
quelle