Wireguard Senpaga VPN-Servo ĉe AWS

Por kio?

Kun la kreskanta cenzuro de la Interreto fare de aŭtoritataj reĝimoj, kreskanta nombro da utilaj interretaj rimedoj kaj retejoj estas blokitaj. Inkluzive de teknikaj informoj.
Tiel, fariĝas neeble plene uzi la Interreton kaj malobservas la fundamentan rajton al esprimlibereco, sanktigita en Universala Deklaracio de Homaj Rajtoj.

Artikolo 19
Ĉiu havas la rajton je libereco de opinio kaj esprimo; ĉi tiu rajto inkluzivas liberecon teni opiniojn sen enmiksiĝo kaj serĉi, ricevi kaj transdoni informojn kaj ideojn per iu ajn amaskomunikilaro kaj sendepende de limoj.

En ĉi tiu gvidilo, ni deplojos nian propran senpagan programon* en 6 paŝoj. VPN-servo bazita sur teknologio Dratgardisto, en nuba infrastrukturo Amazonaj Servoj (AWS), uzante senpagan konton (dum 12 monatoj), sur petskribo (virtuala maŝino) administrita de Ubuntu-Servilo 18.04 LTS.
Mi provis fari ĉi tiun promenon kiel eble plej amika al ne-IT-uloj. La nura afero necesa estas persistemo ripeti la paŝojn priskribitajn sube.

Примечание

Stadioj

  1. Registriĝu por senpaga AWS-konto
  2. Kreu AWS-instancon
  3. Konektante al AWS-instanco
  4. Wireguard Agordo
  5. Agordi VPN-klientojn
  6. Kontrolante la ĝustecon de la VPN-instalado

utilaj ligoj

1. Registri AWS-konton

Registriĝi por senpaga AWS-konto postulas realan telefonnumeron kaj validan kreditkarton Visa aŭ Mastercard. Mi rekomendas uzi virtualajn kartojn senpage provizitajn Yandex.Moneyqiwi monujo. Por kontroli la validecon de la karto, $ 1 estas subtrahita dum registriĝo, kiu poste estas resendita.

1.1. Malfermante la AWS-Administran Konzolon

Vi devas malfermi retumilon kaj iri al: https://aws.amazon.com/ru/
Alklaku la butonon "Registriĝi".

Wireguard Senpaga VPN-Servo ĉe AWS

1.2. Plenigante personajn datumojn

Plenigu la datumojn kaj alklaku la butonon "Daŭrigi".

Wireguard Senpaga VPN-Servo ĉe AWS

1.3. Plenigante kontaktajn detalojn

Plenigu kontaktinformojn.

Wireguard Senpaga VPN-Servo ĉe AWS

1.4. Specifante pagajn informojn.

Kartnumero, limdato kaj nomo de la kartposedanto.

Wireguard Senpaga VPN-Servo ĉe AWS

1.5. Konto-Konfirmo

En ĉi tiu etapo, la telefonnumero estas konfirmita kaj $ 1 estas rekte debetita de la pagkarto. 4-cifera kodo estas montrata sur la komputila ekrano, kaj la specifita telefono ricevas vokon de Amazon. Dum voko, vi devas marki la kodon montritan sur la ekrano.

Wireguard Senpaga VPN-Servo ĉe AWS

1.6. Elekto de tarifplano.

Elektu - Baza plano (senpaga)

Wireguard Senpaga VPN-Servo ĉe AWS

1.7. Ensalutu al la administra konzolo

Wireguard Senpaga VPN-Servo ĉe AWS

1.8. Elektante la lokon de la datumcentro

Wireguard Senpaga VPN-Servo ĉe AWS

1.8.1. Rapida provo

