Wireguard gratis VPN-service op AWS

Voor wat?

Met de toenemende censuur van internet door autoritaire regimes wordt een toenemend aantal nuttige internetbronnen en -sites geblokkeerd. Inclusief technische informatie.
Het wordt dus onmogelijk om het internet volledig te gebruiken en schendt het fundamentele recht op vrijheid van meningsuiting, verankerd in Universele Verklaring van de Rechten van de Mens.

artikel 19
Een ieder heeft recht op vrijheid van mening en meningsuiting; dit recht omvat de vrijheid om zonder inmenging een mening te koesteren en informatie en ideeën te zoeken, te ontvangen en door te geven via alle media en ongeacht grenzen

In deze gids gaan we onze eigen freeware* in 6 stappen inzetten. VPN-service gebaseerd op technologie Wireguard, in cloudinfrastructuur Amazon Web Services (AWS), met een gratis account (voor 12 maanden), op een instance (virtuele machine) beheerd door Ubuntu-server 18.04 LTS.
Ik heb geprobeerd deze oplossing zo vriendelijk mogelijk te maken voor niet-IT-mensen. Het enige dat nodig is, is doorzettingsvermogen bij het herhalen van de hieronder beschreven stappen.

Noot

stadia

  1. Meld u aan voor een gratis AWS-account
  2. Maak een AWS-instantie
  3. Verbinding maken met een AWS-instantie
  4. Wireguard-configuratie
  5. VPN-clients configureren
  6. Controle van de juistheid van de VPN-installatie

Nuttige links

1. Een AWS-account registreren

Aanmelden voor een gratis AWS-account vereist een echt telefoonnummer en een geldige Visa- of Mastercard-creditcard. Ik raad aan om virtuele kaarten te gebruiken die gratis worden verstrekt Yandex of QIWI Portemonnee. Om de geldigheid van de kaart te controleren, wordt tijdens de registratie $ 1 in mindering gebracht, die later wordt teruggegeven.

1.1. De AWS-beheerconsole openen

U moet een browser openen en naar: https://aws.amazon.com/ru/
Klik op de knop "Registreren".

Wireguard gratis VPN-service op AWS

1.2. Persoonlijke gegevens invullen

Vul de gegevens in en klik op de knop "Doorgaan".

Wireguard gratis VPN-service op AWS

1.3. Contactgegevens invullen

Vul contactgegevens in.

Wireguard gratis VPN-service op AWS

1.4. Betalingsgegevens specificeren.

Kaartnummer, vervaldatum en naam van de kaarthouder.

Wireguard gratis VPN-service op AWS

1.5. Account verificatie

In dit stadium wordt het telefoonnummer bevestigd en wordt $ 1 direct van de betaalkaart afgeschreven. Een 4-cijferige code wordt weergegeven op het computerscherm en de opgegeven telefoon ontvangt een oproep van Amazon. Tijdens een gesprek moet u de code kiezen die op het scherm wordt weergegeven.

Wireguard gratis VPN-service op AWS

1.6. Keuze van tariefplan.

Kies - Basisplan (gratis)

Wireguard gratis VPN-service op AWS

1.7. Log in op de beheerconsole

Wireguard gratis VPN-service op AWS

1.8. De locatie van het datacenter kiezen

Wireguard gratis VPN-service op AWS

1.8.1. Snelheid testen

Alvorens een datacenter te kiezen, is het aan te raden om door te testen https://speedtest.net snelheid van toegang tot de dichtstbijzijnde datacenters, op mijn locatie de volgende resultaten:

  • Singapore
    Wireguard gratis VPN-service op AWS
  • Parijs
    Wireguard gratis VPN-service op AWS
  • Frankfurt
    Wireguard gratis VPN-service op AWS
  • Stockholm
    Wireguard gratis VPN-service op AWS
  • Londen
    Wireguard gratis VPN-service op AWS

Het datacenter in Londen laat qua snelheid de beste resultaten zien. Dus ik koos het voor verdere aanpassing.

