Sa pagtaas ng censorship ng Internet ng mga awtoritaryan na rehimen, dumaraming bilang ng mga kapaki-pakinabang na mapagkukunan ng Internet at mga site ang hinaharang. Kasama ang teknikal na impormasyon.
Kaya, nagiging imposible na ganap na gamitin ang Internet at lumalabag sa pangunahing karapatan sa kalayaan sa pagsasalita, na nakasaad sa Universal Declaration of Human Rights.
artikulo 19
Ang bawat tao'y may karapatan sa kalayaan ng opinyon at pagpapahayag; Kasama sa karapatang ito ang kalayaang magkaroon ng mga opinyon nang walang panghihimasok at maghanap, tumanggap at magbigay ng impormasyon at ideya sa pamamagitan ng anumang media at anuman ang mga hangganan
Sa gabay na ito, ilalagay namin ang aming sariling freeware* sa 6 na hakbang. serbisyo ng VPN batay sa teknolohiya Si Wireguard, sa imprastraktura ng ulap Amazon Web Services (AWS), gamit ang isang libreng account (sa loob ng 12 buwan), sa isang instance (virtual machine) na pinamamahalaan ni Ubuntu Server 18.04LTS.
Sinubukan kong gawing friendly ang walkthrough na ito sa mga taong hindi IT hangga't maaari. Ang tanging bagay na kailangan ay tiyaga sa pag-uulit ng mga hakbang na inilarawan sa ibaba.
Nota
Nagbibigay ang AWS libreng tier ng paggamit sa loob ng 12 buwan, na may limitasyong 15 gigabytes ng trapiko bawat buwan.
Ang pag-sign up para sa isang libreng AWS account ay nangangailangan ng isang tunay na numero ng telepono at isang wastong Visa o Mastercard credit card. Inirerekomenda ko ang paggamit ng mga virtual card na ibinibigay nang libre Yandex.Money o pitaka ng qiwi. Upang suriin ang bisa ng card, ang $1 ay ibabawas sa panahon ng pagpaparehistro, na ibinalik sa ibang pagkakataon.
1.1. Pagbubukas ng AWS Management Console
Kailangan mong magbukas ng browser at pumunta sa: https://aws.amazon.com/ru/
Mag-click sa pindutang "Magrehistro".
1.2. Pagpuno ng personal na data
Punan ang data at mag-click sa pindutang "Magpatuloy".
1.3. Pagpuno ng mga detalye ng contact
Punan ang impormasyon sa pakikipag-ugnayan.
1.4. Pagtukoy ng impormasyon sa pagbabayad.
Card number, expiration date at pangalan ng cardholder.
1.5. Pag-verify ng Account
Sa yugtong ito, ang numero ng telepono ay nakumpirma at ang $ 1 ay direktang na-debit mula sa card ng pagbabayad. Ang isang 4-digit na code ay ipinapakita sa screen ng computer, at ang tinukoy na telepono ay tumatanggap ng isang tawag mula sa Amazon. Sa panahon ng isang tawag, dapat mong i-dial ang code na ipinapakita sa screen.
1.6. Pagpili ng plano ng taripa.
Pumili - Pangunahing plano (libre)
1.7. Mag-login sa management console
1.8. Pagpili ng lokasyon ng data center
1.8.1. Pagsubok sa bilis
Bago pumili ng isang data center, inirerekumenda na subukan ito https://speedtest.net bilis ng pag-access sa pinakamalapit na data center, sa aking lokasyon ang mga sumusunod na resulta:
Singgapur
Paris
Frankfurt
Stockholm
London
Ang data center sa London ay nagpapakita ng pinakamahusay na mga resulta sa mga tuntunin ng bilis. Kaya pinili ko ito para sa karagdagang pagpapasadya.
2. Gumawa ng AWS instance
2.1 Gumawa ng virtual machine
2.1.1. Pagpili ng uri ng instance
Bilang default, ang t2.micro instance ay napili, na kung ano ang kailangan namin, pindutin lamang ang pindutan Susunod: I-configure ang Mga Detalye ng Instance
2.1.2. Pagtatakda ng Mga Opsyon sa Instance
Sa hinaharap, ikokonekta namin ang isang permanenteng pampublikong IP sa aming instance, kaya sa yugtong ito, i-off namin ang awtomatikong pagtatalaga ng isang pampublikong IP, at pinindot ang pindutan Susunod: Magdagdag ng Storage
2.1.3. Koneksyon sa storage
Tukuyin ang laki ng "hard disk". Para sa aming mga layunin, sapat na ang 16 gigabytes, at pinindot namin ang pindutan Susunod: Magdagdag ng Mga Tag
2.1.4. Pagse-set up ng mga tag
Kung gumawa kami ng ilang pagkakataon, maaari silang i-grupo ayon sa mga tag upang mapadali ang pangangasiwa. Sa kasong ito, ang pag-andar na ito ay labis, agad na pindutin ang pindutan Susunod: I-configure ang Security Group
2.1.5. Pagbubukas ng mga port
Sa hakbang na ito, iko-configure namin ang firewall sa pamamagitan ng pagbubukas ng mga kinakailangang port. Ang hanay ng mga bukas na port ay tinatawag na Security Group. Dapat tayong lumikha ng bagong pangkat ng seguridad, bigyan ito ng pangalan, paglalarawan, magdagdag ng UDP port (Custom UDP Rule), sa field ng Rort Range, dapat kang magtalaga ng port number mula sa range mga dynamic na port 49152-65535. Sa kasong ito, pinili ko ang port number 54321.
Matapos punan ang kinakailangang data, mag-click sa pindutan Suriin at Ilunsad
2.1.6. Pangkalahatang-ideya ng lahat ng mga setting
Sa pahinang ito mayroong isang pangkalahatang-ideya ng lahat ng mga setting ng aming halimbawa, sinusuri namin kung ang lahat ng mga setting ay maayos, at pindutin ang pindutan Ilunsad
2.1.7. Paglikha ng Mga Access Key
Susunod ang isang dialog box na nag-aalok upang lumikha o magdagdag ng isang umiiral na SSH key, kung saan kami ay malayuang kumonekta sa aming instance. Pinipili namin ang opsyong "Gumawa ng bagong pares ng key" upang lumikha ng bagong key. Bigyan ito ng pangalan at i-click ang button I-download ang Key Paresupang i-download ang mga nabuong key. I-save ang mga ito sa isang ligtas na lugar sa iyong lokal na computer. Kapag na-download, i-click ang pindutan. Ilunsad ang Mga Instance
2.1.7.1. Pag-save ng Mga Access Key
Ipinapakita dito ang hakbang ng pag-save ng mga nabuong key mula sa nakaraang hakbang. Pagkatapos naming pinindot ang button I-download ang Key Pares, ang susi ay nai-save bilang isang certificate file na may *.pem extension. Sa kasong ito, binigyan ko ito ng pangalan wireguard-awskey.pem
2.1.8. Pangkalahatang-ideya ng Mga Resulta ng Paglikha ng Instance
Susunod, nakakakita kami ng mensahe tungkol sa matagumpay na paglulunsad ng instance na ginawa namin. Maaari kaming pumunta sa listahan ng aming mga pagkakataon sa pamamagitan ng pag-click sa pindutan tingnan ang mga pagkakataon
2.2. Paglikha ng isang panlabas na IP address
2.2.1. Sinisimulan ang paglikha ng isang panlabas na IP
Susunod, kailangan naming lumikha ng isang permanenteng panlabas na IP address kung saan kami ay kumonekta sa aming VPN server. Upang gawin ito, sa panel ng nabigasyon sa kaliwang bahagi ng screen, piliin ang item Mga nababanat na IP mula sa kategorya NETWORK at SEKTURIDAD at pindutin ang pindutan Maglaan ng bagong address
2.2.2. Pag-configure ng paglikha ng isang panlabas na IP
Sa susunod na hakbang, kailangan nating paganahin ang opsyon Amazon pool (pinagana bilang default), at mag-click sa pindutan Maglaan
2.2.3. Pangkalahatang-ideya ng mga resulta ng paglikha ng isang panlabas na IP address
Ang susunod na screen ay magpapakita ng panlabas na IP address na aming natanggap. Inirerekomenda na kabisaduhin ito, at mas mainam na isulat ito. ito ay magiging kapaki-pakinabang nang higit sa isang beses sa proseso ng karagdagang pag-set up at paggamit ng VPN server. Sa gabay na ito, ginagamit ko ang IP address bilang isang halimbawa. 4.3.2.1. Kapag naipasok mo na ang address, pindutin ang pindutan Pagsasara
2.2.4. Listahan ng mga panlabas na IP address
Susunod, ipinakita sa amin ang isang listahan ng aming mga permanenteng pampublikong IP address (elastics IP).
2.2.5. Pagtatalaga ng Panlabas na IP sa isang Instance
Sa listahang ito, pipiliin namin ang IP address na aming natanggap, at pinindot ang kanang pindutan ng mouse upang ilabas ang isang drop-down na menu. Sa loob nito, piliin ang item associate addresspara italaga ito sa instance na ginawa namin kanina.
2.2.6. Panlabas na setting ng pagtatalaga ng IP
Sa susunod na hakbang, piliin ang aming instance mula sa drop-down na listahan, at pindutin ang button Makisama
2.2.7. Pangkalahatang-ideya ng Mga Resulta ng Pagtatalaga ng Panlabas na IP
Pagkatapos nito, makikita namin na ang aming instance at ang pribadong IP address nito ay nakatali sa aming permanenteng pampublikong IP address.
Ngayon ay maaari na kaming kumonekta sa aming bagong likhang instance mula sa labas, mula sa aming computer sa pamamagitan ng SSH.
3. Kumonekta sa isang AWS instance
SSH ay isang secure na protocol para sa remote control ng mga computer device.
3.1. Kumokonekta sa pamamagitan ng SSH mula sa isang Windows computer
Upang kumonekta sa isang Windows computer, kailangan mo munang i-download at i-install ang program Masilya.
3.1.1. Mag-import ng pribadong key para sa Putty
3.1.1.1. Pagkatapos i-install ang Putty, kailangan mong patakbuhin ang PuTTYgen utility na kasama nito upang i-import ang certificate key sa PEM format sa isang format na angkop para sa paggamit sa Putty. Upang gawin ito, piliin ang item sa tuktok na menu Mga Conversion->Import Key
3.1.1.2. Pagpili ng AWS Key sa PEM Format
Susunod, piliin ang key na dati naming na-save sa hakbang 2.1.7.1, sa aming kaso ang pangalan nito wireguard-awskey.pem
3.1.1.3. Pagtatakda ng mga pagpipilian sa pag-import ng key
Sa hakbang na ito, kailangan naming tumukoy ng komento para sa key na ito (paglalarawan) at magtakda ng password at kumpirmasyon para sa seguridad. Hihilingin ito sa tuwing kumonekta ka. Kaya, pinoprotektahan namin ang susi gamit ang isang password mula sa hindi naaangkop na paggamit. Hindi mo kailangang magtakda ng password, ngunit hindi gaanong secure kung ang susi ay nahulog sa maling mga kamay. Pagkatapos naming pindutin ang pindutan I-save ang pribadong key
3.1.1.4. Nagse-save ng na-import na key
Magbubukas ang dialog ng save file at ise-save namin ang aming pribadong key bilang isang file na may extension .ppkangkop para gamitin sa programa Masilya.
Tukuyin ang pangalan ng susi (sa aming kaso wireguard-awskey.ppk) at pindutin ang pindutan Panatilihin.
3.1.2. Paglikha at pag-configure ng koneksyon sa Putty
3.1.2.1. Gumawa ng koneksyon
Buksan ang programang Putty, pumili ng kategorya sesyon (ito ay bukas bilang default) at sa field Pangalan ng Host ipasok ang pampublikong IP address ng aming server, na natanggap namin sa hakbang 2.2.3. Sa field Nai-save na Session magpasok ng isang arbitrary na pangalan para sa aming koneksyon (sa aking kaso wireguard-aws-london), at pagkatapos ay pindutin ang pindutan I-save ang para i-save ang mga pagbabagong ginawa namin.
3.1.2.2. Pagse-set up ng user autologin
Higit pa sa kategorya koneksyon, pumili ng subcategory data at sa bukid Auto-login username ipasok ang iyong username Ubuntu ay ang karaniwang gumagamit ng instance sa AWS na may Ubuntu.
3.1.2.3. Pagpili ng pribadong key para sa pagkonekta sa pamamagitan ng SSH
Pagkatapos ay pumunta sa subcategory Koneksyon/SSH/Auth at sa tabi ng field Pribadong key file para sa pagpapatunay mag-click sa pindutan Mag-browse ... para pumili ng file na may key certificate.
3.1.2.4. Pagbubukas ng na-import na susi
Tukuyin ang key na na-import namin kanina sa hakbang 3.1.1.4, sa aming kaso ito ay isang file wireguard-awskey.ppk, at pindutin ang pindutan bukas.
3.1.2.5. Pag-save ng mga setting at pagsisimula ng koneksyon
Bumabalik sa pahina ng kategorya sesyon pindutin muli ang pindutan I-save ang, para i-save ang mga pagbabagong ginawa namin kanina sa mga nakaraang hakbang (3.1.2.2 - 3.1.2.4). At pagkatapos ay pinindot namin ang pindutan Pagbubukas upang buksan ang remote na koneksyon sa SSH na aming ginawa at na-configure.
3.1.2.7. Pagse-set up ng tiwala sa pagitan ng mga host
Sa susunod na hakbang, sa unang pagkakataon na sinubukan naming kumonekta, bibigyan kami ng babala, wala kaming tiwala na na-configure sa pagitan ng dalawang computer, at nagtatanong kung pinagkakatiwalaan ang remote na computer. Pindutin namin ang pindutan Oo, sa gayon ay idinaragdag ito sa listahan ng mga pinagkakatiwalaang host.
3.1.2.8. Paglalagay ng password para ma-access ang key
Pagkatapos nito, bubukas ang isang terminal window, kung saan hihilingin sa iyo ang password para sa susi, kung itinakda mo ito nang mas maaga sa hakbang 3.1.1.3. Kapag naglalagay ng password, walang aksyon sa screen na nagaganap. Kung nagkamali ka, maaari mong gamitin ang susi Backspace.
3.1.2.9. Welcome message sa matagumpay na koneksyon
Pagkatapos ng matagumpay na pagpasok ng password, ipinapakita sa amin ang isang welcome text sa terminal, na nagsasabi sa amin na ang remote system ay handa na upang isagawa ang aming mga utos.
4. Pag-configure ng Wireguard Server
Ang pinaka-up-to-date na mga tagubilin para sa pag-install at paggamit ng Wireguard gamit ang mga script na inilarawan sa ibaba ay matatagpuan sa repositoryo: https://github.com/isystem-io/wireguard-aws
4.1. Pag-install ng WireGuard
Sa terminal, ipasok ang mga sumusunod na command (maaari mong kopyahin sa clipboard, at i-paste sa terminal sa pamamagitan ng pagpindot sa kanang pindutan ng mouse):
4.1.1. Pag-clone ng isang repositoryo
I-clone ang repository gamit ang mga script ng pag-install ng Wireguard
Pumunta sa direktoryo na may naka-clone na imbakan
cd wireguard_aws
4.1.3 Pagpapatakbo ng script ng initialization
Patakbuhin bilang administrator (root user) ang script ng pag-install ng Wireguard
sudo ./initial.sh
Hihilingin ng proseso ng pag-install ang ilang partikular na data na kinakailangan para i-configure ang Wireguard
4.1.3.1. Pag-input ng punto ng koneksyon
Ipasok ang panlabas na IP address at bukas na port ng Wireguard server. Nakuha namin ang panlabas na IP address ng server sa hakbang 2.2.3, at binuksan ang port sa hakbang 2.1.5. Ipinapahiwatig namin ang mga ito nang magkasama, na naghihiwalay sa kanila ng isang colon, halimbawa 4.3.2.1:54321at pagkatapos ay pindutin ang key Magpasok Sample na output:
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. Pagpasok ng panloob na IP address
Ipasok ang IP address ng Wireguard server sa secure na VPN subnet, kung hindi mo alam kung ano ito, pindutin lamang ang Enter key upang itakda ang default na halaga (10.50.0.1) Sample na output:
Enter the server address in the VPN subnet (CIDR format) ([ENTER] set to default: 10.50.0.1):
4.1.3.3. Pagtukoy ng isang DNS Server
Ipasok ang IP address ng DNS server, o pindutin lamang ang Enter key upang itakda ang default na halaga 1.1.1.1 (Cloudflare pampublikong DNS) Sample na output:
Enter the ip address of the server DNS (CIDR format) ([ENTER] set to default: 1.1.1.1):
4.1.3.4. Pagtukoy sa interface ng WAN
Susunod, kailangan mong ipasok ang pangalan ng panlabas na interface ng network na makikinig sa interface ng panloob na network ng VPN. Pindutin lamang ang Enter upang itakda ang default na halaga para sa AWS (eth0) Sample na output:
Enter the name of the WAN network interface ([ENTER] set to default: eth0):
4.1.3.5. Pagtukoy sa pangalan ng kliyente
Ilagay ang pangalan ng gumagamit ng VPN. Ang katotohanan ay ang Wireguard VPN server ay hindi makakapagsimula hanggang hindi bababa sa isang kliyente ang naidagdag. Sa kasong ito, ipinasok ko ang pangalan Alex@mobile Sample na output:
Enter VPN user name: Alex@mobile
Pagkatapos nito, dapat ipakita sa screen ang isang QR code na may configuration ng bagong idinagdag na client, na dapat basahin gamit ang Wireguard mobile client sa Android o iOS para i-configure ito. At din sa ibaba ng QR code, ang teksto ng configuration file ay ipapakita sa kaso ng manu-manong pagsasaayos ng mga kliyente. Kung paano ito gagawin ay tatalakayin sa ibaba.
4.2. Pagdaragdag ng bagong gumagamit ng VPN
Upang magdagdag ng bagong user, kailangan mong isagawa ang script sa terminal add-client.sh
sudo ./add-client.sh
Ang script ay humihingi ng isang username: Sample na output:
Enter VPN user name:
Gayundin, maaaring ipasa ang pangalan ng mga user bilang parameter ng script (sa kasong ito Alex@mobile):
sudo ./add-client.sh Alex@mobile
Bilang resulta ng pagpapatupad ng script, sa direktoryo na may pangalan ng kliyente kasama ang landas /etc/wireguard/clients/{ΠΠΌΡΠΠ»ΠΈΠ΅Π½ΡΠ°} malilikha ang file ng pagsasaayos ng kliyente /etc/wireguard/clients/{ΠΠΌΡΠΠ»ΠΈΠ΅Π½ΡΠ°}/{ΠΠΌΡΠΠ»ΠΈΠ΅Π½ΡΠ°}.conf, at ang terminal screen ay magpapakita ng QR code para sa pag-set up ng mga mobile client at ang mga nilalaman ng configuration file.
4.2.1. File ng pagsasaayos ng user
Maaari mong ipakita ang mga nilalaman ng .conf file sa screen, para sa manu-manong pagsasaayos ng kliyente, gamit ang command cat
Maaari kang magpakita ng configuration QR code para sa isang naunang ginawang client sa terminal screen gamit ang command qrencode -t ansiutf8 (sa halimbawang ito, ginagamit ang isang kliyente na nagngangalang Alex@mobile):
Pagkatapos nito, kailangan mong i-import ang configuration sa pamamagitan ng pagbabasa ng QR code kasama ang configuration ng client (tingnan ang talata 4.2.2) at bigyan ito ng pangalan:
Pagkatapos ng matagumpay na pag-import ng configuration, maaari mong paganahin ang VPN tunnel. Ang isang matagumpay na koneksyon ay isasaad ng isang key stash sa Android system tray
5.2. Pag-setup ng Windows client
Una kailangan mong i-download at i-install ang program TunSafe para sa Windows ay ang Wireguard client para sa Windows.
5.2.1. Paglikha ng file ng pagsasaayos ng pag-import
I-right-click upang lumikha ng isang text file sa desktop.
5.2.2. Kopyahin ang mga nilalaman ng configuration file mula sa server
Pagkatapos ay bumalik kami sa terminal ng Putty at ipinapakita ang mga nilalaman ng configuration file ng nais na user, tulad ng inilarawan sa hakbang 4.2.1.
Susunod, i-right-click ang teksto ng pagsasaayos sa terminal ng Putty, pagkatapos makumpleto ang pagpili, awtomatiko itong makokopya sa clipboard.
5.2.3. Kinokopya ang configuration sa isang lokal na configuration file
Sa field na ito, bumalik kami sa text file na ginawa namin kanina sa desktop, at i-paste ang configuration text dito mula sa clipboard.
5.2.4. Nagse-save ng lokal na configuration file
I-save ang file na may extension .conf (sa kasong ito ay pinangalanan london.conf)
5.2.5. Pag-import ng lokal na configuration file
Susunod, kailangan mong i-import ang configuration file sa TunSafe program.
5.2.6. Pag-set up ng koneksyon sa VPN
Piliin ang configuration file na ito at kumonekta sa pamamagitan ng pag-click sa button Ikabit.
6. Sinusuri kung matagumpay ang koneksyon
Upang suriin ang tagumpay ng koneksyon sa pamamagitan ng VPN tunnel, kailangan mong magbukas ng browser at pumunta sa site https://2ip.ua/ru/
Dapat tumugma ang ipinapakitang IP address sa natanggap namin sa hakbang 2.2.3.
Kung gayon, kung gayon ang VPN tunnel ay matagumpay na gumagana.
Mula sa terminal ng Linux, maaari mong suriin ang iyong IP address sa pamamagitan ng pag-type:
curl http://zx2c4.com/ip
O maaari kang pumunta sa pornhub kung ikaw ay nasa Kazakhstan.