Antaŭ ol elekti datuman centron, oni rekomendas testi tra https://speedtest.net rapideco de aliro al la plej proksimaj datumcentroj, en mia loko la sekvaj rezultoj:

  • Сингапур
    Wireguard Senpaga VPN-Servo ĉe AWS
  • Parizo
    Wireguard Senpaga VPN-Servo ĉe AWS
  • Frankfurto
    Wireguard Senpaga VPN-Servo ĉe AWS
  • Stokholmo
    Wireguard Senpaga VPN-Servo ĉe AWS
  • Londono
    Wireguard Senpaga VPN-Servo ĉe AWS

La datumcentro en Londono montras la plej bonajn rezultojn laŭ rapideco. Do mi elektis ĝin por plia personigo.

2. Kreu AWS-instancon

2.1 Krei virtualan maŝinon

2.1.1. Elektante kazon tipon

Defaŭlte, la t2.micro-instanco estas elektita, kio estas tio, kion ni bezonas, nur premu la butonon Sekva: Agordi Kazajn Detalojn

Wireguard Senpaga VPN-Servo ĉe AWS

2.1.2. Agordi Okazajn Opciojn

En la estonteco, ni konektos konstantan publikan IP al nia petskribo, do en ĉi tiu etapo ni malŝaltas aŭtomatan asignon de publika IP, kaj premas la butonon Sekva: Aldonu Stokadon

Wireguard Senpaga VPN-Servo ĉe AWS

2.1.3. Konekto de stokado

Indiku la grandecon de la "malmola disko". Por niaj celoj sufiĉas 16 gigabajtoj, kaj ni premas la butonon Sekva: Aldonu Etikedojn

Wireguard Senpaga VPN-Servo ĉe AWS

2.1.4. Agordi etikedojn

Se ni kreis plurajn okazojn, tiam ili povus esti grupigitaj per etikedoj por faciligi administradon. En ĉi tiu kazo, ĉi tiu funkcio estas superflua, tuj premu la butonon Sekva: Agordu Sekurecan Grupon

Wireguard Senpaga VPN-Servo ĉe AWS

2.1.5. Malfermaj havenoj

En ĉi tiu paŝo, ni agordas la fajroŝirmilon malfermante la postulatajn havenojn. La aro de malfermitaj havenoj nomiĝas Sekureca Grupo. Ni devas krei novan sekurecan grupon, doni al ĝi nomon, priskribon, aldoni UDP-havenon (Persona UDP-Regulo), en la kampo Rort Range, vi devas asigni havenon de la gamo. dinamikaj havenoj 49152-65535. En ĉi tiu kazo, mi elektis havenon numeron 54321.

Wireguard Senpaga VPN-Servo ĉe AWS

Post plenigi la postulatajn datumojn, alklaku la butonon Revizio kaj Lanĉo

2.1.6. Superrigardo de ĉiuj agordoj

En ĉi tiu paĝo estas superrigardo de ĉiuj agordoj de nia petskribo, ni kontrolas ĉu ĉiuj agordoj estas en ordo, kaj premas la butonon Ĵeto

Wireguard Senpaga VPN-Servo ĉe AWS

2.1.7. Kreante Alirŝlosilojn

Poste venas dialogkesto, kiu proponas aŭ krei aŭ aldoni ekzistantan SSH-ŝlosilon, per kiu ni poste malproksime konektos al nia petskribo. Ni elektas la opcion "Krei novan ŝlosilparon" por krei novan ŝlosilon. Donu al ĝi nomon kaj alklaku la butonon Elŝutu Ŝlosilparonpor elŝuti la generitajn ŝlosilojn. Konservu ilin en sekura loko en via loka komputilo. Fojo elŝutita, alklaku la butonon. Lanĉu Instancojn

Wireguard Senpaga VPN-Servo ĉe AWS

2.1.7.1. Konservante Alirŝlosilojn

Montrita ĉi tie estas la paŝo konservi la generitajn ŝlosilojn de la antaŭa paŝo. Post kiam ni premis la butonon Elŝutu Ŝlosilparon, la ŝlosilo estas konservita kiel atestilo kun etendo *.pem. En ĉi tiu kazo, mi donis al ĝi nomon wireguard-awskey.pem