2. Maak een AWS-instantie aan

2.1 Maak een virtuele machine

2.1.1. Een instantietype selecteren

Standaard is de instantie t2.micro geselecteerd, wat we nodig hebben, druk gewoon op de knop Volgende: Exemplaardetails configureren

Wireguard gratis VPN-service op AWS

2.1.2. Instantie-opties instellen

In de toekomst zullen we een permanent openbaar IP-adres verbinden met onze instantie, dus in dit stadium schakelen we de automatische toewijzing van een openbaar IP-adres uit en drukken op de knop Volgende: Opslag toevoegen

Wireguard gratis VPN-service op AWS

2.1.3. Opslag verbinding

Geef de grootte van de "harde schijf" op. Voor onze doeleinden is 16 gigabyte voldoende en drukken we op de knop Volgende: Tags toevoegen

Wireguard gratis VPN-service op AWS

2.1.4. Labels instellen

Als we meerdere exemplaren hebben gemaakt, kunnen ze worden gegroepeerd op tags om het beheer te vergemakkelijken. In dit geval is deze functionaliteit overbodig, druk meteen op de knop Volgende: Beveiligingsgroep configureren

Wireguard gratis VPN-service op AWS

2.1.5. Poorten openen

In deze stap configureren we de firewall door de vereiste poorten te openen. De set open poorten wordt de beveiligingsgroep genoemd. We moeten een nieuwe beveiligingsgroep maken, deze een naam en beschrijving geven, een UDP-poort (Custom UDP Rule) toevoegen, in het veld Rort Range een poortnummer toewijzen uit het bereik dynamische poorten 49152-65535. In dit geval heb ik poortnummer 54321 gekozen.

Wireguard gratis VPN-service op AWS

Klik na het invullen van de benodigde gegevens op de button Bekijken en starten

2.1.6. Overzicht van alle instellingen

Op deze pagina staat een overzicht van alle instellingen van onze instantie, we controleren of alle instellingen in orde zijn, en drukken op de knop Lancering

Wireguard gratis VPN-service op AWS

2.1.7. Toegangssleutels maken

Vervolgens komt een dialoogvenster waarin wordt aangeboden om een ​​bestaande SSH-sleutel te maken of toe te voegen, waarmee we later op afstand verbinding zullen maken met onze instantie. We selecteren de optie "Nieuw sleutelpaar maken" om een ​​nieuwe sleutel aan te maken. Geef het een naam en klik op de knop Sleutelpaar downloadenom de gegenereerde sleutels te downloaden. Bewaar ze op een veilige plaats op uw lokale computer. Klik na het downloaden op de knop. Start instanties

Wireguard gratis VPN-service op AWS

2.1.7.1. Toegangssleutels opslaan

Hier wordt de stap weergegeven van het opslaan van de gegenereerde sleutels van de vorige stap. Nadat we op de knop hadden gedrukt Sleutelpaar downloaden, wordt de sleutel opgeslagen als een certificaatbestand met de extensie *.pem. In dit geval heb ik het een naam gegeven wireguard-awskey.pem

Wireguard gratis VPN-service op AWS

2.1.8. Overzicht van resultaten voor het maken van instanties

Vervolgens zien we een bericht over de succesvolle lancering van de instantie die we zojuist hebben gemaakt. We kunnen naar de lijst met onze instanties gaan door op de knop te klikken exemplaren bekijken

Wireguard gratis VPN-service op AWS

2.2. Een extern IP-adres aanmaken

2.2.1. Starten met het aanmaken van een extern IP-adres

Vervolgens moeten we een permanent extern IP-adres aanmaken waarmee we verbinding maken met onze VPN-server. Selecteer hiervoor het item in het navigatiepaneel aan de linkerkant van het scherm Elastische IP's uit categorie NETWERK & BEVEILIGING en druk op de knop Nieuw adres toewijzen

Wireguard gratis VPN-service op AWS

2.2.2. Configureren van het aanmaken van een extern IP

