Kako sakriti svoj OpenVPN promet pomoću SSH tunela

tunel (2)
Dakle, pratili ste naš vodič o postavljanju vlastitog VPN poslužitelja koristeći OpenVPN i Amazon EC2 poslužitelj, i on je radio izvrsno. Odnosno, sve dok je iznenada ne blokiraju. Možda ste ponovno pokrenuli instancu i dobili novu IP adresu. Ponovo djeluje još nekoliko dana, a onda se blokira. Čini se da vaš ured, ISP ili vlada aktivno blokiraju OpenVPN poslužitelje. Što radiš?

Osnovni vatrozidovi blokiraju veze na temelju korištenog priključka i odredišne ​​IP adrese, ali napredniji vatrozidovi koriste dubinsku inspekciju paketa (DPI) i / ili stanja inspekcije paketa (SPI) kako bi razlikovali različite vrste algoritama šifriranja i protokole VPN. To znači da mogu otkriti OpenVPN promet i označiti ga tako da administrator može blokirati poslužitelj.

Tri su mogućnosti zaobići ovo: proxy prigušivač, SSL tuneliranje i SSH tuneliranje. U ovom ćemo vodiču raspravljati o posljednjem. SSH tuneliranje vaše već šifriranu vezu omota u drugi sloj enkripcije, tako da vatrozid ne može razlikovati. Svaka od ovih metoda trebala bi zaobići zaštitne zidove DPI i SPI koje postavljaju ili korporacije ili vlade koje preti cenzuru poput kineskih.

OpenVPN preko SSH ima nekoliko nedostataka. Prvo je pogodak izvedbe zbog dvostruke enkripcije. Drugo, otisak prsta OpenVPN-a više se ne može otkriti kada se radi o tunelu preko SSH-a, ali neki vatrozidi blokiraju i SSH promet. To se odnosi na usluge poput Netflixa, koje zaustavljaju upotrebu bilo koje vrste šifriranog proxyja, OpenVPN, SSH ili slično. U ovom slučaju, preporučujemo da umjesto toga postavite Obfsproxy, zbog čega se kodirani kriptirani promet čini normalnim i nešifriranim. Obfsproxy je iz tog razloga mnogo moćniji, ali i složeniji za postavljanje i pokretanje.

Nažalost, Obfsproxy u kombinaciji s OpenVPN-om trenutno djeluje samo na radnoj površini, koliko smo svjesni. SSH tuneliranje se može koristiti na Android ili iOS mobilnom uređaju.

Ovaj vodič pretpostavlja da već imate postavljen funkcionalni OpenVPN poslužitelj i možete se povezati s njim pomoću OpenVPN GUI ili OpenVPN Connect aplikacije. Morate biti u mogućnosti i SSH na vašem poslužitelju putem terminala na Mac računalu ili PuTTy na računalu. U demonstrativne svrhe koristit ćemo PuTTy. Ako nemate sve što ste postavili, pogledajte naš prethodni vodič.

Postavljanje OpenVPN-a preko SSH-a na PC-u

U našem posljednjem vodiču raspravljali smo o tome kako postaviti jednostavan SSH proxy, a zatim proširiti ga na stvaranje VPN poslužitelja s potpunim pristupom. Ovaj pristup kombinira ovo dvoje, što znači da već trebate imati sve što vam treba.

Otvorite PuTTy i učitajte konfiguraciju vašeg VPN poslužitelja. Na bočnoj traci prijeđite na vezu > SSH > Tuneli. Provjerite je li D8080 uključen na popis. Ako ne, upišite 8080 u “Izvorski ulaz” i provjerite Automatski i Dinamični. Zatim pritisnite Add. Sada imate SSH proxy koji prolazi kroz port 8080. To možete spremiti kao zasebnu konfiguraciju sesije ako se želite vratiti na karticu Sesija stabla navigacije.

openvpn ssh putty 8080

Kliknite Otvori i prijavite se na svoj poslužitelj. Imajte na umu da je na novijem Amazon Linux AMI korisničko ime “ec2-korisnik”.

Dođite do vaše datoteke openvpn.conf i provjerite sadržaj pomoću ovih naredbi

cd / etc / openvpn
mačka openvpn.conf