Wireguard Senpaga VPN-Servo ĉe AWS

2.1.8. Superrigardo de Kazaj Kreaj Rezultoj

Poste, ni vidas mesaĝon pri la sukcesa lanĉo de la petskribo, kiun ni ĵus kreis. Ni povas iri al la listo de niaj petskriboj alklakante la butonon vidi okazojn

Wireguard Senpaga VPN-Servo ĉe AWS

2.2. Kreante eksteran IP-adreson

2.2.1. Komencante la kreadon de ekstera IP

Poste, ni devas krei konstantan eksteran IP-adreson per kiu ni konektos al nia VPN-servilo. Por fari tion, en la navigada panelo maldekstre de la ekrano, elektu la eron Elastaj IP-oj el kategorio RETO & SEKURECO kaj premu la butonon Asigni novan adreson

Wireguard Senpaga VPN-Servo ĉe AWS

2.2.2. Agordante la kreadon de ekstera IP

En la sekva paŝo, ni devas ebligi la opcion Amazona naĝejo (aktivigita defaŭlte), kaj alklaku la butonon Asigni

Wireguard Senpaga VPN-Servo ĉe AWS

2.2.3. Superrigardo de la rezultoj de kreado de ekstera IP-adreso

La sekva ekrano montros la eksteran IP-adreson, kiun ni ricevis. Oni rekomendas enmemorigi ĝin, kaj estas pli bone eĉ skribi ĝin. ĝi utilos pli ol unufoje en la procezo de plua agordo kaj uzado de la VPN-servilo. En ĉi tiu gvidilo, mi uzas la IP-adreson kiel ekzemplon. 4.3.2.1. Post kiam vi enigis la adreson, premu la butonon Fermi

Wireguard Senpaga VPN-Servo ĉe AWS

2.2.4. Listo de eksteraj IP-adresoj

Poste, ni prezentas liston de niaj konstantaj publikaj IP-adresoj (elastaj IP).

Wireguard Senpaga VPN-Servo ĉe AWS

2.2.5. Asigni Eksteran IP al Kazo

En ĉi tiu listo, ni elektas la IP-adreson, kiun ni ricevis, kaj premas la dekstran musbutonon por aperigi falmenuon. En ĝi, elektu la eron asociita adresopor atribui ĝin al la petskribo kiun ni kreis antaŭe.

Wireguard Senpaga VPN-Servo ĉe AWS

2.2.6. Agordo de ekstera IP-asigno

En la sekva paŝo, elektu nian ekzemplon el la fallisto, kaj premu la butonon asociita

Wireguard Senpaga VPN-Servo ĉe AWS

2.2.7. Superrigardo de Eksteraj IP-Asigno-Rezultoj

Post tio, ni povas vidi, ke nia petskribo kaj ĝia privata IP-adreso estas ligitaj al nia konstanta publika IP-adreso.

Wireguard Senpaga VPN-Servo ĉe AWS

Nun ni povas konektiĝi al nia ĵus kreita petskribo de ekstere, de nia komputilo per SSH.

3. Konektu al AWS-instanco

SSH estas sekura protokolo por teleregado de komputilaj aparatoj.

3.1. Konekti per SSH de Vindoza komputilo

Por konektiĝi al Vindoza komputilo, vi unue devas elŝuti kaj instali la programon Pura.

3.1.1. Importu privatan ŝlosilon por Putty

3.1.1.1. Post instalo de Putty, vi devas ruli la ilon PuTTYgen kiu venas kun ĝi por importi la atestilŝlosilon en PEM-formato en formaton taŭgan por uzo en Putty. Por fari tion, elektu la eron en la supra menuo Konvertiĝoj-> Import Key

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.1.2. Elektante AWS-Ŝlosilon en PEM-Formato

