dmaier

OPENVPN Ubuntu 20.04 - Windows 10 OpenVPN Client

gelöstFrageLinux
Guten Tag,

ich habe eine allgemeine Verständnisfrage.

Ich betreibe einen kleinen dedicated Linux Server bei einem größeren Hoster. Dieser Server hat eine feste
IPv4-Adresse. Auf dem Server ist Ubuntu 20.04 installiert.

Nun habe ich einen OpenVPN Server eingerichtet und habe erfolgreich von einem WindowsClient eine VPN
Verbindung aufbauen können, diese VPN Verbindung hat die IP 10.8.0.6 bekommen.

Jetzt frage ich mich, wie ich über den Tunnel meine SSH Verbindung aufbauen kann. Ein Aufbau über
10.8.0.6:PORT funktioniert nicht. Ich vermute hier ein Routingproblem.

Eine SSH Verbindung über die externeIP:Port funktioniert natürlich tadelos.

Mir ist ist nicht klar, wo ich welche Einstellungen vornehmen soll ?

Danke für die Hilfe.

Lg
Maier
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 1176695958

Url: https://administrator.de/forum/openvpn-ubuntu-20-04-windows-10-openvpn-client-1176695958.html

Ausgedruckt am: 22.05.2025 um 20:05 Uhr

Lochkartenstanzer
Lochkartenstanzer 20.08.2021 um 11:56:34 Uhr
Goto Top
Moin,

  • Ist denn der SSH-Daemon an das VPN-Interface gebunden (netstat -ap zeigt das an).

  • Funktioniert den ein Ping auf die Tunnel-IP?

lks
dmaier
dmaier 20.08.2021 um 12:08:47 Uhr
Goto Top
Hallo Lochkartenstanzer,

danke für die schnelle Antwort.

Ping vom Windows Client auf die TunnelIP funktioniert. Eine Bindung des SSH-Daemons an das VPN-Interface habe ich nicht gefunden.

Ich vermute mal da liegt der Fehler, werde ich sofort prüfen.

Lg
Maier
149062
149062 20.08.2021 aktualisiert um 12:12:59 Uhr
Goto Top
Ebenso Firewallfreigabe für den SSH Zugriff aus dem Tunnel nicht vergessen.
aqui
Lösung aqui 20.08.2021 aktualisiert um 13:22:47 Uhr
Goto Top
Ist das ein reines Client Dialin, sprich arbeiten die einwählenden Clients rein nur auf dem Server ?
Oder ist das auch ein Client-to-Site VPN so das einwählende OVPN Clients Ziele im gesamten Servernetz erreichen können ?
Siehe dazu auch HIER.
Bei einem reinen Client VPN sollte es reichen wenn du z.B. den Klassiker PuTTY startest und dort dann mit SSH lediglich die IP Adresse des OpenVPN Servers im internen OpenVPN IP Netz vermutlich dann 10.8.0.1 angibst ! Das hängt aber in hohem Maße davon ab ob du in deinem OpenVPN Setup die moderne "topology subnet" definiert hast oder noch das alte NET30 Verfahren. Leider fehlt dazu dein OVPN Setup um das beurteilen zu können. face-sad (Siehe sonst Tutorial oben)
Bedenke auch das die .6 die Client IP des Client Rechners (Windows) ist. Auf einem Winblows Rechner willst du vermutlich NICHT mit SSH zugreifen, oder ?
Falls doch musst du natürlich sicherstellen das ein SSH Server Prozess auf der Winblows Kiste rennt und diese lokal erreichbar ist.
Bei Windows ganz wichtig: Dort ist immer die lokale Firewall aktiv. Kollege @149062 hat es oben schon gesagt. Sofern du also auf einen Windows Rechner per SSH zugreifen willst muss das die lokale Windows Firewall auch erlauben und entsprechend customized sein.
Leider ist nicht ganz klar wer bei dir wo per SSH zugreifen soll ?!
dmaier
dmaier 20.08.2021 aktualisiert um 15:21:26 Uhr
Goto Top
Vorab Information: SSH-Verbindung über Putty zum Linux Server beim Hoster
VPN-Tunnel über OpenVPN Windows Client

@aqui

Erstmal Danke, du hast mich direkt mit dem Kopf drauf gestossen, ich habe als Verbindungs IP die IP des hergestellten Tunnels und nicht die inet IP des Tun0 genommen. Ein ifconfig kann wunder bewirken.

aber

zuerst hatte ich probiert den "ListenAddress" Eintrag der SSH-Config zuändern, danach hatte ich mich ausgesperrt face-sad. Zum Glück gibt es die RescueConsole, RescueLinux gebootet, Partition mounten und den Eintrag wieder korrigieren. Man kann sich auch einfach unnötig viel Arbeit machen, wenn man vorher nicht die Basics prüft face-smile

Danke an alle.

