Es ist ein Muss, in dieser Technologie-Ära ein Virtuelles Privates Netzwerk (VPN) zu haben. VPNs sind zunehmend wichtig für den persönlichen Gebrauch, insbesondere aber für Unternehmen und Großunternehmen. Und wenn Sie immer noch darüber nachdenken, auf welche VPN-Lösung Sie setzen sollen, warum nicht OpenConnect VPN in Betracht ziehen?
OpenConnect VPN ist eine kostenlose VPN-Lösung mit leistungsstarken Funktionen auf Unternehmensebene. Und in diesem Tutorial erfahren Sie, wie Sie den OpenConnect VPN-Server (ocserv) einrichten und eine Verbindung herstellen.
Lesen Sie weiter und halten Sie böse Entitäten von Ihrem Netzwerk fern!
Voraussetzungen
Dieses Tutorial umfasst praktische Demonstrationen. Stellen Sie sicher, dass Sie folgendes bereit haben:
- A Linux server running Debian- This tutorial uses a Debian 11 Bullseye with hostname ocserv-debian.
- Einen administrativen Benutzer oder einen Nicht-Root-Benutzer mit sudo/Root-Rechten.
- A domain name pointed to your Linux server IP address – This tutorial uses a domain name vpn.atadomain.io.
- A client machine like Windows 10 or Linux Desktop – This tutorial uses a Windows 10 machine.
Installation des OpenConnect VPN-Servers
Der OpenConnect VPN-Server ist ein Open-Source-SSL-basierter VPN-Server für Linux, der auf den meisten Linux-Distributionen verfügbar ist, wie Debian, Ubuntu, RHEL/CentOS und Fedora.
Der OpenConnect VPN-Server unterstützt die meisten Clients von Desktop/Computer bis Mobilgeräte (Android und iOS). Ebenso unterstützt der OpenConnect VPN-Server mehrere Authentifizierungs-Backends, wie Radius, OpenID, Kerberos und Smart Card.
Aber bevor Sie diese Funktionen nutzen können, müssen Sie zunächst den OpenConnect VPN-Server installieren, wie folgt:
1. SSH zu Ihrem Server und führen Sie den folgenden apt update
-Befehl aus, um den Paketindex zu aktualisieren und zu aktualisieren. Dieser Befehl stellt sicher, dass Sie die neuesten Paketinformationen haben.

2. Führen Sie als Nächstes den folgenden apt install
-Befehl aus, um das Paket ocserv
zu installieren.
Sobald die Installation abgeschlossen ist, wird der neue systemd-Dienst namens ocserv
gestartet.

3. Führen Sie nun die folgenden systemctl
-Befehle aus, um sicherzustellen, dass der Dienst ocserv
ausgeführt wird.
Wie Sie aus der Ausgabe sehen können, ist der Status des ocserv
-Dienstes aktiviert und läuft.

Generierung von SSL/TLS-Zertifikaten
Mit dem installierten OpenConnect VPN-Server ist der nächste Schritt sicherzustellen, dass Sie sicher eine Verbindung zum OpenConnect VPN-Server herstellen können. Wie? Der erste Schritt besteht darin, SSL/TLS-Zertifikate über Certbot und LetsEncrypt zu generieren.
Aber bevor Sie Zertifikate generieren, stellen Sie sicher, dass Sie eine E-Mail-Adresse haben, um sich bei LetsEncrypt zu registrieren, und dass der Domainname auf die IP-Adresse des Debian-Servers zeigt.
Um SSL/TLS-Zertifikate zu generieren:
1. Führen Sie den folgenden Befehl aus, um certbot
auf Ihrem Linux-Server zu installieren.

2. Führen Sie dann den folgenden Befehl für certbot
aus, um SSL/TLS-Zertifikate zu generieren. Stellen Sie sicher, dass Sie die E-Mail-Adresse ([email protected]
) und den Domainnamen (vpn.atadomain.io
) entsprechend ändern.

3. Führen Sie abschließend den folgenden Befehl aus, um zu überprüfen, ob die generierten SSL/TLS-Zertifikate in Ihrem Domain-Verzeichnis vorhanden sind.
Bei Erfolg sehen Sie die öffentlichen (fullchain.pem) und privaten (privkey.pem) Schlüssel, wie unten gezeigt.