In de volgende stap moeten we de optie inschakelen Amazone zwembaden (standaard ingeschakeld) en klik op de knop Toewijzen

Wireguard gratis VPN-service op AWS

2.2.3. Overzicht van de resultaten van het aanmaken van een extern IP-adres

Het volgende scherm toont het externe IP-adres dat we hebben ontvangen. Het wordt aanbevolen om het uit het hoofd te leren, en het is zelfs beter om het op te schrijven. het zal meer dan eens van pas komen bij het verder instellen en gebruiken van de VPN-server. In deze handleiding gebruik ik het IP-adres als voorbeeld. 4.3.2.1. Nadat u het adres hebt ingevoerd, drukt u op de knop Sluiten

Wireguard gratis VPN-service op AWS

2.2.4. Lijst met externe IP-adressen

Vervolgens krijgen we een lijst te zien met onze permanente openbare IP-adressen (elastics IP).

Wireguard gratis VPN-service op AWS

2.2.5. Een extern IP-adres toewijzen aan een instantie

In deze lijst selecteren we het IP-adres dat we hebben ontvangen en drukken op de rechtermuisknop om een ​​vervolgkeuzemenu te openen. Selecteer daarin het item geassocieerd adresom het toe te wijzen aan de instantie die we eerder hebben gemaakt.

Wireguard gratis VPN-service op AWS

2.2.6. Externe IP-toewijzingsinstelling

Selecteer in de volgende stap onze instantie in de vervolgkeuzelijst en druk op de knop Associëren

Wireguard gratis VPN-service op AWS

2.2.7. Overzicht van externe IP-toewijzingsresultaten

Daarna kunnen we zien dat onze instantie en het bijbehorende privé-IP-adres zijn gebonden aan ons permanente openbare IP-adres.

Wireguard gratis VPN-service op AWS

Nu kunnen we via SSH verbinding maken met onze nieuw gemaakte instantie van buitenaf, vanaf onze computer.

3. Maak verbinding met een AWS-instantie

SSH is een beveiligd protocol voor het op afstand bedienen van computerapparatuur.

3.1. Verbinding maken via SSH vanaf een Windows-computer

Om verbinding te maken met een Windows-computer, moet u eerst het programma downloaden en installeren stopverf.

3.1.1. Importeer privésleutel voor Putty

3.1.1.1. Nadat u Putty hebt geïnstalleerd, moet u het meegeleverde hulpprogramma PuTTYgen uitvoeren om de certificaatsleutel in PEM-indeling te importeren in een indeling die geschikt is voor gebruik in Putty. Selecteer hiervoor het item in het hoofdmenu Conversies->Importeersleutel

Wireguard gratis VPN-service op AWS

3.1.1.2. Een AWS-sleutel in PEM-indeling kiezen

Selecteer vervolgens de sleutel die we eerder hebben opgeslagen in stap 2.1.7.1, in ons geval de naam wireguard-awskey.pem

Wireguard gratis VPN-service op AWS

3.1.1.3. Sleutelimportopties instellen

Bij deze stap moeten we een opmerking voor deze sleutel (beschrijving) specificeren en een wachtwoord en bevestiging instellen voor beveiliging. Elke keer dat u verbinding maakt, wordt hierom gevraagd. Zo beschermen we de sleutel met een wachtwoord tegen oneigenlijk gebruik. Je hoeft geen wachtwoord in te stellen, maar het is minder veilig als de sleutel in verkeerde handen valt. Nadat we op de knop hebben gedrukt Bewaar privésleutel

Wireguard gratis VPN-service op AWS

3.1.1.4. Een geïmporteerde sleutel opslaan

Er wordt een dialoogvenster Bestand opslaan geopend en we slaan onze privésleutel op als een bestand met de extensie .ppkgeschikt voor gebruik in het programma stopverf.
Geef de naam van de sleutel op (in ons geval wireguard-awskey.ppk) en druk op de knop Sparen.

Wireguard gratis VPN-service op AWS

3.1.2. Een verbinding maken en configureren in Putty