Trotzdem habe ich noch eine Frage damit ich mich nicht nochmal aussperre, wenn ich nun den externen SSH Port des Servers über die Ufw Firewall schließe, bleibt doch meine Verbindung über den selbigen Port im Tunnel unberührt, oder ?
149062
149062 20.08.2021 aktualisiert um 17:45:23 Uhr
Goto Top
wenn ich nun den externen SSH Port des Servers über die Ufw Firewall schließe, bleibt doch meine Verbindung über den selbigen Port im Tunnel unberührt, oder ?
Wenn du eine weitere Allow-Regel hast die weiterhin SSH über das Tunnelinterface bzw. das interne Subnetz erlaubt und dann ja. Gibt es nur eine Regel und löschst oder deaktivierst diese dann sperrst du dich wieder aus, außer du änderst die Regel so ab das sie nur für das Tunnelnetz gilt.
Beachte das bereits aktiv hergestellte Verbindungen (Firewall State-Table) nicht von neuen Regeln betroffen sind (Statefull Firewall). Erst wenn die States die Verbindung schließen und eine neue Session aufgebaut wird gilt die neue Regel für den Client.

Also bspw.
sudo ufw insert 1 allow in on tun0 from 10.8.0.0/24 to any port 22 proto tcp
und dann die bestehende generelle SSH Regel via sudo ufw delete [NUM] entsorgen.

Sowas sollte man eigentlich erst mal im Lab selbst üben bevor man sich einen vServer zulegt und nicht hinterher wenn die Teile schon im Netz hängen, da werden die sonst ganz schnell zu Zombies und den rechtlichen Aspekt wenn deine Kiste dann unwissend als Jumphost für illegale Aktivitäten agiert weil du sie nicht gut genug abgesichert hast sollt man nicht vernachlässigen!
dmaier
dmaier 20.08.2021 um 17:04:14 Uhr
Goto Top
@149062

Vielen Dank !

Mit deinem letzten Absatz hast du natürlich Recht, aber im eigenen Netzwerk, habe ich dann nicht die "speziellen" Konfigurationen die mir evtl. bei einem vServer Probleme bereiten. Deswegen "übe" ich direkt richtig.

Du hast vollkommen Recht, dass der Sicherheitsaspekt nicht vernachlässigt werden sollte und das tue ich auch nicht. Ich hatte immer nur meinen externen SSH Port offen und der Zugang ist durch Zertifikat und PW geschützt. Dazu habe ich failban und ufw eingerichtet und ich bekomme immer eine Benachrichtigung per E-Mail wenn sich jemand (ich face-smile) sich einloggt. Sonst ist kein Zugriff möglich, außer natürlich jetzt über den VPN-Port, der aber auch nach bestem Gewissen laut Doku abgesichert ist.

Über Exploits müssen wir dann natürlich nicht mehr reden face-smile.

In dem Sinne, nochmal vielen Dank.
149062
149062 20.08.2021 aktualisiert um 17:21:55 Uhr
Goto Top
Zitat von @dmaier:
Mit deinem letzten Absatz hast du natürlich Recht, aber im eigenen Netzwerk, habe ich dann nicht die "speziellen" Konfigurationen die mir evtl. bei einem vServer Probleme bereiten.
Lässt sich in VMs alles genau so lokal abspielen face-wink.
Deswegen "übe" ich direkt richtig.
Na dann LAN- und Bitbruch face-smile.
dmaier
dmaier 20.08.2021 aktualisiert um 17:39:52 Uhr
Goto Top
Hallo evoplus,

jetzt brauche ich doch nochmal deine Hilfe:

Die Regel wurde hinzugefügt:

sudo ufw insert 1 allow in on tun0 from 10.8.0.0/24 port 5566 proto tcp

Danach wurde der eigentliche externe Port 5566 gesperrt. Mit einer neuen SSH
Verbindung auf IP 10.8.0.1:5566 über den noch bestehenden Tunnel wollte ich nun eine Verbindung aufbauen. Dies funktionierte nicht. Erst nachdem ich den externen port 5566 wieder freigegeben hatte.
Adapter tun0 ist richtig, dass habe ich geprüft. IP ist richtig, Port ist richtig.

Hast du eine Idee ?

PS: Ist ja nicht so, dass ich nicht nicht mehre VMs in Oracel zum testen eingrichtet wären *schäm* face-smile
149062
149062 20.08.2021 aktualisiert um 18:20:13 Uhr
Goto Top
Hast du eine Idee ?
Jepp. Das ist die copy n' paste Strafe, wollte mal sehen ob du den Fehler bemerkst face-wink. Never trust anyone, always consult your documentation first before using foreign code lines! Du führst ja hoffentlich nicht auch ein sudo rm -rf / einfach so aus um zu sehen was passiert face-smile.
sudo ufw insert 1 allow in on tun0 from 10.8.0.0/24 port 5566 proto tcp
Diese Regel gibt fälschlicherweise den Source-Port statt den eigentlichen Destination Port an , deswegen matcht die nicht weil die Source-Ports ja immer random sind...
sudo ufw insert 1 allow in on tun0 from 10.8.0.0/24 to any port 5566 proto tcp
Statt dem "to any" kannst du auch die IP des Servers im Tunnel angeben, also bspw. 10.8.0.1 wenn das Interface noch mehr IPs besitzen würde.
sudo ufw insert 1 allow in on tun0 from 10.8.0.0/24 to 10.8.0.1 port 5566 proto tcp
dmaier
dmaier 20.08.2021 um 19:25:19 Uhr
Goto Top
Hallo evoplus,

da hast du mir aber einen ordentlichen Kinnhaken verpasst face-smile und heute schon das zweite mal vorgeführt face-smile.

Jetzt läuft alles, ich danke dir für deine Hilfe. Zukünftig werde ich meine Copy/Paste Mentalität überdenken, mache ich wirklich viel zu oft.

Schönen Abend dir.

Lg
Maier