S rostoucí cenzurou internetu ze strany autoritářských režimů je blokován stále větší počet užitečných internetových zdrojů a stránek. Včetně technických informací.
Stává se tak nemožným plně využívat internet a porušuje základní právo na svobodu projevu, zakotvené v univerzální deklarace lidských práv.
Článek 19
Každý má právo na svobodu názoru a projevu; toto právo zahrnuje svobodu zastávat názory bez zasahování a vyhledávat, přijímat a rozšiřovat informace a myšlenky prostřednictvím jakýchkoli médií a bez ohledu na hranice
V této příručce nasadíme vlastní freeware* v 6 krocích. Služba VPN založené na technologii Drátěný strážcev cloudové infrastruktuře Amazon Web Services (AWS), pomocí bezplatného účtu (po dobu 12 měsíců), na instanci (virtuální počítač) spravované společností Ubuntu Server 18.04LTS.
Snažil jsem se, aby tento návod byl co nejpřátelštější k lidem, kteří nejsou IT. Jediné, co je potřeba, je vytrvalost při opakování kroků popsaných níže.
Registrace k bezplatnému účtu AWS vyžaduje skutečné telefonní číslo a platnou kreditní kartu Visa nebo Mastercard. Doporučuji používat virtuální karty, které jsou poskytovány zdarma Yandex nebo peněženka qiwi. Pro kontrolu platnosti karty je při registraci odečten 1 $, který je později vrácen.
Vyplňte údaje a klikněte na tlačítko "Pokračovat".
1.3. Vyplnění kontaktních údajů
Vyplňte kontaktní údaje.
1.4. Zadání platebních údajů.
Číslo karty, datum vypršení platnosti a jméno držitele karty.
1.5. Ověření účtu
V této fázi je telefonní číslo potvrzeno a 1 $ je strženo přímo z platební karty. Na obrazovce počítače se zobrazí 4místný kód a zadaný telefon přijme hovor od Amazonu. Během hovoru musíte vytočit kód zobrazený na obrazovce.
1.6. Výběr tarifu.
Vyberte si – základní tarif (zdarma)
1.7. Přihlaste se do konzoly pro správu
1.8. Výběr umístění datového centra
1.8.1. Testování rychlosti
Před výběrem datového centra se doporučuje otestovat https://speedtest.net rychlost přístupu k nejbližším datovým centrům, v mé lokalitě následující výsledky:
Singapore
Paříž
Frankfurt
Stockholm
Londýn
Nejlepší výsledky z hlediska rychlosti vykazuje datové centrum v Londýně. Vybral jsem si ho tedy pro další přizpůsobení.
2. Vytvořte instanci AWS
2.1 Vytvořte virtuální stroj
2.1.1. Výběr typu instance
Ve výchozím nastavení je vybrána instance t2.micro, což je to, co potřebujeme, stačí stisknout tlačítko Další: Konfigurace podrobností instance
2.1.2. Nastavení možností instance
V budoucnu k naší instanci připojíme trvalou veřejnou IP, takže v této fázi vypneme automatické přidělování veřejné IP a stiskneme tlačítko Další: Přidat úložiště
2.1.3. Připojení úložiště
Zadejte velikost "pevného disku". Pro naše účely stačí 16 gigabajtů a stiskneme tlačítko Další: Přidat značky
2.1.4. Nastavení značek
Pokud bychom vytvořili několik instancí, mohly by být seskupeny podle značek pro usnadnění správy. V tomto případě je tato funkce nadbytečná, okamžitě stiskněte tlačítko Další: Konfigurace skupiny zabezpečení
2.1.5. Otevření portů
V tomto kroku nakonfigurujeme firewall otevřením požadovaných portů. Sada otevřených portů se nazývá skupina zabezpečení. Musíme vytvořit novou bezpečnostní skupinu, dát jí název, popis, přidat UDP port (Custom UDP Rule), v poli Rort Range přiřadit číslo portu z rozsahu dynamické porty 49152-65535. V tomto případě jsem zvolil číslo portu 54321.
Po vyplnění požadovaných údajů klikněte na tlačítko Kontrola a spuštění
2.1.6. Přehled všech nastavení
Na této stránce je přehled všech nastavení naší instance, zkontrolujeme, zda jsou všechna nastavení v pořádku, a stiskneme tlačítko zahájit
2.1.7. Vytváření přístupových klíčů
Dále přichází dialogové okno nabízející buď vytvoření nebo přidání existujícího klíče SSH, pomocí kterého se později vzdáleně připojíme k naší instanci. Pro vytvoření nového klíče vybereme možnost "Vytvořit nový pár klíčů". Zadejte název a klikněte na tlačítko Stáhněte si klíčový párke stažení vygenerovaných klíčů. Uložte je na bezpečné místo v místním počítači. Po stažení klikněte na tlačítko. Spusťte instance
2.1.7.1. Ukládání přístupových klíčů
Zde je zobrazen krok uložení vygenerovaných klíčů z předchozího kroku. Poté, co jsme zmáčkli tlačítko Stáhněte si klíčový pár, klíč je uložen jako soubor certifikátu s příponou *.pem. V tomto případě jsem tomu dal jméno wireguard-awskey.pem
2.1.8. Přehled výsledků vytváření instance
Dále se zobrazí zpráva o úspěšném spuštění instance, kterou jsme právě vytvořili. Kliknutím na tlačítko můžeme přejít na seznam našich instancí zobrazit instance
2.2. Vytvoření externí IP adresy
2.2.1. Zahájení vytváření externí IP
Dále musíme vytvořit trvalou externí IP adresu, přes kterou se připojíme k našemu VPN serveru. Chcete-li to provést, na navigačním panelu na levé straně obrazovky vyberte položku Elastické IP z kategorie SÍŤ A BEZPEČNOST a stiskněte tlačítko Přidělte novou adresu
2.2.2. Konfigurace vytvoření externí IP adresy
V dalším kroku musíme volbu povolit Amazonský bazén (ve výchozím nastavení povoleno) a klikněte na tlačítko Přidělit
2.2.3. Přehled výsledků vytvoření externí IP adresy
Na další obrazovce se zobrazí externí IP adresa, kterou jsme obdrželi. Doporučuje se to zapamatovat a je lepší si to i zapsat. bude se hodit více než jednou v procesu dalšího nastavování a používání VPN serveru. V tomto návodu používám jako příklad IP adresu. 4.3.2.1. Jakmile zadáte adresu, stiskněte tlačítko zavřít
2.2.4. Seznam externích IP adres
Dále se nám zobrazí seznam našich stálých veřejných IP adres (elastické IP).
2.2.5. Přiřazení externí IP k instanci
V tomto seznamu vybereme IP adresu, kterou jsme obdrželi, a stisknutím pravého tlačítka myši vyvoláme rozevírací nabídku. V něm vyberte položku přidružená adresapřiřadit ji k instanci, kterou jsme vytvořili dříve.
2.2.6. Nastavení externího přiřazení IP
V dalším kroku vyberte naši instanci z rozevíracího seznamu a stiskněte tlačítko Spolupracovník
2.2.7. Přehled výsledků externího přiřazení IP
Poté můžeme vidět, že naše instance a její soukromá IP adresa jsou svázány s naší trvalou veřejnou IP adresou.
Nyní se můžeme připojit k naší nově vytvořené instanci zvenčí, z našeho počítače přes SSH.
3. Připojte se k instanci AWS
SSH je bezpečný protokol pro dálkové ovládání počítačových zařízení.
3.1. Připojení přes SSH z počítače se systémem Windows
Chcete-li se připojit k počítači se systémem Windows, musíte si nejprve stáhnout a nainstalovat program Tmel.
3.1.1. Importujte soukromý klíč pro Putty
3.1.1.1. Po instalaci Putty musíte spustit nástroj PuTTYgen, který je součástí dodávky, a importovat klíč certifikátu ve formátu PEM do formátu vhodného pro použití v Putty. Chcete-li to provést, vyberte položku v horní nabídce Konverze->Import klíč
3.1.1.2. Výběr klíče AWS ve formátu PEM
Dále vyberte klíč, který jsme dříve uložili v kroku 2.1.7.1, v našem případě jeho název wireguard-awskey.pem
3.1.1.3. Nastavení možností importu klíčů
V tomto kroku musíme pro tento klíč specifikovat komentář (popis) a pro bezpečnost nastavit heslo a potvrzení. Bude požadováno při každém připojení. Tím chráníme klíč heslem před nevhodným použitím. Nemusíte nastavovat heslo, ale je to méně bezpečné, pokud se klíč dostane do nesprávných rukou. Poté, co stiskneme tlačítko Uložte soukromý klíč
3.1.1.4. Ukládání importovaného klíče
Otevře se dialogové okno pro uložení souboru a uložíme náš soukromý klíč jako soubor s příponou .ppkvhodné pro použití v programu Tmel.
Zadejte název klíče (v našem případě wireguard-awskey.ppk) a stiskněte tlačítko Udržet.
3.1.2. Vytvoření a konfigurace připojení v Putty
3.1.2.1. Vytvořte spojení
Otevřete program Putty, vyberte kategorii Zasedání (ve výchozím nastavení je otevřen) a v poli Název hostitele zadejte veřejnou IP adresu našeho serveru, kterou jsme obdrželi v kroku 2.2.3. V terénu Uložená relace zadejte libovolný název pro naše připojení (v mém případě wireguard-aws-londýn) a poté stiskněte tlačítko Uložit uložit změny, které jsme provedli.
Více v kategorii přípojka, vyberte podkategorii Data a v terénu Uživatelské jméno pro automatické přihlášení zadejte uživatelské jméno ubuntu je standardním uživatelem instance na AWS s Ubuntu.
3.1.2.3. Výběr soukromého klíče pro připojení přes SSH
Poté přejděte do podkategorie Připojení/SSH/Auth a vedle pole Soubor soukromého klíče pro ověření klikněte na tlačítko Procházet… vyberte soubor s certifikátem klíče.
3.1.2.4. Otevření importovaného klíče
Zadejte klíč, který jsme importovali dříve v kroku 3.1.1.4, v našem případě je to soubor wireguard-awskey.ppka stiskněte tlačítko otevřený.
3.1.2.5. Uložení nastavení a zahájení připojení
Návrat na stránku kategorie Zasedání znovu stiskněte tlačítko Uložit, abyste uložili změny, které jsme provedli dříve v předchozích krocích (3.1.2.2 - 3.1.2.4). A pak stiskneme tlačítko Otevřená k otevření vzdáleného připojení SSH, které jsme vytvořili a nakonfigurovali.
3.1.2.7. Nastavení důvěry mezi hostiteli
V dalším kroku, při prvním pokusu o připojení, dostaneme varování, že mezi dvěma počítači nemáme nakonfigurovanou důvěru, a zeptá se, zda důvěřovat vzdálenému počítači. Zmáčkneme tlačítko Ano, čímž jej přidáte do seznamu důvěryhodných hostitelů.
3.1.2.8. Zadání hesla pro přístup ke klíči
Poté se otevře okno terminálu, kde budete požádáni o heslo pro klíč, pokud jste jej nastavili dříve v kroku 3.1.1.3. Při zadávání hesla neprobíhá na obrazovce žádná akce. Pokud uděláte chybu, můžete použít klíč Backspace.
3.1.2.9. Uvítací zpráva o úspěšném připojení
Po úspěšném zadání hesla se nám v terminálu zobrazí uvítací text, který nám sděluje, že vzdálený systém je připraven provést naše příkazy.
Spusťte jako správce (uživatel root) instalační skript Wireguard
sudo ./initial.sh
Instalační proces bude vyžadovat určitá data potřebná pro konfiguraci Wireguard
4.1.3.1. Vstup přípojného bodu
Zadejte externí IP adresu a otevřete port Wireguard serveru. V kroku 2.2.3 jsme získali externí IP adresu serveru a v kroku 2.1.5 otevřeli port. Označujeme je společně, oddělujeme je například dvojtečkou 4.3.2.1:54321a poté stiskněte klávesu vstoupit Ukázkový výstup:
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. Zadání interní IP adresy
Zadejte IP adresu serveru Wireguard na zabezpečené podsíti VPN, pokud nevíte, co to je, stiskněte klávesu Enter a nastavte výchozí hodnotu (10.50.0.1) Ukázkový výstup:
Enter the server address in the VPN subnet (CIDR format) ([ENTER] set to default: 10.50.0.1):
4.1.3.3. Určení serveru DNS
Zadejte IP adresu DNS serveru nebo jednoduše stiskněte klávesu Enter pro nastavení výchozí hodnoty 1.1.1.1 (Veřejný DNS Cloudflare) Ukázkový výstup:
Enter the ip address of the server DNS (CIDR format) ([ENTER] set to default: 1.1.1.1):
4.1.3.4. Určení rozhraní WAN
Dále je třeba zadat název externího síťového rozhraní, které bude naslouchat na interním síťovém rozhraní VPN. Stačí stisknout Enter pro nastavení výchozí hodnoty pro AWS (eth0) Ukázkový výstup:
Enter the name of the WAN network interface ([ENTER] set to default: eth0):
4.1.3.5. Zadání jména klienta
Zadejte jméno uživatele VPN. Faktem je, že server Wireguard VPN nebude možné spustit, dokud nebude přidán alespoň jeden klient. V tomto případě jsem zadal jméno Alex@mobile Ukázkový výstup:
Enter VPN user name: Alex@mobile
Poté by se na obrazovce měl zobrazit QR kód s konfigurací nově přidaného klienta, který je nutné pro konfiguraci načíst pomocí mobilního klienta Wireguard na Androidu nebo iOS. A také pod QR kódem se v případě ruční konfigurace klientů zobrazí text konfiguračního souboru. Jak to udělat, bude diskutováno níže.
4.2. Přidání nového uživatele VPN
Chcete-li přidat nového uživatele, musíte spustit skript v terminálu add-client.sh
sudo ./add-client.sh
Skript žádá o uživatelské jméno: Ukázkový výstup:
Enter VPN user name:
Jako parametr skriptu lze také předat jména uživatelů (v tomto případě Alex@mobile):
sudo ./add-client.sh Alex@mobile
V důsledku spuštění skriptu v adresáři se jménem klienta podél cesty /etc/wireguard/clients/{ИмяКлиента} bude vytvořen konfigurační soubor klienta /etc/wireguard/clients/{ИмяКлиента}/{ИмяКлиента}.confa na obrazovce terminálu se zobrazí QR kód pro nastavení mobilních klientů a obsah konfiguračního souboru.
4.2.1. Uživatelský konfigurační soubor
Obsah souboru .conf můžete zobrazit na obrazovce pro ruční konfiguraci klienta pomocí příkazu cat
[Interface]
PrivateKey = Приватный ключ клиента
Address = IP адрес клиента
DNS = ДНС используемый клиентом
[Peer]
PublicKey = Публичный ключ сервера
PresharedKey = Общи ключ сервера и клиента
AllowedIPs = Разрешенные адреса для подключения (все - 0.0.0.0/0, ::/0)
Endpoint = IP адрес и порт для подключения
4.2.2. QR kód pro konfiguraci klienta
Pomocí příkazu můžete na obrazovce terminálu zobrazit konfigurační QR kód pro dříve vytvořeného klienta qrencode -t ansiutf8 (v tomto příkladu je použit klient s názvem Alex@mobile):
Poté je třeba importovat konfiguraci načtením QR kódu s konfigurací klienta (viz odstavec 4.2.2) a pojmenovat ji:
Po úspěšném importu konfigurace můžete povolit VPN tunel. Úspěšné připojení bude indikováno uložením klíče na systémové liště Android
5.2. Nastavení klienta Windows
Nejprve si musíte stáhnout a nainstalovat program TunSafe pro Windows je klient Wireguard pro Windows.
5.2.1. Vytvoření konfiguračního souboru importu
Klepnutím pravým tlačítkem myši vytvoříte textový soubor na ploše.
5.2.2. Zkopírujte obsah konfiguračního souboru ze serveru
Poté se vrátíme do terminálu Putty a zobrazíme obsah konfiguračního souboru požadovaného uživatele, jak je popsáno v kroku 4.2.1.
Dále klikněte pravým tlačítkem na text konfigurace v terminálu Putty, po dokončení výběru se automaticky zkopíruje do schránky.
5.2.3. Zkopírování konfigurace do místního konfiguračního souboru
V tomto poli se vrátíme k textovému souboru, který jsme dříve vytvořili na ploše, a vložíme do něj konfigurační text ze schránky.
5.2.4. Uložení místního konfiguračního souboru
Uložte soubor s příponou .conf (v tomto případě pojmenovaný london.conf)
5.2.5. Import místního konfiguračního souboru
Dále je třeba importovat konfigurační soubor do programu TunSafe.
5.2.6. Nastavení připojení VPN
Vyberte tento konfigurační soubor a připojte se kliknutím na tlačítko mítinky Connect.
6. Kontrola, zda bylo připojení úspěšné
Chcete-li zkontrolovat úspěšnost připojení prostřednictvím tunelu VPN, musíte otevřít prohlížeč a přejít na web https://2ip.ua/ru/
Zobrazená IP adresa se musí shodovat s adresou, kterou jsme obdrželi v kroku 2.2.3.
Pokud ano, pak VPN tunel úspěšně funguje.
Z terminálu Linux můžete zkontrolovat svou IP adresu zadáním:
curl http://zx2c4.com/ip
Nebo můžete jít na pornhub, pokud jste v Kazachstánu.