3.1.2.1. Maak een verbinding

Open het programma Putty, selecteer een categorie Sessie (deze is standaard geopend) en in het veld Hostnaam voer het openbare IP-adres van onze server in, dat we in stap 2.2.3 hebben ontvangen. Op het veld Opgeslagen sessie voer een willekeurige naam in voor onze verbinding (in mijn geval wireguard-aws-londen) en druk vervolgens op de knop Bespaar om de aangebrachte wijzigingen op te slaan.

Wireguard gratis VPN-service op AWS

3.1.2.2. Gebruikers autologin instellen

Meer in categorie Aansluiting, kies een subcategorie Data en in het veld Gebruikersnaam voor automatisch inloggen Vul je gebruikersnaam in ubuntu is de standaardgebruiker van de instantie op AWS met Ubuntu.

Wireguard gratis VPN-service op AWS

3.1.2.3. Een privésleutel kiezen om verbinding te maken via SSH

Ga dan naar de subcategorie Verbinding/SSH/Auth en naast het veld Privésleutelbestand voor authenticatie druk op de knop Bladeren ... om een ​​bestand met een sleutelcertificaat te selecteren.

Wireguard gratis VPN-service op AWS

3.1.2.4. Een geïmporteerde sleutel openen

Geef de sleutel op die we eerder hebben geïmporteerd bij stap 3.1.1.4, in ons geval is het een bestand wireguard-awskey.ppken druk op de knop open.

Wireguard gratis VPN-service op AWS

3.1.2.5. Instellingen opslaan en verbinding maken

Terugkeren naar de categoriepagina Sessie druk nogmaals op de knop Bespaar, om de wijzigingen op te slaan die we eerder in de vorige stappen hebben aangebracht (3.1.2.2 - 3.1.2.4). En dan drukken we op de knop Openen om de externe SSH-verbinding te openen die we hebben gemaakt en geconfigureerd.

Wireguard gratis VPN-service op AWS

3.1.2.7. Opzetten van vertrouwen tussen hosts

In de volgende stap, de eerste keer dat we verbinding proberen te maken, krijgen we een waarschuwing, we hebben geen vertrouwen geconfigureerd tussen de twee computers en vragen of we de externe computer kunnen vertrouwen. We drukken op de knop Ja, waardoor het wordt toegevoegd aan de lijst met vertrouwde hosts.

Wireguard gratis VPN-service op AWS

3.1.2.8. Een wachtwoord invoeren om toegang te krijgen tot de sleutel

Daarna wordt een terminalvenster geopend waarin u wordt gevraagd om het wachtwoord voor de sleutel, als u dit eerder hebt ingesteld bij stap 3.1.1.3. Bij het invoeren van een wachtwoord vindt er geen actie op het scherm plaats. Als u een fout maakt, kunt u de sleutel gebruiken Backspace.

Wireguard gratis VPN-service op AWS

3.1.2.9. Welkomstbericht bij succesvolle verbinding

Nadat we het wachtwoord met succes hebben ingevoerd, krijgen we een welkomsttekst in de terminal te zien, die ons vertelt dat het externe systeem klaar is om onze opdrachten uit te voeren.

Wireguard gratis VPN-service op AWS

4. Configureren van de Wireguard-server

De meest up-to-date instructies voor het installeren en gebruiken van Wireguard met behulp van de hieronder beschreven scripts zijn te vinden in de repository: https://github.com/isystem-io/wireguard-aws

4.1. WireGuard installeren

Voer in de terminal de volgende opdrachten in (u kunt naar het klembord kopiëren en in de terminal plakken door op de rechtermuisknop te drukken):

4.1.1. Een repository klonen

Kloon de repository met de installatiescripts van Wireguard

git clone https://github.com/pprometey/wireguard_aws.git wireguard_aws

4.1.2. Overschakelen naar de map met scripts

Ga naar de map met de gekloonde repository

cd wireguard_aws

4.1.3 Het initialisatiescript uitvoeren

