SoftEther VPN ist eine vielseitige Open-Source-VPN-Lösung, die verschiedene Protokolle unterstützt und auf mehreren Plattformen läuft, darunter Linux, Windows und macOS. In diesem Artikel zeige ich dir, wie du einen SoftEther VPN Server auf einem Ubuntu 24.04 System einrichtest.
Diese Anleitung führt dich Schritt für Schritt durch den Prozess.
Grundvoraussetzungen
Bevor du mit der Installation beginnst, stelle sicher, dass folgende Voraussetzungen erfüllt sind:
- Ein Ubuntu 24.04 Server mit Root-Zugriff oder einem Benutzer mit sudo-Rechten
- Mindestens 1 GB RAM und 10 GB freier Festplattenspeicher
- Eine stabile Internetverbindung
- Grundlegende Kenntnisse in der Linux-Kommandozeile
System aktualisieren
Beginne damit, dein Ubuntu-System auf den neuesten Stand zu bringen:
sudo apt update
sudo apt upgrade -yAbhängigkeiten installieren
SoftEther VPN benötigt einige Entwicklungswerkzeuge und Bibliotheken. Installiere diese mit folgendem Befehl:
sudo apt install build-essential libssl-dev libncurses5-dev libreadline-dev zlib1g-dev -ySoftEther VPN herunterladen
Lade die neueste Version von SoftEther VPN herunter. Besuche dazu die offizielle Download-Seite und kopiere den Link für die Linux x64-Version. Führe dann folgende Befehle aus:
cd /tmpwget https://www.softether-download.com/files/softether/v4.42-9798-rtm-2024.03.15-tree/Linux/SoftEther_VPN_Server/64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.42-9798-rtm-2024.03.15-linux-x64-64bit.tar.gzHinweis: Überprüfe den Link auf der offiziellen Webseite, da er sich möglicherweise geändert hat.
SoftEther VPN entpacken und installieren
tar xzvf softether-vpnserver-v4.42-9798-rtm-2024.03.15-linux-x64-64bit.tar.gzcd vpnserverKompiliere nun den SoftEther VPN-Server:
makeDieser Vorgang kann einige Minuten dauern. Bestätige die Lizenzvereinbarung, indem du dreimal ‚1‘ eingibst.
SoftEther VPN-Server installieren
Verschiebe die kompilierten Dateien in das /usr/local-Verzeichnis:
sudo mv vpnserver /usr/local
cd /usr/local/vpnserver/
sudo chmod 600 *
sudo chmod 700 vpnserver vpncmdSystemd-Service erstellen
Erstelle eine Systemd-Service-Datei für SoftEther VPN:
sudo nano /etc/systemd/system/softether-vpnserver.serviceFüge folgenden Inhalt in die Datei ein:
[Unit]
Description=SoftEther VPN Server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/vpnserver/vpnserver start
ExecStop=/usr/local/vpnserver/vpnserver stop
Restart=on-failure
[Install]
WantedBy=multi-user.targetSpeichere die Datei und beende den Editor (STRG+X, dann Y und Enter).
SoftEther VPN-Server starten
sudo systemctl enable softether-vpnserver
sudo systemctl start softether-vpnserverÜberprüfe den Status des Dienstes:
sudo systemctl status softether-vpnserverFirewall konfigurieren
Wenn du UFW als Firewall verwendest, öffne die erforderlichen Ports:
sudo ufw allow 443/tcp
sudo ufw allow 992/tcp
sudo ufw allow 1194/udp
sudo ufw allow 5555/tcpFür eine fortgeschrittene Firewall-Konfiguration mit iptables, führe folgende Befehle aus:
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 992 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 1194 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 5555 -j ACCEPT
sudo iptables -A FORWARD -j ACCEPT
sudo iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADESoftEther VPN-Server konfigurieren
Starte das Konfigurationsprogramm:
sudo /usr/local/vpnserver/vpncmdWähle Option 1, um den VPN-Server zu verwalten, und drücke Enter, um eine Verbindung zum lokalen Server herzustellen.
Setze ein Administratorpasswort:
ServerPasswordSetErstelle einen virtuellen Hub:
HubCreate myhubAktiviere SecureNAT für den Hub:
Hub myhub
SecureNatEnableErstelle einen Benutzer:
UserCreate myuserSetze ein Passwort für den Benutzer:
UserPasswordSet myuserL2TP/IPsec-Server konfigurieren (optional)
Wenn du L2TP/IPsec verwenden möchtest, aktiviere es mit folgenden Befehlen:
IPsecEnableSetze ein vorgeteiltes Schlüsselwort (Pre-Shared Key):
IPsecSetSSL-Zertifikate einrichten
Installiere Certbot für Let’s Encrypt-Zertifikate:
sudo apt install certbot -yBeantrage ein Zertifikat für deine Domain:
sudo certbot certonly --standalone -d dein.domain.comKopiere die Zertifikate in das SoftEther VPN-Verzeichnis:
sudo cp /etc/letsencrypt/live/dein.domain.com/fullchain.pem /usr/local/vpnserver/
sudo cp /etc/letsencrypt/live/dein.domain.com/privkey.pem /usr/local/vpnserver/Konfiguriere SoftEther VPN, um die Zertifikate zu verwenden:
sudo /usr/local/vpnserver/vpncmd
ServerCertSet /C=/usr/local/vpnserver/fullchain.pem /K=/usr/local/vpnserver/privkey.pemPerformance-Optimierung
Passe die Kernel-Parameter an, um die VPN-Performance zu verbessern:
sudo nano /etc/sysctl.confFüge folgende Zeilen hinzu:
net.ipv4.ip_forward = 1
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216Lade die Änderungen:
sudo sysctl -pServer-Überwachung einrichten
Installiere Prometheus und Node Exporter:
sudo apt install prometheus node-exporter -yKonfiguriere Prometheus, um den Node Exporter zu überwachen:
sudo nano /etc/prometheus/prometheus.ymlFüge folgende Konfiguration hinzu:
scrape_configs:
- job_name: 'node'
static_configs:
- targets: ['localhost:9100']Starte Prometheus neu:
sudo systemctl restart prometheusBackup und Wiederherstellung
Erstelle ein Backup-Skript:
sudo nano /usr/local/bin/vpn-backup.shFüge folgenden Inhalt hinzu:
#!/bin/bash
BACKUP_DIR="/root/vpn-backups"
DATE=$(date +%Y-%m-%d)
mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/vpnserver-$DATE.tar.gz /usr/local/vpnserverMache das Skript ausführbar:
sudo chmod +x /usr/local/bin/vpn-backup.shFüge einen Cron-Job für tägliche Backups hinzu:
sudo crontab -eFüge folgende Zeile hinzu:
0 2 * * * /usr/local/bin/vpn-backup.shMulti-Faktor-Authentifizierung einrichten
Installiere das Google Authenticator PAM-Modul:
sudo apt install libpam-google-authenticator -yKonfiguriere PAM für SSH:
sudo nano /etc/pam.d/sshdFüge folgende Zeile hinzu:
auth required pam_google_authenticator.soAktiviere die Herausforderungs-Antwort-Authentifizierung in der SSH-Konfiguration:
sudo nano /etc/ssh/sshd_configÄndere oder füge folgende Zeile hinzu:
ChallengeResponseAuthentication yesStarte den SSH-Dienst neu:
sudo systemctl restart sshdClient-Konfiguration
Windows-Client:
- Lade den SoftEther VPN Client für Windows herunter.
- Installiere den Client und starte ihn.
- Klicke auf „Add VPN Connection“.
- Gib die Serveradresse, den Benutzernamen und das Passwort ein.
- Klicke auf „Connect“.
macOS-Client:
- Lade den SoftEther VPN Client für macOS herunter.
- Installiere den Client und starte ihn.
- Klicke auf „Add VPN Connection“.
- Gib die Serveradresse, den Benutzernamen und das Passwort ein.
- Klicke auf „Connect“.
Linux-Client:
Lade den SoftEther VPN Client für Linux herunter.
Entpacke das Archiv und kompiliere den Client:
tar xzvf softether-vpnclient-v4.xx-xxxx-rtm-linux-x64-64bit.tar.gz
cd vpnclient
makeStarte den Client:
./vpnclient startKonfiguriere die Verbindung:
./vpncmdWähle „2“ für neue VPN-Verbindung und folge den Anweisungen.
iOS-Client:
- Öffne die „Einstellungen“ App auf deinem iOS-Gerät.
- Tippe auf „Allgemein“ und dann auf „VPN & Geräteverwaltung“.
- Tippe auf „VPN“ und dann auf „VPN hinzufügen“.
- Wähle „L2TP“ als VPN-Typ aus.
- Gib folgende Informationen ein:
- Beschreibung: Ein Name für deine VPN-Verbindung
- Server: Die IP-Adresse oder der Hostname deines SoftEther VPN-Servers
- Konto: Dein VPN-Benutzername
- RSA SecurID: Lasse dies aus
- Passwort: Dein VPN-Passwort
- Geheimer Schlüssel: Der IPsec Pre-Shared Key, den du auf dem Server konfiguriert hast
- Tippe auf „Fertig“, um die Konfiguration zu speichern.
- Aktiviere den VPN-Schalter in den Einstellungen oder im Kontrollzentrum, um eine Verbindung herzustellen.
Android-Client:
- Öffne die „Einstellungen“ App auf deinem Android-Gerät.
- Tippe auf „Netzwerk & Internet“ und dann auf „VPN“.
- Tippe auf das „+“-Symbol, um ein neues VPN-Profil hinzuzufügen.
- Gib folgende Informationen ein:
- Name: Ein Name für deine VPN-Verbindung
- Typ: Wähle „L2TP/IPSec PSK“
- Serveradresse: Die IP-Adresse oder der Hostname deines SoftEther VPN-Servers
- L2TP-Geheimnis und IPSec-Kennung: Lasse diese Felder leer
- IPSec-Schlüssel vorab: Gib den IPsec Pre-Shared Key ein, den du auf dem Server konfiguriert hast
- Tippe auf „Speichern“, um das Profil zu erstellen.
- Tippe auf das neu erstellte VPN-Profil.
- Gib deinen VPN-Benutzernamen und dein Passwort ein.
- Tippe auf „Verbinden“, um die VPN-Verbindung herzustellen.
Beachte, dass die genauen Schritte je nach Android-Version und Hersteller leicht variieren können.
Abschluss
Du hast nun erfolgreich einen umfassend konfigurierten SoftEther VPN-Server auf Ubuntu 24.04 eingerichtet. Der Server ist jetzt bereit, sichere VPN-Verbindungen von verschiedenen Clients anzunehmen, bietet erweiterte Sicherheitsfunktionen und ist für die Leistung optimiert.
Denke daran, regelmäßig Updates für dein System und den SoftEther VPN-Server durchzuführen, um die Sicherheit zu gewährleisten. Überwache die Leistung und die Logs des Servers mit den eingerichteten Monitoring-Tools, um potenzielle Probleme frühzeitig zu erkennen und zu beheben.
Die implementierte Backup-Strategie gewährleistet eine schnelle Wiederherstellung im Notfall, während die vorgenommenen Performance-Optimierungen eine reibungslose Nutzererfahrung sicherstellen.