Na njemu bi trebao biti prikazan sadržaj konfiguracijske datoteke vašeg OpenVPN poslužitelja. To bi trebalo izgledati ovako:

luka 1194
proto tcp-poslužitelj
dev tun1
ifconfig 10.4.0.1 10.4.0.2
statusni poslužitelj-tcp.log
glagol 3
tajni ovpn.key

openvpn ssh server config

Važno je da je drugi red postavljen na TCP, a ne UDP. Ako je morate promijeniti, možete je urediti ovom naredbom:

sudo nano openvpn.conf

Zatim pritisnite CTRL + O (slovo “o”, a ne nula) da biste spremili datoteku, a zatim CTRL + X za izlaz iz uređivača.

Konfiguracija klijenta

Dođite do svog lokalnog računala do konfiguracijskih datoteka vašeg OpenVPN klijenta. Ako ste koristili zadani instalacijski direktorij, to će biti C: / Program Files / OpenVPN / config.

Napravite kopiju postojeće konfiguracijske datoteke OpenVPN iz zadnjeg vodiča ili stvorite novu. Pronađite Notepad ili drugi uređivač običnog teksta i kliknite ga desnim klikom da biste pokrenuli kao administrator. Otvorite ili stvorite novu konfiguracijsku datoteku koja bi trebala izgledati ovako:

proto tcp-klijent
udaljeni localhost 1194
luka 1194
dev tun1
tajni ovpn.key
preusmjeravanje-gateway def1
ifconfig 10.4.0.2 10.4.0.1
čarape-proxy pokušaja
čarape-proxy 127.0.0.1 8080

Imajte na umu da druga “udaljena” linija koristi localhost umjesto IP-a OpenVPN poslužitelja, plus dva retka na kraju koji OpenVPN konfiguriraju za korištenje proxy SOCKS. Sve ostalo je isto kao i prije.

Spremite novu konfiguracijsku datoteku u config mapu vašeg OpenVPN direktorija.

Postavljanje aplikacija

Posljednji korak je konfiguriranje aplikacija za korištenje proxyja preko porta 8080. To je slično onome što smo napravili s osnovnim SSH proxyjem iz posljednjeg vodiča. Mnoge će aplikacije imati postavke proxyja dostupne u postavkama, a neke ih mogu čak i automatski otkriti. Ako je trebate postaviti ručno, potrebne su tri informacije:

  • Domaćin: 127.0.0.1
  • Luka: 8080
  • Vrsta proxyja: SOCKS5 (ili SOCKS v5)

Evo upute za Firefox i Chrome:

U Firefoxu:

  • Idite na Alati > Opcije > Napredna > Mreža > Veza > postavke > Ručna konfiguracija proxyja
  • Podesite SOCKS Host kao 127.0.0.1, a priključak kao 8080 (ili sve što ste postavili na tunelu na PuTTy).
  • Kliknite U redu za spremanje