Konfigurieren des OpenConnect VPN-Servers
Auch wenn die SSL/TSL-Zertifikate zur Verfügung stehen, bleiben sie ungenutzt, es sei denn, Sie konfigurieren den OpenConnect VPN-Server. Ändern Sie die Standardkonfiguration des OpenConnect VPN-Servers (/etc/ocserv/ocserv.conf) wie folgt:
- Ändern Sie die Standardauthentifizierungsmethode.
- Deaktivieren Sie UDP auf dem OpenConnect VPN-Server.
- Ändern Sie die Standard-SSL/TLS-Zertifikate.
- Einrichten des Domainnamens und eines internen Netzwerks oder einer IP-Adresse für Clients.
Um den OpenConnect VPN-Server zu konfigurieren, befolgen Sie die unten stehenden Schritte:
1. Führen Sie zunächst den cp
-Befehl unten aus, um die Standardkonfiguration des OpenConnect VPN-Servers (ocserv.conf
) in ocserv.conf.orig
zu sichern, das im Verzeichnis /etc/ocserv
gespeichert ist.
2. Öffnen Sie als nächstes die Konfiguration des OpenConnect VPN-Servers (/etc/ocserv/ocserv.conf) mit Ihrem bevorzugten Editor.
3. Ändern Sie den Wert des auth
-Parameters in plain[passwd=/etc/ocserv/ocpasswd]
, wie unten gezeigt. Dadurch wird die Standardauthentifizierung mit der Passwortdatei ersetzt.
auth = "plain[passwd=/etc/ocserv/ocpasswd]"

4. Setzen Sie jetzt ein #
vor den udp-port
-Parameter, um die Standard-UDP-Verbindungen zu deaktivieren.
Sie verwenden OpenConnect VPN im reinen TCP-Modus, den Sie über Kernelparameter beschleunigen können.
tcp-port = 443
#udp-port = 443

5. Ersetzen Sie den Pfad der Zertifikatsdatei im server-cert
-Parameter durch den öffentlichen Schlüssel und den server-key
-Parameter durch den privaten Schlüssel.
server-cert = /etc/letsencrypt/live/vpn.atadomain.io/fullchain.pem
server-key = /etc/letsencrypt/live/vpn.atadomain.io/privkey.pem

6. Ändern Sie den Wert des Parameters try-mtu-discovery
auf true
, um die MTU-Erkennung zu aktivieren. Dadurch wird die Geschwindigkeit und Leistung des OpenConnect VPN-Servers erhöht.
try-mtu-discovery = true

7. Geben Sie anschließend den Domainnamen für den OpenConnect VPN-Server im Parameter default-domain
ein und ändern Sie die Standardinterne IP-Adresse im Parameter ipv4-network
.
In diesem Beispiel verwenden VPN-Clients das interne Netzwerk 10.11.0.0/24
.
default-domain = vpn.atadomain.io
ipv4-network = 10.11.0.0

8. Kommentieren Sie die Standardparameter für route
, indem Sie an den Anfang jeder Zeile ein #
-Zeichen hinzufügen, um das Standardrouten-Gateway zu deaktivieren. Speichern Sie die Datei ab und verlassen Sie den Editor.
#route = 10.0.0.0/8
#route = 172.16.0.0/12
#route = 192.168.0.0/16
#route = fd00::/8
#route = default

9. Führen Sie nun die folgenden Befehle aus, um den ocserv
-Dienst zu restart
, die Änderungen zu übernehmen und alle offenen Ports (ss
) auf Ihrem System aufzulisten.
Wenn der OpenConnect VPN-Server ausgeführt wird, sehen Sie den Port 443 im Zustand LISTEN und in Benutzung durch den ocserv-Dienst, wie unten gezeigt.

Hinzufügen von Benutzern zum OpenConnect VPN-Server
Mit dem konfigurierten OpenConnect VPN-Server müssen Sie eine Möglichkeit finden, sich damit zu verbinden. Wie? Indem Sie einen VPN-Benutzer erstellen und zum OpenConnect VPN-Server hinzufügen.
Um einen Benutzer zum OpenConnect VPN-Server hinzuzufügen, erstellen Sie einen VPN-Benutzer und generieren eine Passwortdatei über das Dienstprogramm ocpasswd
wie folgt:
Führen Sie den folgenden ocpasswd
-Befehl aus, um einen neuen Benutzer zu erstellen. Geben Sie bei Aufforderung ein neues Passwort für den Benutzer ein und wiederholen Sie es. Die Wahl des Benutzernamens für dieses Tutorial ist atauser
, aber Sie können Ihren eigenen angeben.
Nachdem der Benutzer erstellt wurde, wird auch die Passwortdatei (/etc/ocserv/ocpasswd
) erstellt.