Voer als beheerder (rootgebruiker) het installatiescript van Wireguard uit

sudo ./initial.sh

Het installatieproces vraagt ​​om bepaalde gegevens die nodig zijn om Wireguard te configureren

4.1.3.1. Aansluitpunt invoer

Voer het externe IP-adres en de open poort van de Wireguard-server in. We kregen het externe IP-adres van de server in stap 2.2.3 en openden de poort in stap 2.1.5. We geven ze samen aan, gescheiden door bijvoorbeeld een dubbele punt 4.3.2.1:54321en druk vervolgens op de toets Enter
Voorbeelduitvoer:

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. Het interne IP-adres invoeren

Voer het IP-adres van de Wireguard-server op het beveiligde VPN-subnet in. Als u niet weet wat het is, drukt u gewoon op Enter om de standaardwaarde in te stellen (10.50.0.1)
Voorbeelduitvoer:

Enter the server address in the VPN subnet (CIDR format) ([ENTER] set to default: 10.50.0.1):

4.1.3.3. Een DNS-server specificeren

Voer het IP-adres van de DNS-server in of druk gewoon op Enter om de standaardwaarde in te stellen 1.1.1.1 (Cloudflare openbare DNS)
Voorbeelduitvoer:

Enter the ip address of the server DNS (CIDR format) ([ENTER] set to default: 1.1.1.1):

4.1.3.4. De WAN-interface specificeren

Vervolgens moet u de naam invoeren van de externe netwerkinterface die zal luisteren op de interne VPN-netwerkinterface. Druk gewoon op Enter om de standaardwaarde voor AWS in te stellen (eth0)
Voorbeelduitvoer:

Enter the name of the WAN network interface ([ENTER] set to default: eth0):

4.1.3.5. Specificeer de naam van de klant

Voer de naam van de VPN-gebruiker in. Feit is dat de Wireguard VPN-server pas kan starten als er minimaal één client is toegevoegd. In dit geval heb ik de naam ingevoerd Alex@mobile
Voorbeelduitvoer:

Enter VPN user name: Alex@mobile

Daarna zou een QR-code met de configuratie van de nieuw toegevoegde client op het scherm moeten worden weergegeven, die moet worden gelezen met behulp van de Wireguard mobiele client op Android of iOS om deze te configureren. En ook onder de QR-code wordt de tekst van het configuratiebestand weergegeven in het geval van handmatige configuratie van clients. Hoe u dit doet, wordt hieronder besproken.

Wireguard gratis VPN-service op AWS

4.2. Een nieuwe VPN-gebruiker toevoegen

Om een ​​nieuwe gebruiker toe te voegen, moet u het script in de terminal uitvoeren add-client.sh

sudo ./add-client.sh

Het script vraagt ​​om een ​​gebruikersnaam:
Voorbeelduitvoer:

Enter VPN user name: 

Ook kan de naam van gebruikers worden doorgegeven als een scriptparameter (in dit geval Alex@mobile):

sudo ./add-client.sh Alex@mobile

Als resultaat van de uitvoering van het script, in de map met de naam van de klant langs het pad /etc/wireguard/clients/{ИмяКлиента} clientconfiguratiebestand wordt gemaakt /etc/wireguard/clients/{ИмяКлиента}/{ИмяКлиента}.conf, en op het terminalscherm wordt een QR-code weergegeven voor het instellen van mobiele clients en de inhoud van het configuratiebestand.

4.2.1. Gebruikersconfiguratiebestand

U kunt de inhoud van het .conf-bestand op het scherm weergeven, voor handmatige configuratie van de client, met behulp van de opdracht cat

sudo cat /etc/wireguard/clients/Alex@mobile/[email protected]

uitvoering resultaat:

[Interface]
PrivateKey = oDMWr0toPVCvgKt5oncLLRfHRit+jbzT5cshNUi8zlM=
Address = 10.50.0.2/32
DNS = 1.1.1.1