Poste, elektu la ŝlosilon, kiun ni antaŭe konservis en la paŝo 2.1.7.1, en nia kazo ĝia nomo wireguard-awskey.pem

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.1.3. Agordi ŝlosilajn importopciojn

Je ĉi tiu paŝo, ni devas specifi komenton por ĉi tiu ŝlosilo (priskribo) kaj agordi pasvorton kaj konfirmon por sekureco. Ĝi estos petita ĉiufoje kiam vi konektos. Tiel, ni protektas la ŝlosilon per pasvorto kontraŭ malkonvena uzo. Vi ne devas agordi pasvorton, sed ĝi estas malpli sekura se la ŝlosilo falas en malĝustajn manojn. Post kiam ni premas la butonon Konservu privatan ŝlosilon

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.1.4. Konservado de importita ŝlosilo

Konserva dosiero dialogo malfermiĝas kaj ni konservas nian privatan ŝlosilon kiel dosieron kun la etendaĵo .ppktaŭga por uzo en la programo Pura.
Indiku la nomon de la ŝlosilo (en nia kazo wireguard-awskey.ppk) kaj premu la butonon reteni.

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.2. Krei kaj agordi konekton en Putty

3.1.2.1. Kreu konekton

Malfermu la programon Putty, elektu kategorion kunsido (ĝi estas malfermita defaŭlte) kaj en la kampo Gastiganta Nomo enigu la publikan IP-adreson de nia servilo, kiun ni ricevis en la paŝo 2.2.3. En kampo Konservita sesio enigu arbitran nomon por nia konekto (en mia kazo wireguard-aws-london), kaj poste premu la butonon Savi por konservi la ŝanĝojn kiujn ni faris.

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.2.2. Agordi uzantan aŭtomatan ensaluton

Pli en kategorio konekto, elektu subkategorion datumoj kaj sur la kampo Aŭtomate ensalutu uzantnomo enigu uzantnomon ubuntu estas la norma uzanto de la petskribo en AWS kun Ubuntu.

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.2.3. Elektante privatan ŝlosilon por konekti per SSH

Poste iru al la subkategorio Konekto/SSH/Auth kaj apud la kampo Privata ŝlosila dosiero por aŭtentigo premu la butonon Foliumi ... elekti dosieron kun ŝlosila atestilo.

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.2.4. Malfermante importitan ŝlosilon

Indiku la ŝlosilon, kiun ni importis pli frue ĉe paŝo 3.1.1.4, en nia kazo ĝi estas dosiero. wireguard-awskey.ppk, kaj premu la butonon Malfermu.

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.2.5. Konservante agordojn kaj komencante konekton

Revenante al kategoriopaĝo kunsido premu la butonon denove Savi, por konservi la ŝanĝojn, kiujn ni faris pli frue en la antaŭaj paŝoj (3.1.2.2 - 3.1.2.4). Kaj tiam ni premas la butonon malfermita malfermi la foran SSH-konekton, kiun ni kreis kaj agordis.

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.2.7. Starigi fidon inter gastigantoj

Je la sekva paŝo, la unuan fojon ni provas konekti, ni ricevas averton, ni ne havas fidon agordita inter la du komputiloj, kaj demandas ĉu fidi la fora komputilo. Ni premos la butonon Jes, tiel aldonante ĝin al la listo de fidindaj gastigantoj.

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.2.8. Enigante pasvorton por aliri la ŝlosilon

Post tio malfermiĝas fina fenestro, kie oni petas vin pri la pasvorto por la ŝlosilo, se vi starigis ĝin pli frue ĉe paŝo 3.1.1.3. Dum enigo de pasvorto, neniu ago sur la ekrano okazas. Se vi eraras, vi povas uzi la ŝlosilon Malantaŭa.

Wireguard Senpaga VPN-Servo ĉe AWS

3.1.2.9. Bonvena mesaĝo pri sukcesa konekto

Post sukcese enigi la pasvorton, ni estas montrita bonvenan tekston en la terminalo, kiu diras al ni, ke la fora sistemo estas preta por ekzekuti niajn komandojn.

