Med den økende sensuren av Internett av autoritære regimer, blokkeres et økende antall nyttige Internett-ressurser og nettsteder. Inkludert teknisk informasjon.
Dermed blir det umulig å fullt ut bruke Internett og krenker den grunnleggende retten til ytringsfrihet, nedfelt i Universal erklæring av menneskerettigheter.
Artikkel 19
Alle har rett til menings- og ytringsfrihet; denne retten inkluderer frihet til å ha meninger uten innblanding og til å søke, motta og formidle informasjon og ideer gjennom alle medier og uavhengig av grenser
I denne veiledningen vil vi distribuere vår egen freeware* i 6 trinn. VPN-tjeneste basert på teknologi wire vakt, i skyinfrastruktur Amazon Web Services (AWS), ved å bruke en gratis konto (i 12 måneder), på en forekomst (virtuell maskin) administrert av Ubuntu Server 18.04LTS.
Jeg har prøvd å gjøre denne gjennomgangen så vennlig for ikke-IT-folk som mulig. Det eneste som kreves er utholdenhet i å gjenta trinnene beskrevet nedenfor.
Note
AWS gir gratis bruksnivå i en periode på 12 måneder, med en grense på 15 gigabyte trafikk per måned.
Å registrere seg for en gratis AWS-konto krever et ekte telefonnummer og et gyldig Visa- eller Mastercard-kredittkort. Jeg anbefaler å bruke virtuelle kort som tilbys gratis Yandex eller qiwi lommebok. For å sjekke gyldigheten av kortet trekkes $1 under registreringen, som senere returneres.
På dette stadiet bekreftes telefonnummeret og $1 blir direkte debitert fra betalingskortet. En 4-sifret kode vises på dataskjermen, og den angitte telefonen mottar et anrop fra Amazon. Under en samtale må du slå koden som vises på skjermen.
1.6. Valg av tariffplan.
Velg - Grunnplan (gratis)
1.7. Logg på administrasjonskonsollen
1.8. Velge plasseringen av datasenteret
1.8.1. Hastighetstesting
Før du velger datasenter anbefales det å teste gjennom https://speedtest.net tilgangshastigheten til de nærmeste datasentrene, på min plassering følgende resultater:
Singapore
Paris
Frankfurt
Stockholm
London
Datasenteret i London viser de beste resultatene når det gjelder hastighet. Så jeg valgte det for ytterligere tilpasning.
2. Opprett en AWS-forekomst
2.1 Lag en virtuell maskin
2.1.1. Velge en forekomsttype
Som standard er t2.micro-forekomsten valgt, som er det vi trenger, bare trykk på knappen Neste: Konfigurer forekomstdetaljer
2.1.2. Angi forekomstalternativer
I fremtiden vil vi koble en permanent offentlig IP til instansen vår, så på dette stadiet slår vi av automatisk tildeling av en offentlig IP, og trykker på knappen Neste: Legg til lagring
2.1.3. Lagringstilkobling
Angi størrelsen på "harddisken". Til vårt formål er 16 gigabyte nok, og vi trykker på knappen Neste: Legg til tagger
2.1.4. Sette opp tagger
Hvis vi opprettet flere forekomster, kan de grupperes etter tagger for å lette administrasjonen. I dette tilfellet er denne funksjonaliteten overflødig, trykk umiddelbart på knappen Neste: Konfigurer sikkerhetsgruppe
2.1.5. Åpne porter
I dette trinnet konfigurerer vi brannmuren ved å åpne de nødvendige portene. Settet med åpne porter kalles sikkerhetsgruppen. Vi må opprette en ny sikkerhetsgruppe, gi den et navn, beskrivelse, legge til en UDP-port (Custom UDP Rule), i Rort Range-feltet, tilordne et portnummer fra området dynamiske porter 49152-65535. I dette tilfellet valgte jeg portnummer 54321.
Etter å ha fylt inn nødvendige data, klikk på knappen Gjennomgang og start
2.1.6. Oversikt over alle innstillinger
På denne siden er det en oversikt over alle innstillingene til vår instans, vi sjekker om alle innstillingene er i orden, og trykker på knappen Start
2.1.7. Opprette tilgangsnøkler
Deretter kommer en dialogboks som tilbyr å enten opprette eller legge til en eksisterende SSH-nøkkel, som vi senere fjernkobler til instansen vår. Vi velger alternativet "Opprett et nytt nøkkelpar" for å opprette en ny nøkkel. Gi den et navn og klikk på knappen Last ned Key Pairfor å laste ned de genererte nøklene. Lagre dem på et trygt sted på din lokale datamaskin. Når du har lastet ned, klikk på knappen. Start forekomster
2.1.7.1. Lagrer tilgangsnøkler
Her vises trinnet med å lagre de genererte nøklene fra forrige trinn. Etter at vi trykket på knappen Last ned Key Pair, er nøkkelen lagret som en sertifikatfil med filtypen *.pem. I dette tilfellet ga jeg den et navn wireguard-awskey.pem
2.1.8. Oversikt over resultater for oppretting av forekomster
Deretter ser vi en melding om den vellykkede lanseringen av forekomsten vi nettopp opprettet. Vi kan gå til listen over forekomstene våre ved å klikke på knappen se forekomster
2.2. Opprette en ekstern IP-adresse
2.2.1. Starter opprettelsen av en ekstern IP
Deretter må vi opprette en permanent ekstern IP-adresse som vi vil koble til VPN-serveren vår gjennom. For å gjøre dette, velg elementet i navigasjonspanelet på venstre side av skjermen Elastiske IP -er fra kategori NETTVERK OG SIKKERHET og trykk på knappen Tildel ny adresse
2.2.2. Konfigurere opprettelsen av en ekstern IP
I neste trinn må vi aktivere alternativet Amazonas basseng (aktivert som standard), og klikk på knappen Tildele
2.2.3. Oversikt over resultatene ved å opprette en ekstern IP-adresse
Den neste skjermen vil vise den eksterne IP-adressen vi mottok. Det anbefales å huske det, og det er bedre å skrive det ned. det vil komme til nytte mer enn én gang i prosessen med videre oppsett og bruk av VPN-serveren. I denne guiden bruker jeg IP-adressen som eksempel. 4.3.2.1. Når du har skrevet inn adressen, trykk på knappen Lukke
2.2.4. Liste over eksterne IP-adresser
Deretter får vi en liste over våre permanente offentlige IP-adresser (elastisk IP).
2.2.5. Tilordne en ekstern IP til en forekomst
I denne listen velger vi IP-adressen vi mottok, og trykker på høyre museknapp for å få opp en rullegardinmeny. I den velger du elementet tilknyttet adressefor å tilordne den til forekomsten vi opprettet tidligere.
2.2.6. Innstilling for ekstern IP-tilordning
I neste trinn velger du vår forekomst fra rullegardinlisten, og trykker på knappen Førsteamanuensis
2.2.7. Oversikt over resultater for eksterne IP-tildelinger
Etter det kan vi se at vår instans og dens private IP-adresse er bundet til vår permanente offentlige IP-adresse.
Nå kan vi koble til vår nyopprettede instans utenfra, fra datamaskinen vår via SSH.
3. Koble til en AWS-instans
SSH er en sikker protokoll for fjernkontroll av datamaskinenheter.
3.1. Koble til via SSH fra en Windows-datamaskin
For å koble til en Windows-datamaskin må du først laste ned og installere programmet putty.
3.1.1. Importer privat nøkkel for Putty
3.1.1.1. Etter å ha installert Putty, må du kjøre PuTTYgen-verktøyet som følger med for å importere sertifikatnøkkelen i PEM-format til et format som er egnet for bruk i Putty. For å gjøre dette, velg elementet i toppmenyen Konverteringer->Importer nøkkel
3.1.1.2. Velge en AWS-nøkkel i PEM-format
Deretter velger du nøkkelen som vi tidligere lagret i trinn 2.1.7.1, i vårt tilfelle navnet wireguard-awskey.pem
3.1.1.3. Angi alternativer for nøkkelimport
På dette trinnet må vi spesifisere en kommentar for denne nøkkelen (beskrivelse) og angi et passord og bekreftelse for sikkerhet. Det vil bli bedt om hver gang du kobler til. Dermed beskytter vi nøkkelen med et passord mot upassende bruk. Du trenger ikke angi passord, men det er mindre sikkert hvis nøkkelen faller i feil hender. Etter at vi har trykket på knappen Lagre privat nøkkel
3.1.1.4. Lagrer en importert nøkkel
En dialogboks for lagring av fil åpnes og vi lagrer vår private nøkkel som en fil med filtypen .ppkegnet for bruk i programmet putty.
Angi navnet på nøkkelen (i vårt tilfelle wireguard-awskey.ppk) og trykk på knappen Behold.
3.1.2. Opprette og konfigurere en tilkobling i Putty
3.1.2.1. Opprett en forbindelse
Åpne Putty-programmet, velg en kategori Session (den er åpen som standard) og i feltet Vertsnavn skriv inn den offentlige IP-adressen til serveren vår, som vi mottok i trinn 2.2.3. I felt Lagret økt skriv inn et vilkårlig navn for tilkoblingen vår (i mitt tilfelle wireguard-aws-london), og trykk deretter på knappen Spar for å lagre endringene vi har gjort.
3.1.2.2. Sette opp brukerautologging
Mer i kategorien Tilkobling, velg en underkategori Data og i felten Brukernavn for automatisk pålogging Skriv inn brukernavn ubuntu er standardbrukeren av instansen på AWS med Ubuntu.
3.1.2.3. Velge en privat nøkkel for tilkobling via SSH
Gå deretter til underkategorien Tilkobling/SSH/Auth og ved siden av feltet Privat nøkkelfil for godkjenning trykk på knappen Bla gjennom ... for å velge en fil med et nøkkelsertifikat.
3.1.2.4. Åpne en importert nøkkel
Spesifiser nøkkelen som vi importerte tidligere i trinn 3.1.1.4, i vårt tilfelle er det en fil wireguard-awskey.ppk, og trykk på knappen åpen.
3.1.2.5. Lagre innstillinger og starte en tilkobling
Går tilbake til kategorisiden Session trykk på knappen igjen Spar, for å lagre endringene vi gjorde tidligere i de forrige trinnene (3.1.2.2 - 3.1.2.4). Og så trykker vi på knappen Åpen for å åpne den eksterne SSH-tilkoblingen vi opprettet og konfigurerte.
3.1.2.7. Sette opp tillit mellom verter
I neste trinn, første gang vi prøver å koble til, får vi en advarsel, vi har ikke konfigurert tillit mellom de to datamaskinene, og spør om vi skal stole på den eksterne datamaskinen. Vi trykker på knappen Ja, og dermed legge den til listen over pålitelige verter.
3.1.2.8. Tast inn et passord for å få tilgang til nøkkelen
Etter det åpnes et terminalvindu, der du blir bedt om passordet for nøkkelen, hvis du satte det tidligere i trinn 3.1.1.3. Når du skriver inn et passord, skjer ingen handling på skjermen. Hvis du gjør en feil, kan du bruke nøkkelen Backspace.
3.1.2.9. Velkomstmelding om vellykket tilkobling
Etter å ha skrevet inn passordet, får vi vist en velkomsttekst i terminalen, som forteller oss at det eksterne systemet er klart til å utføre kommandoene våre.
4. Konfigurere Wireguard Server
De mest oppdaterte instruksjonene for installasjon og bruk av Wireguard ved å bruke skriptene beskrevet nedenfor, finner du i depotet: https://github.com/isystem-io/wireguard-aws
4.1. Installerer WireGuard
I terminalen skriver du inn følgende kommandoer (du kan kopiere til utklippstavlen og lime inn terminalen ved å trykke på høyre museknapp):
Kjør som administrator (rotbruker) installasjonsskriptet for Wireguard
sudo ./initial.sh
Installasjonsprosessen vil be om visse data som kreves for å konfigurere Wireguard
4.1.3.1. Tilkoblingspunktinngang
Skriv inn den eksterne IP-adressen og åpne porten til Wireguard-serveren. Vi fikk den eksterne IP-adressen til serveren i trinn 2.2.3, og åpnet porten i trinn 2.1.5. Vi angir dem sammen, for eksempel å skille dem med et kolon 4.3.2.1:54321og trykk deretter på tasten Enter Eksempelutgang:
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. Angi den interne IP-adressen
Skriv inn IP-adressen til Wireguard-serveren på det sikre VPN-undernettet, hvis du ikke vet hva det er, trykker du bare på Enter-tasten for å angi standardverdien (10.50.0.1) Eksempelutgang:
Enter the server address in the VPN subnet (CIDR format) ([ENTER] set to default: 10.50.0.1):
4.1.3.3. Spesifisere en DNS-server
Skriv inn IP-adressen til DNS-serveren, eller trykk bare på Enter-tasten for å angi standardverdien 1.1.1.1 (Cloudflare offentlig DNS) Eksempelutgang:
Enter the ip address of the server DNS (CIDR format) ([ENTER] set to default: 1.1.1.1):
4.1.3.4. Spesifisere WAN-grensesnittet
Deretter må du skrive inn navnet på det eksterne nettverksgrensesnittet som skal lytte på det interne VPN-nettverksgrensesnittet. Bare trykk på Enter for å angi standardverdien for AWS (eth0) Eksempelutgang:
Enter the name of the WAN network interface ([ENTER] set to default: eth0):
4.1.3.5. Oppgi klientens navn
Skriv inn navnet på VPN-brukeren. Faktum er at Wireguard VPN-serveren ikke vil kunne starte før minst én klient er lagt til. I dette tilfellet skrev jeg inn navnet Alex@mobile Eksempelutgang:
Enter VPN user name: Alex@mobile
Etter det skal en QR-kode med konfigurasjonen av den nylig lagt til klienten vises på skjermen, som må leses ved hjelp av Wireguard-mobilklienten på Android eller iOS for å konfigurere den. Og også under QR-koden vil teksten til konfigurasjonsfilen vises i tilfelle manuell konfigurasjon av klienter. Hvordan du gjør dette vil bli diskutert nedenfor.
4.2. Legger til en ny VPN-bruker
For å legge til en ny bruker, må du kjøre skriptet i terminalen add-client.sh
sudo ./add-client.sh
Skriptet ber om et brukernavn: Eksempelutgang:
Enter VPN user name:
Også navnet på brukerne kan sendes som en skriptparameter (i dette tilfellet Alex@mobile):
sudo ./add-client.sh Alex@mobile
Som et resultat av skriptkjøringen, i katalogen med klientens navn langs banen /etc/wireguard/clients/{ИмяКлиента} klientkonfigurasjonsfilen vil bli opprettet /etc/wireguard/clients/{ИмяКлиента}/{ИмяКлиента}.conf, og terminalskjermen vil vise en QR-kode for å sette opp mobilklienter og innholdet i konfigurasjonsfilen.
4.2.1. Brukerkonfigurasjonsfil
Du kan vise innholdet i .conf-filen på skjermen, for manuell konfigurering av klienten, ved å bruke kommandoen cat
[Interface]
PrivateKey = Приватный ключ клиента
Address = IP адрес клиента
DNS = ДНС используемый клиентом
[Peer]
PublicKey = Публичный ключ сервера
PresharedKey = Общи ключ сервера и клиента
AllowedIPs = Разрешенные адреса для подключения (все - 0.0.0.0/0, ::/0)
Endpoint = IP адрес и порт для подключения
4.2.2. QR-kode for klientkonfigurasjon
Du kan vise en konfigurasjons-QR-kode for en tidligere opprettet klient på terminalskjermen ved å bruke kommandoen qrencode -t ansiutf8 (i dette eksemplet brukes en klient ved navn Alex@mobile):
Etter det må du importere konfigurasjonen ved å lese QR-koden med klientkonfigurasjonen (se avsnitt 4.2.2) og gi den et navn:
Etter vellykket import av konfigurasjonen kan du aktivere VPN-tunnelen. En vellykket tilkobling indikeres av et nøkkellager i Android-systemstatusfeltet
5.2. Windows-klientoppsett
Først må du laste ned og installere programmet TunSafe for Windows er Wireguard-klienten for Windows.
5.2.1. Opprette en importkonfigurasjonsfil
Høyreklikk for å lage en tekstfil på skrivebordet.
5.2.2. Kopier innholdet i konfigurasjonsfilen fra serveren
Deretter går vi tilbake til Putty-terminalen og viser innholdet i konfigurasjonsfilen til ønsket bruker, som beskrevet i trinn 4.2.1.
Deretter høyreklikker du på konfigurasjonsteksten i Putty-terminalen, etter at valget er fullført, vil den automatisk kopieres til utklippstavlen.
5.2.3. Kopierer konfigurasjonen til en lokal konfigurasjonsfil
I dette feltet går vi tilbake til tekstfilen vi opprettet tidligere på skrivebordet, og limer inn konfigurasjonsteksten fra utklippstavlen.
5.2.4. Lagrer en lokal konfigurasjonsfil
Lagre filen med filtypen .konf (i dette tilfellet navngitt london.conf)
5.2.5. Importerer en lokal konfigurasjonsfil
Deretter må du importere konfigurasjonsfilen til TunSafe-programmet.
5.2.6. Sette opp en VPN-tilkobling
Velg denne konfigurasjonsfilen og koble til ved å klikke på knappen Koble.
6. Sjekker om tilkoblingen var vellykket
For å sjekke suksessen til tilkoblingen gjennom VPN-tunnelen, må du åpne en nettleser og gå til nettstedet https://2ip.ua/ru/
Den viste IP-adressen må samsvare med den vi mottok i trinn 2.2.3.
I så fall fungerer VPN-tunnelen vellykket.
Fra Linux-terminalen kan du sjekke IP-adressen din ved å skrive:
curl http://zx2c4.com/ip
Eller du kan bare gå til pornhub hvis du er i Kasakhstan.