[Peer]
PublicKey = mLnd+mul15U0EP6jCH5MRhIAjsfKYuIU/j5ml8Z2SEk=
PresharedKey = wjXdcf8CG29Scmnl5D97N46PhVn1jecioaXjdvrEkAc=
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 4.3.2.1:54321

Beschrijving van het clientconfiguratiebestand:

[Interface]
PrivateKey = Приватный ключ клиента
Address = IP адрес клиента
DNS = ДНС используемый клиентом

[Peer]
PublicKey = Публичный ключ сервера
PresharedKey = Общи ключ сервера и клиента
AllowedIPs = Разрешенные адреса для подключения (все -  0.0.0.0/0, ::/0)
Endpoint = IP адрес и порт для подключения

4.2.2. QR-code voor clientconfiguratie

U kunt een configuratie-QR-code weergeven voor een eerder gemaakte client op het terminalscherm met behulp van de opdracht qrencode -t ansiutf8 (in dit voorbeeld wordt een client met de naam Alex@mobile gebruikt):

sudo cat /etc/wireguard/clients/Alex@mobile/[email protected] | qrencode -t ansiutf8

5. VPN-clients configureren

5.1. De mobiele Android-client instellen

De officiële Wireguard-client voor Android kan zijn installeren vanuit de officiële Google Play Store

Daarna moet u de configuratie importeren door de QR-code met de clientconfiguratie te lezen (zie paragraaf 4.2.2) en deze een naam te geven:

Wireguard gratis VPN-service op AWS

Nadat de configuratie is geïmporteerd, kunt u de VPN-tunnel inschakelen. Een succesvolle verbinding wordt aangegeven door een sleutelopslag in het Android-systeemvak

Wireguard gratis VPN-service op AWS

5.2. Installatie van Windows-client

Eerst moet je het programma downloaden en installeren TunSafe voor Windows is de Wireguard-client voor Windows.

5.2.1. Een importconfiguratiebestand maken

Klik met de rechtermuisknop om een ​​tekstbestand op het bureaublad te maken.

Wireguard gratis VPN-service op AWS

5.2.2. Kopieer de inhoud van het configuratiebestand van de server

Daarna keren we terug naar de Putty-terminal en tonen we de inhoud van het configuratiebestand van de gewenste gebruiker, zoals beschreven in stap 4.2.1.
Klik vervolgens met de rechtermuisknop op de configuratietekst in de Putty-terminal, nadat de selectie is voltooid, wordt deze automatisch naar het klembord gekopieerd.

Wireguard gratis VPN-service op AWS

5.2.3. De configuratie kopiëren naar een lokaal configuratiebestand

In dit veld gaan we terug naar het tekstbestand dat we eerder op het bureaublad hebben gemaakt en plakken we de configuratietekst erin vanaf het klembord.

Wireguard gratis VPN-service op AWS

5.2.4. Een lokaal configuratiebestand opslaan

Sla het bestand op met de extensie .conf (in dit geval genaamd london.conf)

Wireguard gratis VPN-service op AWS

5.2.5. Een lokaal configuratiebestand importeren

Vervolgens moet u het configuratiebestand importeren in het TunSafe-programma.

Wireguard gratis VPN-service op AWS

5.2.6. Een VPN-verbinding opzetten

Selecteer dit configuratiebestand en maak verbinding door op de knop te klikken Verbinden.
Wireguard gratis VPN-service op AWS

6. Controleren of de verbinding gelukt is

Om het succes van de verbinding via de VPN-tunnel te controleren, moet u een browser openen en naar de site gaan https://2ip.ua/ru/

Wireguard gratis VPN-service op AWS

Het weergegeven IP-adres moet overeenkomen met het IP-adres dat we in stap 2.2.3 hebben ontvangen.
Als dat zo is, werkt de VPN-tunnel succesvol.

Vanaf de Linux-terminal kunt u uw IP-adres controleren door te typen:

curl http://zx2c4.com/ip

Of je kunt gewoon naar pornhub gaan als je in Kazachstan bent.

Bron: www.habr.com

Voeg een reactie