In diesem Artikel führen wir Sie durch die Einrichtung eines privaten VPN-Servers und die Verbindungsherstellung von einem Android- oder iOS-Gerät aus. Das geht ganz einfach: Er dauert nur 10–15 Minuten und erfordert keine Kenntnisse in der Serververwaltung. Befolgen Sie die unten aufgeführten Schritte und Sie haben in wenigen Minuten ein persönliches VPN eingerichtet.
Ein privater VPN-Server gewährleistet Ihren Datenschutz und Ihre Datensicherheit bei der Nutzung von Instagram oder anderen Online-Diensten. In diesem Tutorial stellen wir einen Gcore VDS als Server für das VPN bereit. Dabei handelt es sich um einen kostengünstigen virtuellen Server, der sich zum Hosten einfacher Anwendungen mit geringen Anforderungen wie beispielsweise ein VPN eignet.
Warum ein privates VPN besser ist als ein öffentliches VPN
Öffentliche VPN-Server mögen vielleicht als eine kostengünstige Lösung zum Schutz Ihrer Internetverbindung erscheinen. Sie bringen jedoch oftmals mehrere Einschränkungen mit sich:
- Schwacher Datenschutz: Öffentliche VPN-Server sind berüchtigt für die Protokollierung von Benutzerdaten und Datenlecks — siehe beispielsweise die Offenlegung von Ivanti Pulse Secure VPN und die Datenlecks von drei Android-VPN-Diensten. Mit Ihrem privaten VPN-Server haben Sie die volle Kontrolle über Ihre Daten und können sicherstellen, dass diese nicht protokolliert werden oder verloren gehen.
- Niedrige Verschlüsselungsstufe: Öffentliche VPN-Server veröffentlichen ihre VPN-Konfiguration möglicherweise nicht, was bedeutet, dass Benutzer nicht überprüfen können, wie stark ihre Verschlüsselung ist. Bei einem privaten VPN-Server können Sie die Verschlüsselungsstufe wählen, die Sie zum Schutz Ihrer Verbindung benötigen.
- Schlechte Leistung: Öffentliche VPNs teilen sich die physischen Serverressourcen unter den Kunden. Dies ist häufig der Fall, wenn Dutzende oder Hunderte von Personen gleichzeitig einen Server nutzen. Aus diesem Grund ist die Leistung öffentlicher VPNs nicht immer ausreichend, was vor allem die Geschwindigkeit betrifft. Bei einem privaten VPN-Server gehören alle Ressourcen des Servers Ihnen. Dadurch erhalten Sie eine bessere Leistung und eine schnellere Verbindung.
So richten Sie einen privaten VPN-Server ein
Nachdem Sie nun mit den Vorteilen eines privaten VPN-Servers vertraut sind, beginnen wir mit der Bestellung und Einrichtung.
Schritt 1. Einen Server bestellen
Zunächst müssen Sie einen Server mit einem Linux-basierten Betriebssystem bestellen (Ubuntu 18.04).
- Gehen Sie zur Seite Virtuelle Server und blättern Sie nach unten zum Konfigurator für virtuelle Server. Wählen Sie den bevorzugten Standort des Rechenzentrums und andere Parameter Ihres Servers.
Verwenden Sie die in Abbildung 1 gezeigten Parameter.
Beachten Sie, dass das Rechenzentrum, das Ihrem Standort am nächsten liegt, hinsichtlich der Latenz die bessere Wahl ist. Allerdings sind einige der Gcore-Standorte günstiger als andere, und das nächstgelegene Rechenzentrum ist möglicherweise nicht das günstigste.
- Blättern Sie nach unten und klicken Sie auf Kaufen.
- Sie sehen das VM Manager-Panel und den Server, den Sie im vorherigen Schritt konfiguriert haben.
Wenn Sie noch kein Gcore-Hosting-Konto haben, sehen Sie jetzt das Registrierungsformular zur Anmeldung. Fahren Sie mit der Erstellung Ihres Kontos fort. Finden Sie dann Ihre Serverbestellung unter Hosting Control Panel > Produkte/Dienste> Virtuelle private Server.
Auf der Bestellseite (siehe Abbildung 3) bleiben alle Felder unverändert. Stellen Sie aber unbedingt sicher, dass Sie Ubuntu 18.04 ausgewählt haben.
Klicken Sie auf In den Warenkorb und kaufen Sie den Server dann mit einer für Sie komfortablen Zahlungsart: Bankkarte, PayPal oder auf andere Weise. Nach der Zahlung wird Ihr Server automatisch aktiviert. Das kann bis zu 20 Minuten dauern.
Schritt 2. Über SSH eine Verbindung zu Ihrem Server herstellen
Um über SSH eine Remoteverbindung zum Server herzustellen, müssen Sie ein Terminal auf Ihrem lokalen Computer verwenden. Gehen Sie dafür folgendermaßen vor:
- Gehen Sie im Hosting Control Panel zu Produkte/Dienste > Virtuelle private Server.
- Klicken Sie auf Ihren Server und dann auf Anleitung (siehe Abbildung 4.)
- Sie sehen die Registerkarte mit der Anleitung. Hier finden Sie die Server-IP-Adresse, den Benutzernamen und das Passwort (siehe Abbildung 5). Sie benötigen diese Daten, um diesen Vorgang fortzusetzen.
- Öffnen Sie auf Ihrem Computer ein Terminal (für Linux und macOS) oder eine Befehlszeile (für Windows) und geben Sie den folgenden Befehl ein:
ssh [username]@[server IP]
Wenn die Anleitung beispielsweise „Server-IP-Adresse: 185.14.67.190“ und „Benutzer: Root“ anzeigt, lautet der Befehl:
- Die Verbindung fordert Sie zur Eingabe eines Passwortes auf. Geben Sie das Passwort ein oder fügen Sie das kopierte Passwort ein, und drücken Sie dann die Eingabetaste. Das Ergebnis sieht dann in etwa so aus:
Welcome to Ubuntu 18.04.6 LTS (GNU/Linux 4.15.0-208-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage * Introducing Expanded Security Maintenance for Applications. Receive updates to over 25,000 software packages with your Ubuntu Pro subscription. Free for personal use. https://ubuntu.com/pro Last login: Wed Mar 29 13:49:22 2023 root@joan:~#
Das bedeutet, die Verbindung wurde hergestellt und der virtuelle Server kann verwaltet werden.
Schritt 3. Benutzername und Passwort festlegen
Zuerst müssen Sie den Benutzernamen und das Passwort für den VPN-Server festlegen. Diese Angaben werden für den Zugriff und die Verbindung zum VPN-Server verwendet, nachdem der Konfigurationsprozess (Schritt 4) abgeschlossen ist. Bitte beachten Sie, dass dieses Passwort nicht mit dem Stammpasswort für den Ubuntu-Server identisch ist. Hier müssen Sie Ihren eigenen Benutzernamen und Ihr eigenes Passwort erstellen.
Stellen Sie sicher, dass Ihr Benutzername und Ihr Passwort keine Sonderzeichen wie „*“, „$“, „#“, „^“ usw. enthalten. Verwenden Sie nur Buchstaben (AbcDef usw.) und Zahlen (01234 usw.). Für Ihr Passwort empfehlen wir die Verwendung von mindestens zwölf Symbolen, um es stärker und sicherer zu machen.
Beispiel:
echo 'MY_USERNAME=myvpn' | sudo tee -a ~/.bashrc
echo 'MY_PASSWORD=sdsbUInns40x' | sudo tee -a ~/.bashrc
Hier ist der Benutzername myvpn und das Passwort lautet sdsbUInns40x.
Schritt 4. VPN-Server konfigurieren
Wenn Sie mit dem Einrichten eines VPN-Servers oder der Verwendung der Linux-Shell nicht vertraut sind, empfehlen wir Ihnen, nach der Eingabe eines Befehls die Eingabetaste auf Ihrer Tastatur zu drücken. Dadurch wird sichergestellt, dass die Befehle ordnungsgemäß ausgeführt werden.
- Um sicherzustellen, dass Ihr Betriebssystem über die neuesten Sicherheitspatches und Fehlerbehebungen verfügt, aktualisieren Sie die Linux-Pakete auf Ihrem Server. Führen Sie im Terminal den folgenden Befehl aus:
sudo apt-get update && sudo apt-get upgrade -y
- Sie müssen jetzt zwei Installationen durchführen:
- strongSwan, eine Open-Source-IPSec-Lösung (Internet Protocol Security), die die Grundlage Ihres VPN-Servers bildet
- Das PKI-Paket (Public Key Infrastructure) zur Aktivierung einer Zertifizierungsstelle (CA), die Anmeldedaten für den Server und Ihr Gerät bereitstellt
Verwenden Sie den folgenden Befehl, um beide zu installieren:
sudo apt install strongswan strongswan-pki -y
- Erstellen Sie in Ihrem Basisordner eine Verzeichnisstruktur, in der Ihre VPN-Zertifikate und privaten Schlüssel gespeichert werden:
mkdir -p ~/pki/{cacerts,certs,private}
- Legen Sie die Berechtigungen für dieses Verzeichnis fest, um sicherzustellen, dass nur Sie darauf zugreifen können:
chmod 700 ~/pki
- Legen Sie den Namen der Netzwerkschnittstelle und die IP-Adresse fest, die Ihr Server für die VPN-Verbindung verwenden soll. Diese Befehle übernehmen die IP-Adresse Ihres Servers aus den Anweisungen, sodass Sie sie nicht selbst eingeben müssen:
echo 'INTERFACE_NAME="ens3"' | sudo tee -a ~/.bashrc echo "VPN_IP_ADDRESS=$(ip addr show dev "$INTERFACE_NAME" | awk '$1 == "inet" {gsub(/\/.*$/, "", $2); print $2}')" | sudo tee -a ~/.bashrc source ~/.bashrc
- Generieren Sie einen privaten Schlüssel für Ihre VPN-Stamm-CA und speichern Sie ihn in einer Datei in Ihrem Zertifikatsverzeichnis:
ipsec pki --gen --type rsa --size 4096 --outform pem > ~/pki/private/ca-key.pem
- Generieren Sie ein selbstsigniertes Root-CA-Zertifikat mit dem soeben generierten privaten Schlüssel und speichern Sie das CA-Zertifikat als Datei in Ihrem Zertifikatsverzeichnis:
ipsec pki --self --ca --lifetime 3650 --in ~/pki/private/ca-key.pem \ --type rsa --dn "CN=VPN root CA" --outform pem > ~/pki/cacerts/vpn-cert-ca.pem
Dieses Zertifikat ist 10 Jahre gültig.
- Generieren Sie einen privaten Schlüssel für Ihren VPN-Server und speichern Sie ihn als Datei in Ihrem Zertifikatsverzeichnis:
ipsec pki --gen --type rsa --size 4096 --outform pem > ~/pki/private/server-key.pem
- Generieren Sie mit dem soeben erstellten privaten Schlüssel ein signiertes Serverzertifikat und speichern Sie es als Datei in Ihrem Zertifikatsverzeichnis.
ipsec pki --pub --in ~/pki/private/server-key.pem --type rsa | ipsec pki --issue --lifetime 1825 \ --cacert ~/pki/cacerts/vpn-cert-ca.pem \ --cakey ~/pki/private/ca-key.pem \ --dn "CN=$VPN_IP_ADDRESS" --san "$VPN_IP_ADDRESS" \ --flag serverAuth --flag ikeIntermediate --outform pem > ~/pki/certs/server-cert.pem
Dieses Zertifikat ist 5 Jahre lang gültig.
- Kopieren Sie Ihr Zertifikatsverzeichnis in das strongSwan-Konfigurationsverzeichnis:
sudo cp -r ~/pki/* /etc/ipsec.d/
- Benennen Sie die Standardkonfigurationsdatei in eine Sicherungsdatei um:
sudo mv /etc/ipsec.conf{,.original}
- Geben Sie an, dass Sie keine eindeutigen Debug-Optionen benötigen, konfigurieren Sie die Verbindung mithilfe des IKEv2-Protokolls und richten Sie die Parameter für den Tunnel ein:
echo "config setup charondebug="ike 1, knl 1, cfg 0" uniqueids=no conn ikev2-vpn auto=add compress=no type=tunnel keyexchange=ikev2 fragmentation=yes forceencaps=yes dpdaction=clear dpddelay=300s rekey=no left=%any leftid=$VPN_IP_ADDRESS leftcert=server-cert.pem leftsendcert=always leftsubnet=0.0.0.0/0 right=%any rightid=%any rightauth=eap-mschapv2 rightsourceip=10.123.45.0/24 rightdns=95.85.95.85,2.56.220.2 rightsendcert=never eap_identity=%identity" > /etc/ipsec.conf
- Richten Sie die geheime IPsec-Datei mit dem Benutzernamen und dem Passwort ein, um das Client-Gerät zu authentifizieren:
echo ": RSA "server-key.pem" $MY_USERNAME : EAP "$MY_PASSWORD" " > /etc/ipsec.secrets
- Konfigurieren Sie die Firewall. Sie müssen den SSH-Datenverkehr in der Firewall freigeben und die erforderlichen Ports für den IPsec-Datenverkehr aktivieren. Führen Sie diese Befehle nacheinander aus:
sudo ufw enable
sudo ufw allow OpenSSH
sudo ufw allow 500,4500/udp
- Damit Ihr Gerät eine Verbindung zum Server herstellen kann, konfigurieren Sie die NAT-Regeln für den IPsec-Datenverkehr:
sed -i "\|^#\s*ufw-before-forward$|a\\ *nat\\ -A POSTROUTING -s 10.123.45.0/24 -o $INTERFACE_NAME -m policy --pol ipsec --dir out -j ACCEPT\n\ -A POSTROUTING -s 10.123.45.0/24 -o $INTERFACE_NAME -j MASQUERADE\n\ COMMIT\n\ \n\ *mangle\n\ -A FORWARD --match policy --pol ipsec --dir in -s 10.123.45.0/24 -o $INTERFACE_NAME -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1361:1536 -j TCPMSS --set-mss 1360\n\ COMMIT" /etc/ufw/before.rules
- Fügen Sie zusätzliche Firewall-Regeln hinzu, um den IPsec-Datenverkehr in der Firewall freizugeben:
sed -i "\|^#\s*End\srequired\slines$|a\\ -A ufw-before-forward --match policy --pol ipsec --dir in --proto esp -s 10.123.45.0/24 -j ACCEPT\\ -A ufw-before-forward --match policy --pol ipsec --dir out --proto esp -d 10.123.45.0/24 -j ACCEPT" /etc/ufw/before.rules
- Verbessern Sie die IPsec-Leistung mit diesem Befehlssatz, der die Systemeinstellungen ändert:
echo "net/ipv4/conf/all/send_redirects=0 net/ipv4/ip_no_pmtu_disc=1 net/ipv4/ip_forward=1 net/ipv4/conf/all/accept_redirects=0" >> /etc/ufw/sysctl.conf
- Um die Änderungen zu übernehmen, beenden und starten Sie die Dienste ufw und strongSwan. Verwenden Sie nacheinander diese Befehle:
sudo ufw disable
sudo ufw enable
sudo systemctl stop strongswan
sudo systemctl start strongswan
Schritt 5. Das CA-Zertifikat auf Ihr Gerät kopieren
Das CA-Stammzertifikat ist für die Aktivierung des VPN-Dienstes zwingend erforderlich. Sie müssen das Zertifikat auf das Gerät kopieren, von dem aus Sie eine Verbindung zum Server herstellen möchten.
- So erhalten Sie den Inhalt des Zertifikats:
cat ~/pki/cacerts/vpn-cert-ca.pem
Die Ausgabe sieht dann in etwa so aus:
-----BEGIN CERTIFICATE----- # We’ll skip the rest of the content for brevity -----END CERTIFICATE-----
- Kopieren Sie den gesamten Inhalt des Zertifikats in der Ausgabe, einschließlich der Zeilen BEGIN und END.
- Erstellen Sie auf Ihrem Computer eine Datei mit der Erweiterung .pem. Beispiel: my-cert.pem.
- Öffnen Sie die Datei, fügen Sie den Inhalt des Zertifikats ein und speichern Sie die Datei. Sie können die Datei an das Gerät senden, von dem aus Sie eine Verbindung zum Server herstellen möchten.
Herzlichen Glückwunsch! Ihr privater VPN-Server ist jetzt eingerichtet.
So stellen Sie von verschiedenen Plattformen aus eine Verbindung zu einem VPN-Server her
Die Art und Weise, wie Sie eine Verbindung zu einem privaten VPN-Server herstellen, hängt von der Art der verwendeten Plattform ab. Wir zeigen Ihnen, wie es mit Android und iOS funktioniert.
Verbindungsherstellung über Android
- Senden Sie die Zertifikatsdatei per E-Mail, über Cloud-Dienste oder auf eine andere Art Ihrer Wahl an Ihr Telefon. Laden Sie sie auf Ihr Telefon herunter.
- Installieren Sie die Anwendung strongSwan VPN Client.
- Öffnen Sie die Anwendung, fügen Sie ein neues VPN-Profil hinzu und geben Sie die IP-Adresse Ihres Servers ein.
- Wählen Sie IKEv2 EAP aus. Geben Sie den Benutzernamen und das Passwort ein, wie zuvor in Schritt 3 (Benutzername und Passwort festlegen) erstellt, und vergeben Sie einen Profilnamen Ihrer Wahl.
- Öffnen Sie das Zertifikat und erlauben Sie das Hinzufügen zur strongSwan VPN-Client-Anwendung.
- Wählen Sie das gerade heruntergeladene Zertifikat aus. Sie sehen diese Benachrichtigung:
Tippen Sie auf Zertifikat importieren.
- Tippen Sie auf das Profil, das Sie gerade in der strongSwan-Anwendung erstellt haben, und Sie werden mit dem VPN verbunden.
Herzlichen Glückwunsch! Sie haben eine Verbindung zu Ihrem privaten VPN-Server hergestellt.
Verbindungsherstellung über iOS
- Senden Sie die Zertifikatsdatei an Ihr iPhone (z.B. per E-Mail oder iCloud).
- Öffnen Sie die Zertifikatsdatei. Es wird die Benachrichtigung „Profil heruntergeladen. Überprüfen Sie das Profil in der App „Einstellungen“, wenn Sie es installieren möchten.“ angezeigt. Tippen Sie auf Schließen.
- Gehen Sie zur App Einstellungen, wählen Sie Allgemein > VPN und Geräteverwaltung > VPN und tippen Sie auf VPN-Stamm-CA. Tippen Sie in der oberen rechten Ecke auf Installieren und akzeptieren Sie die Installation.
- Gehen Sie im Bildschirm VPN und Geräteverwaltung zu VPN und wählen Sie unten auf dem Bildschirm VPN-Konfiguration hinzufügen aus, um auf die VPN-Verbindungskonfiguration zuzugreifen.
- Wählen Sie unter Typ IKEv2 aus.
- Geben Sie im Feld Beschreibung einen Namen für die VPN-Verbindung ein.
- Geben Sie in den Feldern Server und Remote-ID die IP-Adresse des Servers ein. Lassen Sie das Feld Lokale ID leer und Proxy auf „Aus“.
- Geben Sie im Abschnitt Authentifizierung den Benutzernamen und das Passwort ein, wie in Schritt 3 erstellt, und tippen Sie auf Fertig.
- Wählen Sie die gerade erstellte VPN-Verbindung aus, betätigen Sie den Schalter Status oben auf dem Bildschirm und Sie werden mit dem VPN verbunden.
Herzlichen Glückwunsch! Sie haben eine Verbindung zu Ihrem privaten VPN-Server hergestellt.
Fazit
In diesem Tutorial haben wir erklärt, wie man einen privaten VPN-Server mit Gcore VDS einrichtet. Jetzt können Sie von jedem Ort aus sicher auf Instagram und andere Online-Dienste zugreifen und das ohne die Einschränkungen öffentlicher VPN-Server.
Lesen Sie auch unseren Artikel zum Einrichten Ihres privaten VPN-Servers mithilfe einer vorkonfigurierten Gcore Cloud OpenVPN-Instanz: So führen Sie OpenVPN auf Ubuntu Server aus.