Führen Sie nun den folgenden cat
-Befehl aus, um die Details der Passwortdatei (/etc/ocserv/ocpasswd
) zu überprüfen.

Hinzufügen von UFW-Firewall-Regeln zum Öffnen wichtiger Ports
Auf einem Debian-System ist die Standard-Firewall IPTables, die ein tiefgreifendes Verständnis von Netzwerken erfordert, um eingerichtet zu werden. Warum nicht den Prozess vereinfachen? In diesem Tutorial installieren und konfigurieren Sie die UFW als Standard-Firewall.
1. Führen Sie den folgenden Befehl aus, um UFW zu installieren
, während Sie automatisch alle Aufforderungen akzeptieren (-y
)

2. Sobald UFW installiert ist, führen Sie die folgenden ufw
-Befehle aus, um wichtige Ports für den OpenConnect VPN-Server zu öffnen, damit er ordnungsgemäß funktioniert.
Wenn Sie dazu aufgefordert werden, geben Sie Y ein und drücken Sie die Eingabetaste, um mit der Operation fortzufahren, wie unten gezeigt.

Zum Schluss führen Sie den folgenden Befehl aus, um den UFW-Status zu überprüfen und sicherzustellen, dass UFW ausgeführt wird.
Die Ausgabe unten zeigt den aktiven UFW-Status und alle hinzugefügten Firewall-Regeln.

Aktivierung der Portweiterleitung
Mit einem laufenden VPN-Server müssen Sie den Datenverkehr aus der Außenwelt auf Ihren Server umleiten, indem Sie die Portweiterleitung aktivieren. Sie werden die Portweiterleitung auf Ihrem Debian-Server über Kernelparameter zulassen.
Um die Portweiterleitung zu aktivieren, befolgen Sie diese Schritte:
Führen Sie den folgenden Befehl aus, der keine Ausgabe auf dem Terminal erzeugt, sondern eine neue Datei namens /etc/sysctl.d/60-ocserv.conf
erstellt. Diese Datei enthält Kernelparameter, um die Portweiterleitung auf Ihrem System zu aktivieren.
Führen Sie nun den untenstehenden sysctl
-Befehl aus, um die neuen Kernelparameter anzuwenden und die Portweiterleitung zu aktivieren.

Einrichten von NAT mit UFW
Die Aktivierung der Portweiterleitung ist nur einer der ersten Schritte. Dieses Mal müssen Sie sicherstellen, dass VPN-Clients über den OpenConnect VPN-Server eine Verbindung zum Internet oder zu bestimmten Netzwerken herstellen können. Wie? Durch Einrichten von NAT über UFW.
Um NAT mit UFW für den OpenConnect VPN Server einzurichten:
1. Führen Sie den folgenden Befehl aus, um die Liste der Schnittstellen auf Ihrem System zu überprüfen.
In diesem Beispiel wird die Schnittstelle eth1 das NAT-Gateway für VPN-Clients sein.

2. Öffnen Sie als nächstes die UFW-Konfiguration (/etc/ufw/before.rules) mit Ihrem bevorzugten Editor und fügen Sie die folgenden Zeilen vor der *filter
-Option hinzu. Diese Konfigurationen werden VPN-Benutzer (ausgehende Schnittstelle angeben) oder das interne Netzwerk zur Schnittstelle eth1
NATen.
Vergewissern Sie sich, dass Sie das Subnetz (10.11.0.0/24
) mit den Netzwerken Ihrer VPN-Clients und die Schnittstelle (eth1
) mit Ihrer Netzwerkschnittstelle ändern.
# NAT für OpenConnect VPN-Server
# mit Client-Netzwerk 10.11.0.0/24
# zur Schnittstelle eth1
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.11.0.0/24 -o eth1 -j MASQUERADE
COMMIT