U Chrome Proxy Switchu

  • Stranica za postavljanje trebala bi se pojaviti čim instalirate proširenje ili kliknite ikonu u gornjem desnom kutu Chromea i kliknite Opcije.
  • Dajte imenu profilu što god želite. Pod ručnom konfiguracijom postavite SOCKS host na 127.0.0.1, a port na 8080 (ili sve što ste postavili za tunel u PuTTy. Sve ostalo ostavite prazno.
  • Pritisnite Spremi, a zatim ponovo kliknite ikonu da biste odabrali svoj proxy profil.

obfsproxy krom proxy preklopnik

Sada se povezajte s vašim poslužiteljem prvo pomoću PuTTy pomoću gornje konfiguracije, a zatim s VPN-om koristeći novu konfiguracijsku datoteku koju smo stvorili.

Sada ste povezani s Internetom putem OpenVPN-a preko SSH-a!

Mobilni

Objasnit ćemo vam kako prilagoditi svoj OpenVPN + SSH tunel za Android, iako iOS ne bi trebao biti tako različit.

Prije nego što započnemo, postoji nekoliko upozorenja. Prvo, ova metoda funkcionira samo za pregledavanje web stranica. To je zato što, za razliku od radne površine, na uređaju sa sustavom Android ili iOS ne možete jednostavno otvoriti portove, po želji. To znači da portovi koje koriste druge aplikacije neće biti usmjereni putem SSH proxyja. Da biste to riješili, možete korijeniti ili zatvoriti uređaj i upotrijebiti aplikaciju poput ProxyDroid ili Cydia Unix aplikacije za konfiguriranje proxyja.

To je tutorial za kasniji dan. Za sada neka se pokrene i pokrene na Android Androidu s Firefoxom. Trebat ćete instalirati sljedeće aplikacije:

  • OpenVPN za Android (napomena: NE OpenVPN Connect, što je izbirljivije u vezi s autentifikacijom)
  • ConnectBot ili ekvivalentna aplikacija SSH terminala (JuiceSSH je dobar, ali troši mnogo više za slanje portova)
  • Upravitelj datoteka kao što je File Commander
  • Firefox ili neki drugi preglednik koji vam omogućuje konfiguriranje proxyja

Trebat će vam i neka sredstva za prijenos datoteka s računala na telefon. USB kabel je u redu. Koristio sam mapu za sinkronizaciju IBackupa.

Pronađite svoju ovpn.key i .ovpn konfiguracijsku datoteku koju ste prethodno stvorili na radnoj površini i premjestite ih na internu pohranu ili SD karticu vašeg telefona. Također premjestite .pem datoteku s ključevima koju pruža vaš poslužitelj. Vjerojatno se nalazi na istom mjestu kao i vaša .ppk datoteka koju koristite za provjeru autentičnosti s PuTTy. Ako ste ga izgubili, morat ćete izraditi još jedan na nadzornoj ploči Amazon EC2 ili iz usluge poslužitelja za hosting koji koristite.

Po želji možete zgrabiti standardnu ​​.ovpn konfiguracijsku datoteku koju koristite za povezivanje bez SSH-a. Tada možete koristiti svoj VPN sa svim aplikacijama, a ne samo s preglednikom, a korisno je za rješavanje problema.

Postavljanje ConnectBot-a

Pokrenite ConnectBot na svom telefonu. Kliknite tri točke u gornjem desnom kutu i idite na Manage Pubkeys. Kliknite ponovo točke na sljedećoj stranici i kliknite Uvezi. Ovo bi trebalo pokrenuti upravitelj datoteka koji ste instalirali. Pronađite datoteku .pem koju ste upravo premjestili na telefon i odaberite je. Sada bi se trebao pojaviti na popisu javnih ključeva s crvenom bravom pokraj njega. Dodirnite ga tako da postane zeleno. Pritisnite gumb za povratak da biste se vratili na glavnu stranicu na ConnectBotu.

connectbot

U donje terminalno polje pored “ssh” unesite svoje SSH podatke. To bi trebalo izgledati ovako:

EC2 korisnik @: 22

Zamijenite IP adresom vašeg OpenVPN poslužitelja. Dodirnite tipku Enter za SSH na vašem poslužitelju. Sve ovo treba spremiti tako da ga više nećete morati ponovno unositi, ali možda ćete morati ubuduće ponovo prebaciti javni ključ.

Nakon uspješnog povezivanja, ponovo pogodite tri točke i odspojite. Vaš profil trebao bi biti spremljen na početnom zaslonu ConnectBota. Dugo ga pritisnite da otvorite kontekstni izbornik i dodirnite “Edit port forward”. Na sljedećoj stranici dodirnite tri točke i odaberite “Add port forward”.

Dajte mu ime što god želite. Postavite Type na Dynamic (SOCKS) i izvor porta na 8080 (ili sve što je u socks-proxy liniji vaše OpenVPN konfiguracijske datoteke). Dodirnite “stvori port naprijed”.

ConnectBot je spreman za rad, ali još se nećemo povezati. Prvo postavimo OpenVPN.

Postavljanje OpenVPN-a za Android

Pokrenite OpenVPN za Android.

Kliknite na kvadratni gumb sa strelicom usmjerenom prema dolje u gornjem desnom kutu da biste uvezli profil. Dođite do svoje .ovpn konfiguracijske datoteke i odaberite je. Na sljedećoj stranici pritisnite gumb na kojem piše “Odaberi”.

openvpn za android

Ovog puta otvorite svoju datoteku ovpn.key i odaberite je. Pritisnite žuti gumb za spremanje u donjem desnom kutu.

Vaš novi profil sada bi se trebao pojaviti na popisu na početnom zaslonu aplikacije.

Prije povezivanja, još jednom provjerimo vatrozid našeg poslužitelja. Prijavite se na AWS, odaberite Primjene i označite svoj OpenVPN poslužitelj. U polju Sigurnosne grupe kliknite onu koja se koristi za ovu instancu. Kliknite ga desnom tipkom miša i odaberite “Edit Ubound Rules”.

Dodajte prilagođena TCP pravila za priključke 22, 1194 i 8080, prilagođavajući prema potrebi za vašu osobnu konfiguraciju.

Sada je vrijeme za povezivanje. Prvo otvorite ConnectBot. Dodirnite profil koji smo upravo stvorili za SSH na svoj poslužitelj. Provjerite je li pubkey uključen, inače ćete dobiti pogrešku u vezi s zaporkom. Nakon što ste se uspješno povezali, prijeđite na OpenVPN aplikaciju. Dotaknite svoj profil tamo da biste se povezali.

android uspjeh openvpn ssh

Na kraju dnevnika OpenVPN koji iskoči kad se povežete, trebali biste vidjeti poruku koja kaže “POVEZAN, USPJEH”.

Imajte na umu da, budući da koristimo iste .pem i .key datoteke kao na našoj radnoj površini, ove vjerodajnice možete koristiti samo na jednom uređaju. Obavezno prvo niste povezani na radnoj površini. Ako se želite povezati istovremeno na više uređaja, morat ćete generirati nove vjerodajnice (.key i .pem) za svaki.

Konfigurirajte Firefox da koristi proxy

Na kraju, moramo konfigurirati Firefox da koristi proxy. Chrome i Safari na mobilnom uređaju nemaju opcije konfiguracije proxyja, zato preporučujemo Firefox. Pokušajte postaviti proxy u postavkama wi-fi-ja, ali morat ćete ih promijeniti svaki put kad se želite povezati bez proxyja.

firefox proxy config

U traku URL-ova Firefoxa upišite “about: config”. U traku za pretraživanje na toj stranici upišite “network.proxy”. Tako će se pojaviti sva polja koja se bave nama. Unesite sljedeće postavke u navedena polja:

  • mreža.proxy.socks: 127.0.0.1
  • network.proxy.socks_port: 8080 (ili sve što ste postavili u svojoj OpenVPN konfiguraciji i ConnectBot)
  • network.proxy.type: 1

To bi trebao usmjeravati promet preglednika Firefox kroz OpenVPN i SSH. Sada možete surfati webom s mobilnog uređaja putem VPN-a bez straha od dubinskog pregleda paketa!

Ako se želite povezati putem SSH proxyja bez OpenVPN-a, samo SSH povežite na svoj poslužitelj s ConnectBot-om i ne povezujte se s OpenVPN-om. Suprotno tome, možete uvesti svoju osnovnu nes-SSH .ovpn datoteku za konfiguriranje u OpenVPN aplikaciju i povezati se s tim sans SSH proxyjem.

“Tunel” jo.sau licenciran pod CC BY 2.0

About the author

Comments

  1. Croatian:

    Odličan vodič za postavljanje vlastitog VPN poslužitelja koristeći OpenVPN i Amazon EC2 poslužitelj! Međutim, ako se vaš poslužitelj iznenada blokira, postoji nekoliko načina zaobići zaštitne zidove DPI i SPI koje postavljaju korporacije ili vlade koje preti cenzuru. Jedna od mogućnosti je SSH tuneliranje, koje vašu već šifriranu vezu omota u drugi sloj enkripcije, tako da vatrozid ne može razlikovati. Međutim, SSH tuneliranje ima nekoliko nedostataka, kao što je pogodak izvedbe zbog dvostruke enkripcije. Također, neki vatrozidi blokiraju i SSH promet. U tom slučaju, preporučujemo korištenje Obfsproxy, koji kodirani kriptirani promet čini normalnim i nešifriranim. Ovaj vodič pretpostavlja da već imate postavljen funkcionalni OpenVPN poslužitelj i možete se povezati s njim pomoću OpenVPN GUI ili OpenVPN Connect aplikacije. Ako nemate sve što ste postavili, pogledajte prethodni vodič. Slijedite korake u vodiču kako biste postavili OpenVPN preko SSH-a na PC-u.

Comments are closed.