Mit der zunehmenden Zensur des Internets durch autoritäre Regime werden immer mehr nützliche Internetressourcen und -seiten blockiert. Einschließlich technischer Informationen.
Dadurch wird die vollständige Nutzung des Internets unmöglich und es wird gegen das darin verankerte Grundrecht auf freie Meinungsäußerung verstoßen Allgemeine Erklärung der Menschenrechte.
Artikel 19
Jeder hat das Recht auf Meinungs- und Meinungsfreiheit; Dieses Recht umfasst die Freiheit, Meinungen ungehindert zu vertreten und Informationen und Ideen über alle Medien und unabhängig von Grenzen zu suchen, zu empfangen und zu verbreiten
In dieser Anleitung stellen wir unsere eigene Freeware* in 6 Schritten bereit. VPN-Dienst basierend auf Technologie Wireguard, in der Cloud-Infrastruktur Amazon Web Services (AWS) mit einem kostenlosen Konto (für 12 Monate) auf einer Instanz (virtuellen Maschine), die von verwaltet wird Ubuntu-Server 18.04 LTS.
Ich habe versucht, diese exemplarische Vorgehensweise für Nicht-IT-Leute so benutzerfreundlich wie möglich zu gestalten. Das Einzige, was erforderlich ist, ist Ausdauer bei der Wiederholung der unten beschriebenen Schritte.
Beachten
AWS bietet kostenloses Nutzungskontingent für einen Zeitraum von 12 Monaten, mit einem Limit von 15 Gigabyte Datenverkehr pro Monat.
Für die Anmeldung für ein kostenloses AWS-Konto sind eine echte Telefonnummer und eine gültige Kreditkarte von Visa oder Mastercard erforderlich. Ich empfehle die Verwendung virtueller Karten, die kostenlos zur Verfügung gestellt werden Yandex oder QIWI Geldbeutel. Um die Gültigkeit der Karte zu überprüfen, wird bei der Registrierung 1 US-Dollar abgebucht, der später zurückerstattet wird.
1.1. Öffnen der AWS-Managementkonsole
Sie müssen einen Browser öffnen und gehen zu: https://aws.amazon.com/ru/
Klicken Sie auf die Schaltfläche „Registrieren“.
1.2. Ausfüllen persönlicher Daten
Geben Sie die Daten ein und klicken Sie auf die Schaltfläche „Weiter“.
1.3. Kontaktdaten ausfüllen
Geben Sie die Kontaktinformationen ein.
1.4. Zahlungsinformationen angeben.
Kartennummer, Ablaufdatum und Name des Karteninhabers.
1.5. Bestätigung des Kontos
Zu diesem Zeitpunkt wird die Telefonnummer bestätigt und 1 US-Dollar wird direkt von der Zahlungskarte abgebucht. Auf dem Computerbildschirm wird ein 4-stelliger Code angezeigt und das angegebene Telefon erhält einen Anruf von Amazon. Während eines Anrufs müssen Sie den auf dem Bildschirm angezeigten Code wählen.
1.6. Wahl des Tarifplans.
Wählen Sie – Basisplan (kostenlos)
1.7. Melden Sie sich bei der Verwaltungskonsole an
1.8. Auswahl des Standorts des Rechenzentrums
1.8.1. Geschwindigkeitstest
Bevor Sie sich für ein Rechenzentrum entscheiden, empfiehlt es sich, es zu testen https://speedtest.net Geschwindigkeit des Zugriffs auf die nächstgelegenen Rechenzentren, an meinem Standort ergibt sich folgendes:
Singapur
Paris
Frankfurt
Stockholm
London
Das Rechenzentrum in London weist hinsichtlich der Geschwindigkeit die besten Ergebnisse auf. Deshalb habe ich es zur weiteren Anpassung ausgewählt.
2. Erstellen Sie eine AWS-Instanz
2.1 Erstellen Sie eine virtuelle Maschine
2.1.1. Auswählen eines Instanztyps
Standardmäßig ist die t2.micro-Instanz ausgewählt, was wir brauchen, drücken Sie einfach die Taste Als nächstes: Instanzdetails konfigurieren
2.1.2. Instanzoptionen festlegen
In Zukunft werden wir eine permanente öffentliche IP-Adresse mit unserer Instanz verbinden. Daher deaktivieren wir zu diesem Zeitpunkt die automatische Zuweisung einer öffentlichen IP-Adresse und klicken auf die Schaltfläche Als nächstes: Speicher hinzufügen
2.1.3. Speicheranbindung
Geben Sie die Größe der „Festplatte“ an. Für unsere Zwecke reichen 16 Gigabyte, und wir drücken den Knopf Weiter: Tags hinzufügen
2.1.4. Tags einrichten
Wenn wir mehrere Instanzen erstellen würden, könnten diese nach Tags gruppiert werden, um die Verwaltung zu erleichtern. In diesem Fall ist diese Funktionalität überflüssig, drücken Sie sofort die Taste Als nächstes: Sicherheitsgruppe konfigurieren
2.1.5. Ports öffnen
In diesem Schritt konfigurieren wir die Firewall, indem wir die erforderlichen Ports öffnen. Der Satz offener Ports wird als Sicherheitsgruppe bezeichnet. Wir müssen eine neue Sicherheitsgruppe erstellen, ihr einen Namen und eine Beschreibung geben, einen UDP-Port (benutzerdefinierte UDP-Regel) hinzufügen und im Feld Rort Range eine Portnummer aus dem Bereich zuweisen dynamische Ports 49152-65535. In diesem Fall habe ich die Portnummer 54321 gewählt.
Nachdem Sie die erforderlichen Daten eingegeben haben, klicken Sie auf die Schaltfläche Überprüfen und starten
2.1.6. Übersicht aller Einstellungen
Auf dieser Seite gibt es eine Übersicht aller Einstellungen unserer Instanz, wir prüfen, ob alle Einstellungen in Ordnung sind, und drücken den Button Einführung
2.1.7. Zugriffsschlüssel erstellen
Als nächstes erscheint ein Dialogfeld, in dem Sie aufgefordert werden, entweder einen SSH-Schlüssel zu erstellen oder einen vorhandenen hinzuzufügen, mit dem wir später eine Remote-Verbindung zu unserer Instanz herstellen. Wir wählen die Option „Neues Schlüsselpaar erstellen“, um einen neuen Schlüssel zu erstellen. Geben Sie ihm einen Namen und klicken Sie auf die Schaltfläche Laden Sie das Schlüsselpaar herunterum die generierten Schlüssel herunterzuladen. Speichern Sie sie an einem sicheren Ort auf Ihrem lokalen Computer. Klicken Sie nach dem Herunterladen auf die Schaltfläche. Instanzen starten
2.1.7.1. Zugriffsschlüssel speichern
Hier wird der Schritt zum Speichern der generierten Schlüssel aus dem vorherigen Schritt gezeigt. Nachdem wir den Knopf gedrückt hatten Laden Sie das Schlüsselpaar herunter, wird der Schlüssel als Zertifikatdatei mit der Erweiterung *.pem gespeichert. In diesem Fall habe ich ihm einen Namen gegeben Wireguard-awskey.pem
2.1.8. Übersicht über die Ergebnisse der Instanzerstellung
Als nächstes sehen wir eine Meldung über den erfolgreichen Start der gerade erstellten Instanz. Mit einem Klick auf den Button gelangen wir zur Liste unserer Instanzen Instanzen ansehen
2.2. Erstellen einer externen IP-Adresse
2.2.1. Beginn der Erstellung einer externen IP
Als nächstes müssen wir eine permanente externe IP-Adresse erstellen, über die wir uns mit unserem VPN-Server verbinden. Wählen Sie dazu im Navigationsbereich auf der linken Seite des Bildschirms das Element aus Elastische IPs aus der Kategorie NETZWERK & SICHERHEIT und drücke die Taste Neue Adresse vergeben
2.2.2. Konfigurieren der Erstellung einer externen IP
Im nächsten Schritt müssen wir die Option aktivieren Amazon-Pools (standardmäßig aktiviert) und klicken Sie auf die Schaltfläche Zuweisen
2.2.3. Übersicht über die Ergebnisse der Erstellung einer externen IP-Adresse
Auf dem nächsten Bildschirm wird die externe IP-Adresse angezeigt, die wir erhalten haben. Es empfiehlt sich, es auswendig zu lernen, besser sogar aufzuschreiben. Es wird sich bei der weiteren Einrichtung und Nutzung des VPN-Servers mehr als einmal als nützlich erweisen. In dieser Anleitung verwende ich die IP-Adresse als Beispiel. 4.3.2.1. Nachdem Sie die Adresse eingegeben haben, drücken Sie die Taste Menu
2.2.4. Liste externer IP-Adressen
Als nächstes wird uns eine Liste unserer permanenten öffentlichen IP-Adressen (Elastics IP) angezeigt.
2.2.5. Einer Instanz eine externe IP zuweisen
In dieser Liste wählen wir die IP-Adresse aus, die wir erhalten haben, und drücken die rechte Maustaste, um ein Dropdown-Menü aufzurufen. Wählen Sie darin das Element aus assoziierte Adresseum es der zuvor erstellten Instanz zuzuweisen.
2.2.6. Einstellung der externen IP-Zuweisung
Wählen Sie im nächsten Schritt unsere Instanz aus der Dropdown-Liste aus und klicken Sie auf die Schaltfläche Partnerschaftsräte
2.2.7. Übersicht über die Ergebnisse der externen IP-Zuweisung
Danach können wir sehen, dass unsere Instanz und ihre private IP-Adresse an unsere permanente öffentliche IP-Adresse gebunden sind.
Jetzt können wir uns von außen, von unserem Computer aus, über SSH mit unserer neu erstellten Instanz verbinden.
3. Stellen Sie eine Verbindung zu einer AWS-Instanz her
SSH ist ein sicheres Protokoll zur Fernsteuerung von Computergeräten.
3.1. Verbindung über SSH von einem Windows-Computer aus
Um eine Verbindung zu einem Windows-Computer herzustellen, müssen Sie zunächst das Programm herunterladen und installieren Kitt.
3.1.1. Privaten Schlüssel für Putty importieren
3.1.1.1. Nach der Installation von Putty müssen Sie das mitgelieferte Dienstprogramm PuTTYgen ausführen, um den Zertifikatsschlüssel im PEM-Format in ein für die Verwendung in Putty geeignetes Format zu importieren. Wählen Sie dazu den Eintrag im oberen Menü aus Konvertierungen -> Schlüssel importieren
3.1.1.2. Auswählen eines AWS-Schlüssels im PEM-Format
Wählen Sie als Nächstes den Schlüssel aus, den wir zuvor in Schritt 2.1.7.1 gespeichert haben, in unserem Fall seinen Namen Wireguard-awskey.pem
3.1.1.3. Festlegen wichtiger Importoptionen
In diesem Schritt müssen wir einen Kommentar für diesen Schlüssel (Beschreibung) angeben und aus Sicherheitsgründen ein Passwort und eine Bestätigung festlegen. Es wird jedes Mal abgefragt, wenn Sie eine Verbindung herstellen. Daher schützen wir den Schlüssel mit einem Passwort vor missbräuchlicher Verwendung. Sie müssen kein Passwort festlegen, es ist jedoch weniger sicher, wenn der Schlüssel in die falschen Hände gerät. Nachdem wir den Knopf gedrückt haben Privaten Schlüssel speichern
3.1.1.4. Speichern eines importierten Schlüssels
Es öffnet sich ein Dialog zum Speichern der Datei und wir speichern unseren privaten Schlüssel als Datei mit der Erweiterung .ppkzur Verwendung im Programm geeignet Kitt.
Geben Sie den Namen des Schlüssels an (in unserem Fall wireguard-awskey.ppk) und drücken Sie die Taste Sparen.
3.1.2. Erstellen und Konfigurieren einer Verbindung in Putty
3.1.2.1. Stellen Sie eine Verbindung her
Öffnen Sie das Putty-Programm und wählen Sie eine Kategorie aus Session (es ist standardmäßig geöffnet) und im Feld Host-Name Geben Sie die öffentliche IP-Adresse unseres Servers ein, die wir in Schritt 2.2.3 erhalten haben. Auf dem Feld Gespeicherte Sitzung Geben Sie einen beliebigen Namen für unsere Verbindung ein (in meinem Fall Wireguard-aws-London) und drücken Sie dann die Taste Speichern um die von uns vorgenommenen Änderungen zu speichern.
3.1.2.2. Einrichten der automatischen Benutzeranmeldung
Mehr in der Kategorie Sichere, wählen Sie eine Unterkategorie Datum und im Feld Benutzername für die automatische Anmeldung Geben Sie den Benutzernamen ein ubuntu ist der Standardbenutzer der Instanz auf AWS mit Ubuntu.
3.1.2.3. Auswahl eines privaten Schlüssels für die Verbindung über SSH
Gehen Sie dann zur Unterkategorie Verbindung/SSH/Auth und neben dem Feld Private Schlüsseldatei zur Authentifizierung Drücken Sie den Knopf Suche… um eine Datei mit einem Schlüsselzertifikat auszuwählen.
3.1.2.4. Öffnen eines importierten Schlüssels
Geben Sie den Schlüssel an, den wir zuvor in Schritt 3.1.1.4 importiert haben. In unserem Fall handelt es sich um eine Datei Wireguard-awskey.ppk, und drücken Sie die Taste offen.
3.1.2.5. Einstellungen speichern und Verbindung herstellen
Zurück zur Kategorieseite Session drücken Sie die Taste erneut Speichern, um die Änderungen zu speichern, die wir zuvor in den vorherigen Schritten (3.1.2.2 – 3.1.2.4) vorgenommen haben. Und dann drücken wir den Knopf Offen um die von uns erstellte und konfigurierte Remote-SSH-Verbindung zu öffnen.
3.1.2.7. Vertrauen zwischen Hosts einrichten
Im nächsten Schritt, wenn wir zum ersten Mal versuchen, eine Verbindung herzustellen, erhalten wir eine Warnung, dass zwischen den beiden Computern kein Vertrauen konfiguriert ist, und werden gefragt, ob wir dem Remotecomputer vertrauen sollen. Wir werden den Knopf drücken Ja, wodurch es zur Liste der vertrauenswürdigen Hosts hinzugefügt wird.
3.1.2.8. Geben Sie ein Passwort ein, um auf den Schlüssel zuzugreifen
Danach öffnet sich ein Terminalfenster, in dem Sie nach dem Passwort für den Schlüssel gefragt werden, sofern Sie diesen zuvor bei Schritt 3.1.1.3 festgelegt haben. Bei der Eingabe eines Passwortes erfolgt keine Aktion auf dem Bildschirm. Wenn Sie einen Fehler machen, können Sie den Schlüssel verwenden Rücktaste.
3.1.2.9. Willkommensnachricht bei erfolgreicher Verbindung
Nach erfolgreicher Passworteingabe wird uns im Terminal ein Willkommenstext angezeigt, der uns mitteilt, dass das Remote-System bereit ist, unsere Befehle auszuführen.
4. Konfigurieren des Wireguard-Servers
Die aktuellsten Anweisungen zur Installation und Verwendung von Wireguard mithilfe der unten beschriebenen Skripte finden Sie im Repository: https://github.com/isystem-io/wireguard-aws
4.1. WireGuard installieren
Geben Sie im Terminal die folgenden Befehle ein (Sie können sie in die Zwischenablage kopieren und durch Drücken der rechten Maustaste im Terminal einfügen):
4.1.1. Klonen eines Repositorys
Klonen Sie das Repository mit den Wireguard-Installationsskripten
4.1.2. Wechseln Sie in das Verzeichnis mit Skripten
Gehen Sie in das Verzeichnis mit dem geklonten Repository
cd wireguard_aws
4.1.3 Ausführen des Initialisierungsskripts
Führen Sie als Administrator (Root-Benutzer) das Wireguard-Installationsskript aus
sudo ./initial.sh
Während des Installationsvorgangs werden bestimmte Daten abgefragt, die zur Konfiguration von Wireguard erforderlich sind
4.1.3.1. Anschlusspunkteingang
Geben Sie die externe IP-Adresse und den offenen Port des Wireguard-Servers ein. Wir haben die externe IP-Adresse des Servers in Schritt 2.2.3 erhalten und den Port in Schritt 2.1.5 geöffnet. Wir geben sie zusammen an und trennen sie beispielsweise durch einen Doppelpunkt 4.3.2.1:54321und drücken Sie dann die Taste Enter Beispielausgabe:
Enter the endpoint (external ip and port) in format [ipv4:port] (e.g. 4.3.2.1:54321): 4.3.2.1:54321
4.1.3.2. Eingabe der internen IP-Adresse
Geben Sie die IP-Adresse des Wireguard-Servers im sicheren VPN-Subnetz ein. Wenn Sie diese nicht kennen, drücken Sie einfach die Eingabetaste, um den Standardwert festzulegen (10.50.0.1) Beispielausgabe:
Enter the server address in the VPN subnet (CIDR format) ([ENTER] set to default: 10.50.0.1):
4.1.3.3. Angeben eines DNS-Servers
Geben Sie die IP-Adresse des DNS-Servers ein oder drücken Sie einfach die Eingabetaste, um den Standardwert festzulegen 1.1.1.1 (Öffentliches Cloudflare-DNS) Beispielausgabe:
Enter the ip address of the server DNS (CIDR format) ([ENTER] set to default: 1.1.1.1):
4.1.3.4. Angabe der WAN-Schnittstelle
Als Nächstes müssen Sie den Namen der externen Netzwerkschnittstelle eingeben, die auf der internen VPN-Netzwerkschnittstelle lauscht. Drücken Sie einfach die Eingabetaste, um den Standardwert für AWS festzulegen (eth0) Beispielausgabe:
Enter the name of the WAN network interface ([ENTER] set to default: eth0):
4.1.3.5. Angabe des Kundennamens
Geben Sie den Namen des VPN-Benutzers ein. Tatsache ist, dass der Wireguard VPN-Server erst gestartet werden kann, wenn mindestens ein Client hinzugefügt wurde. In diesem Fall habe ich den Namen eingegeben Alex@mobile Beispielausgabe:
Enter VPN user name: Alex@mobile
Danach sollte auf dem Bildschirm ein QR-Code mit der Konfiguration des neu hinzugefügten Clients angezeigt werden, der zur Konfiguration mit dem Wireguard Mobile Client auf Android oder iOS gelesen werden muss. Und auch unterhalb des QR-Codes wird bei manueller Konfiguration von Clients der Text der Konfigurationsdatei angezeigt. Wie das geht, wird weiter unten besprochen.
4.2. Hinzufügen eines neuen VPN-Benutzers
Um einen neuen Benutzer hinzuzufügen, müssen Sie das Skript im Terminal ausführen add-client.sh
sudo ./add-client.sh
Das Skript fragt nach einem Benutzernamen: Beispielausgabe:
Enter VPN user name:
Außerdem kann der Name des Benutzers als Skriptparameter übergeben werden (in diesem Fall). Alex@mobile):
sudo ./add-client.sh Alex@mobile
Als Ergebnis der Skriptausführung im Verzeichnis mit dem Namen des Clients im Pfad /etc/wireguard/clients/{ИмяКлиента} Es wird eine Client-Konfigurationsdatei erstellt /etc/wireguard/clients/{ИмяКлиента}/{ИмяКлиента}.conf, und auf dem Terminalbildschirm werden ein QR-Code zum Einrichten mobiler Clients und der Inhalt der Konfigurationsdatei angezeigt.
4.2.1. Benutzerkonfigurationsdatei
Mit dem Befehl können Sie den Inhalt der .conf-Datei zur manuellen Konfiguration des Clients auf dem Bildschirm anzeigen cat
[Interface]
PrivateKey = Приватный ключ клиента
Address = IP адрес клиента
DNS = ДНС используемый клиентом
[Peer]
PublicKey = Публичный ключ сервера
PresharedKey = Общи ключ сервера и клиента
AllowedIPs = Разрешенные адреса для подключения (все - 0.0.0.0/0, ::/0)
Endpoint = IP адрес и порт для подключения
4.2.2. QR-Code zur Client-Konfiguration
Mit dem Befehl können Sie einen Konfigurations-QR-Code für einen zuvor erstellten Client auf dem Terminalbildschirm anzeigen qrencode -t ansiutf8 (In diesem Beispiel wird ein Client namens Alex@mobile verwendet):
Danach müssen Sie die Konfiguration importieren, indem Sie den QR-Code mit der Client-Konfiguration lesen (siehe Abschnitt 4.2.2) und ihr einen Namen geben:
Nach erfolgreichem Import der Konfiguration können Sie den VPN-Tunnel aktivieren. Eine erfolgreiche Verbindung wird durch einen Schlüsselspeicher in der Android-Taskleiste angezeigt
5.2. Windows-Client-Setup
Zuerst müssen Sie das Programm herunterladen und installieren TunSafe für Windows ist der Wireguard-Client für Windows.
5.2.1. Erstellen einer Importkonfigurationsdatei
Klicken Sie mit der rechten Maustaste, um eine Textdatei auf dem Desktop zu erstellen.
5.2.2. Kopieren Sie den Inhalt der Konfigurationsdatei vom Server
Anschließend kehren wir zum Putty-Terminal zurück und zeigen den Inhalt der Konfigurationsdatei des gewünschten Benutzers an, wie in Schritt 4.2.1 beschrieben.
Klicken Sie anschließend mit der rechten Maustaste auf den Konfigurationstext im Putty-Terminal. Nach Abschluss der Auswahl wird dieser automatisch in die Zwischenablage kopiert.
5.2.3. Kopieren der Konfiguration in eine lokale Konfigurationsdatei
In diesem Feld kehren wir zu der Textdatei zurück, die wir zuvor auf dem Desktop erstellt haben, und fügen den Konfigurationstext aus der Zwischenablage hinein.
5.2.4. Speichern einer lokalen Konfigurationsdatei
Speichern Sie die Datei mit der Erweiterung .conf (in diesem Fall benannt london.conf)
5.2.5. Importieren einer lokalen Konfigurationsdatei
Als nächstes müssen Sie die Konfigurationsdatei in das TunSafe-Programm importieren.
5.2.6. Einrichten einer VPN-Verbindung
Wählen Sie diese Konfigurationsdatei aus und verbinden Sie sich durch Klicken auf die Schaltfläche Vernetz Dich.
6. Überprüfen, ob die Verbindung erfolgreich war
Um den Erfolg der Verbindung über den VPN-Tunnel zu überprüfen, müssen Sie einen Browser öffnen und die Website aufrufen https://2ip.ua/ru/
Die angezeigte IP-Adresse muss mit der übereinstimmen, die wir in Schritt 2.2.3 erhalten haben.
Wenn ja, dann funktioniert der VPN-Tunnel erfolgreich.
Vom Linux-Terminal aus können Sie Ihre IP-Adresse überprüfen, indem Sie Folgendes eingeben:
curl http://zx2c4.com/ip
Oder Sie können einfach zu Pornhub gehen, wenn Sie in Kasachstan sind.