3. Fügen Sie die folgenden Zeilen unterhalb des Abschnitts ok icmp code for FORWARD
der ufw-before-forward
-Optionen hinzu, speichern Sie die Datei und beenden Sie den Editor.
Diese Konfigurationen ermöglichen das Weiterleiten (Quelle und Ziel) des VPN-Client-Netzwerks.
# Weiterleitung des VPN-Client-Netzwerks zulassen
-A ufw-before-forward -s 10.11.0.0/24 -j ACCEPT
-A ufw-before-forward -d 10.11.0.0/24 -j ACCEPT

4. Nachdem Sie gespeichert haben, führen Sie den folgenden Befehl aus, um die UFW-Regeln neu zu laden und den UFW-Dienst neu zu starten. Dadurch wird sichergestellt, dass die NAT-Konfiguration auf das System angewendet wird.
5. Schließlich führen Sie den folgenden iptables
-Befehl aus, um den NAT-Status auf UFW zu überprüfen, da das Backend von UFW IPTables ist.
Bei erfolgreicher Ausführung erhalten Sie eine Ausgabe wie die untenstehende.

Verbindung zum OpenConnect VPN-Server über OpenConnect-GUI
Nach den Anweisungen sollten Sie nun einen voll funktionsfähigen OpenConnect VPN Server betreiben. Aber nach all der harten Arbeit ist der Moment der Wahrheit gekommen.
Der OpenConnect VPN Server läuft möglicherweise, aber es gibt nur eine beste Möglichkeit zur Überprüfung – die Verbindung zum OpenConnect VPN Server herzustellen.
Um eine Verbindung zum OpenConnect VPN Server herzustellen, müssen Sie die OpenConnect-GUI-Anwendung installieren:
1. Öffnen Sie Ihren bevorzugten Webbrowser und besuchen Sie die GitHub-Seite von OpenConnect-GUI.
2. Laden Sie anschließend die OpenConnect VPN-Anwendung für Windows herunter und installieren Sie sie.

3. Öffnen Sie den OpenConnect-GUI VPN-Client und klicken Sie auf das File-Menü → Profiles → New profile (advanced) (oder drücken Sie Strg+Shift+N). Ein kleines Fenster erscheint, in dem Sie die Details für das neue Profil ausfüllen können (Schritt vier).

4. Füllen Sie nun die VPN-Profilinformationen wie folgt aus:
- Name – Geben Sie einen Verbindungsnamen ein (z.B. testvpn).
- Gateway – Geben Sie den Domänennamen Ihres OpenConnect VPN-Servers an (z.B. https://vpn.atadomain.io).
- Benutzername – Der Benutzer hinzugefügt (atauser) zum OpenConnect VPN-Server.
Nach dem Ausfüllen klicken Sie auf Speichern, um die Informationen zu bestätigen und das VPN-Profil zu erstellen.

5. Als Nächstes legen Sie Ihr neu erstelltes VPN-Profil (testvpn) als Server fest und klicken Sie auf Verbinden, um eine Verbindung zum OpenConnect VPN-Server herzustellen.

6. Geben Sie bei Aufforderung das Passwort für Ihren VPN-Benutzer ein und klicken Sie auf OK.

7. Sobald die Verbindung hergestellt ist, ändert sich die Farbe des Vorhängeschlosses in Grün, wie unten gezeigt.

8. Klicken Sie abschließend auf die Registerkarte VPN-Info, um detaillierte Verbindungsstatusinformationen zu erhalten. Sie sollten die interne IP-Adresse sehen, die Sie vom VPN-Server erhalten haben, den DNS-Server und die TLS-Version, die Sie verwenden.

Schlussfolgerung
Im Verlauf dieses Tutorials haben Sie gelernt, den OpenConnect VPN-Server einzurichten. Gleichzeitig haben Sie gelernt, SSL/TSL-Zertifikate zu verwenden und Firewall-Regeln hinzuzufügen, um eine sichere Verbindung zum OpenConnect VPN-Server herzustellen.
Mit diesem neu erworbenen Wissen, warum integrieren Sie den OpenConnect VPN-Server nicht mit mehreren Authentifizierungs-Backends wie Radius und OpenID? Oder fügen Sie eine zusätzliche Sicherheitsebene für die Client-Authentifizierung über Zwei-Faktor-Authentifizierung hinzu?