Wireguard Senpaga VPN-Servo ĉe AWS

4. Agordante la Wireguard-Servilon

La plej ĝisdataj instrukcioj por instali kaj uzi Wireguard uzante la skriptojn priskribitajn sube troveblas en la deponejo: https://github.com/isystem-io/wireguard-aws

4.1. Instalante WireGuard

En la terminalo, enigu la jenajn komandojn (vi povas kopii al la tondujo, kaj alglui en la terminalo premante la dekstran musbutonon):

4.1.1. Klonado de deponejo

Klonu la deponejon per la instalaj skriptoj de Wireguard

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

4.1.2. Ŝanĝi al la dosierujo kun skriptoj

Iru al la dosierujo kun la klonita deponejo

cd wireguard_aws

4.1.3 Ruli la komencan skripton

Rulu kiel administranto (radika uzanto) la instala skripto de Wireguard

sudo ./initial.sh

La instala procezo petos certajn datumojn necesajn por agordi Wireguard

4.1.3.1. Konekta punkto enigo

Enigu la eksteran IP-adreson kaj malferman havenon de la Wireguard-servilo. Ni ricevis la eksteran IP-adreson de la servilo en paŝo 2.2.3, kaj malfermis la havenon en paŝo 2.1.5. Ni indikas ilin kune, apartigante ilin per dupunkto, ekzemple 4.3.2.1:54321kaj poste premu la klavon Enigu
Ekzempla eligo:

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. Enirante la internan IP-adreson

Enigu la IP-adreson de la Wireguard-servilo en la sekura VPN-subreto, se vi ne scias kio ĝi estas, simple premu la Enigu klavon por agordi la defaŭltan valoron (10.50.0.1)
Ekzempla eligo:

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

4.1.3.3. Specifante DNS-Servilon

Enigu la IP-adreson de la DNS-servilo, aŭ simple premu la Enigu klavon por agordi la defaŭltan valoron 1.1.1.1 (Publika DNS de Cloudflare)
Ekzempla eligo:

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

4.1.3.4. Specifante la WAN-interfacon

Poste, vi devas enigi la nomon de la ekstera reto-interfaco, kiu aŭskultos sur la VPN-interna reto-interfaco. Nur premu Enter por agordi la defaŭltan valoron por AWS (eth0)
Ekzempla eligo:

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

4.1.3.5. Specifante la nomon de la kliento

Enigu la nomon de la VPN-uzanto. La fakto estas, ke la Wireguard VPN-servilo ne povos komenci ĝis almenaŭ unu kliento estos aldonita. En ĉi tiu kazo, mi enigis la nomon Alex@mobile
Ekzempla eligo:

Enter VPN user name: Alex@mobile

Post tio, QR-kodo kun la agordo de la lastatempe aldonita kliento devus esti montrita sur la ekrano, kiu devas esti legita uzante la Wireguard movebla kliento en Android aŭ iOS por agordi ĝin. Kaj ankaŭ sub la QR-kodo, la teksto de la agorda dosiero estos montrata en kazo de mana agordo de klientoj. Kiel fari ĉi tion estos diskutita sube.

Wireguard Senpaga VPN-Servo ĉe AWS

4.2. Aldono de nova VPN-uzanto

Por aldoni novan uzanton, vi devas ekzekuti la skripton en la terminalo add-client.sh

sudo ./add-client.sh

La skripto petas uzantnomon:
Ekzempla eligo:

Enter VPN user name: 

Ankaŭ, la nomo de uzantoj povas esti pasita kiel skriptoparametro (en ĉi tiu kazo Alex@mobile):

sudo ./add-client.sh Alex@mobile

Kiel rezulto de la skripto ekzekuto, en la dosierujo kun la nomo de la kliento laŭ la vojo /etc/wireguard/clients/{ИмяКлиента} klienta agorda dosiero estos kreita /etc/wireguard/clients/{ИмяКлиента}/{ИмяКлиента}.conf, kaj la fina ekrano montros QR-kodon por agordi poŝtelefonajn klientojn kaj la enhavon de la agorda dosiero.

4.2.1. Uzanta agorda dosiero

Vi povas montri la enhavon de la .conf dosiero sur la ekrano, por mana agordo de la kliento, uzante la komandon cat

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

rezulto de ekzekuto:

[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

Priskribo de la klienta agorda dosiero:

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

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

4.2.2. QR-kodo por klienta agordo

Vi povas montri agordan QR-kodon por antaŭe kreita kliento sur la fina ekrano uzante la komandon qrencode -t ansiutf8 (en ĉi tiu ekzemplo, kliento nomita Alex@mobile estas uzata):

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

5. Agordi VPN-klientojn

5.1. Agordi la Android-poŝtelefonan klienton

La oficiala Wireguard-kliento por Android povas esti instali de la oficiala Google Play Store

Post tio, vi devas importi la agordon legante la QR-kodon kun la klienta agordo (vidu paragrafon 4.2.2) kaj doni al ĝi nomon:

Wireguard Senpaga VPN-Servo ĉe AWS

Post sukcese importi la agordon, vi povas ebligi la VPN-tunelon. Sukcesa konekto estos indikita per ŝlosila stash en la Android-sistema pleto

Wireguard Senpaga VPN-Servo ĉe AWS

5.2. Vindoza kliento agordo

Unue vi devas elŝuti kaj instali la programon TunSafe por Vindozo estas la Wireguard-kliento por Vindozo.

5.2.1. Kreante importan agordan dosieron

Dekstre alklaku por krei tekstdosieron sur la labortablo.

Wireguard Senpaga VPN-Servo ĉe AWS

5.2.2. Kopiu la enhavon de la agorda dosiero de la servilo

Poste ni revenas al la Putty-terminalo kaj montras la enhavon de la agorda dosiero de la dezirata uzanto, kiel priskribite en paŝo 4.2.1.
Poste, dekstre alklaku la agordan tekston en la Putty-terminalo, post kiam la elekto finiĝos, ĝi aŭtomate kopios al la tondujo.

Wireguard Senpaga VPN-Servo ĉe AWS

5.2.3. Kopiante la agordon al loka agorda dosiero

En ĉi tiu kampo, ni revenas al la tekstdosiero, kiun ni kreis pli frue sur la labortablo, kaj algluas la agordan tekston en ĝin el la tondujo.

Wireguard Senpaga VPN-Servo ĉe AWS

5.2.4. Konservado de loka agorda dosiero

Konservu la dosieron kun etendo .konf (en ĉi tiu kazo nomita london.conf)

Wireguard Senpaga VPN-Servo ĉe AWS

5.2.5. Importado de loka agorda dosiero

Poste, vi devas importi la agordan dosieron en la programon TunSafe.

Wireguard Senpaga VPN-Servo ĉe AWS

5.2.6. Agordi VPN-konekton

Elektu ĉi tiun agordan dosieron kaj konektu alklakante la butonon konekti.
Wireguard Senpaga VPN-Servo ĉe AWS

6. Kontrolante ĉu la konekto sukcesis

Por kontroli la sukceson de la konekto tra la VPN-tunelo, vi devas malfermi retumilon kaj iri al la retejo https://2ip.ua/ru/

Wireguard Senpaga VPN-Servo ĉe AWS

La montrata IP-adreso devas kongrui kun tiu, kiun ni ricevis en la paŝo 2.2.3.
Se jes, tiam la VPN-tunelo funkcias sukcese.

De la Linuksa terminalo, vi povas kontroli vian IP-adreson tajpante:

curl http://zx2c4.com/ip

Aŭ vi povas simple iri al pornhub se vi estas en Kazaĥio.

fonto: www.habr.com

Aldoni komenton