Jaki VPN? Własny - OpenVPN w 5 minut ⋆ OpenSecurity.pl (2024)

Jaki VPN wybrać – to często pojawiające się pytanie wśród osób, które chciałyby zadbać o swoją prywatność korzystając z Internetu. Dostawcy płatnych usług VPN zapewniają nas, że własną piersią będą bronić naszej prywatności, nie będą nas śledzić i nikomu nie udostępnią logów z naszej aktywności. Często jednak okazuje się, że rzeczywistość jest zgoła inna, a logi na żądanie organów ścigania udostępniają nawet ci, którzy zarzekali się, że w ogóle tych logów nie przechowują. Polecam w tym temacie świetny webinar Adama Haertle z Z3S, który rozprawia się z obietnicami dostawców VPN.

Mając na uwadze powyższe postanowiłem pokazać Wam w jaki sposób można uruchomić własny serwer VPN, nad którym to my będziemy mieli kontrolę. Tytułowe 5 min. zajmie nam instalacja i konfiguracja serwera VPN bazującego na Linuksie i oprogramowaniu OpenVPN. Musimy jednak mieć już jakiś serwer linuksowy działający w chmurze. Jeśli takowego nie posiadacie, poniżej podpowiem również jak sobie z tym poradzić.

Jaki serwer do VPN?

Możecie skorzystać z dowolnego dostawcy usług chmurowych, który pozwoli Wam w prosty sposób uruchomić serwer z Linuksem. Osobiście polecam Amazon AWS, ponieważ jako nowy klient dostajemy na rok darmową pulę zasobów do wykorzystania (tzw. free tier). W jej ramach możemy wykorzystać 750 godzin pracy serwera typu t2.micro miesięcznie (czyli może on pracować 24 godz. na dobę jeśli nie uruchamiamy innych serwerów). Maszyna typu t2.micro posiada 1 procesor oraz 1GB RAM-u, co w zupełności wystarczy na nasze potrzeby. Uruchamiając ją możemy wybrać jeden z wielu obrazów systemu. Osobiście preferuję Debiana lub Ubuntu. Po upływie roku koszt pracy maszyny t2.micro będzie wynosił około 1 centa na godzinę, czyli w dużym przybliżeniu 1zł / dzień. Możemy go zoptymalizować wyłączając np. serwer na noc lub włączając go tylko wybierając się w podróż, podczas której będziemy używać VPN-a. Możemy też założyć nowe konto w AWS korzystając z innego maila i karty 🙂

Jaki system do OpenVPN?

Sposób instalacji, który opisuję poniżej najlepiej sprawdzi się na systemach z rodziny Debian i Ubuntu, ale powinien też zadziałać dla Fedory i CentOS-a. Ja własną instalację przeprowadziłem na Kali Linux, ponieważ taki serwer miałem już uruchomiony w AWS i wymagało to tylko jednej drobnej poprawki, o czym wspomnę niżej.

Instalacja i konfiguracja OpenVPN

OpenVPN w każdej chyba popularnej dystrybucji Linuksa dostępny jest do instalacji z pakietów lub nawet preinstalowany w systemie. Jeśli go nie mamy, to w przypadku Debiana / Ubuntu / Kali wystarczy jedno polecenie:

apt-get install openvpn

Nieco więcej zachodu wymaga konfiguracja serwera oraz wygenerowanie kluczy dzięki którym będziemy się mogli logować z użyciem certyfikatu, bez podawania loginu i hasła. Na szczęście z pomocą przychodzi nam tutaj gotowy skrypt, który wykona całą pracę za nas. Musimy go jedynie pobrać z Githuba, zapisać:

wget https://git.io/vpn -O openvpn.sh

a następnie nadać atrybut wykonywalności i uruchomić jako root:

chmod a+x openvpn.shsudo ./openvpn.sh

W pierwszej fazie skrypt zapyta nas o kilka parametrów, które w większości przypadków wystarczy zatwierdzić z wartością domyślną wciskając enter:

Welcome to this OpenVPN road warrior installer!This server is behind NAT. What is the public IPv4 address or hostname?Public IPv4 address / hostname [x.x.x.x]: Which protocol should OpenVPN use? 1) UDP (recommended) 2) TCPProtocol [1]: 1What port should OpenVPN listen to?Port [1194]: Select a DNS server for the clients: 1) Current system resolvers 2) Google 3) 1.1.1.1 4) OpenDNS 5) Quad9 6) AdGuardDNS server [1]: 2Enter a name for the first client:Name [client]: kubaOpenVPN installation is ready to begin.Press any key to continue...

Uwaga: jeśli uruchamiacie skrypt na Kali Linux, musicie na chwilę zmienić zawartość pliku /etc/debian_version tak, by w jego pierwszej linii pojawiła się wartość „9”. Skrypt sprawdza po prostu czy używana wersja Debiana jest wyższa od 9 i nie wie, że Kali Linux ten wymóg spełnia.

Po potwierdzeniu, że chcemy kontynuować skrypt pobierze pakiet easy-rsa, przy pomocy którego wygeneruje klucze i certyfikaty, a następnie stworzy pliki konfiguracyjne dla serwera i klienta. Całą operację zakończy informując gdzie został zapisany plik konfiguracyjny klienta:

Finished!The client configuration is available in: /root/kuba.ovpnNew clients can be added by running this script again.

Powyższy plik musimy przekopiować na swój komputer aby móc go zaimportować podczas konfiguracji klienta. Pozostałe pliki konfiguracyjne i klucze umieszczone zostaną w katalogu /etc/openvpn/server. Pozostaje nam więc tylko uruchomienie serwera OpenVPN:

sudo service openvpn start

Skrypt konfiguracyjny domyślnie dodaje do reguł w lokalnej zaporze (iptables lub firewalld) zgodę na połączenia przychodzące na port i protokół wskazany podczas instalacji (domyślnie UDP/1194). My musimy dodatkowo zadbać o to, aby ta sama reguła została zdefiniowana na poziomie zapory u naszego dostawcy chmury (o ile takowa występuje). W przypadku AWS-a odpowiednią regułę musimy dodać w zakładce Network & Security -> Security Groups:

Jaki VPN? Własny - OpenVPN w 5 minut ⋆ OpenSecurity.pl (1)

Instalacja i konfiguracja klienta OpenVPN

Jeśli korzystacie z user friendly Linuksa, takiego jak np. Ubuntu, jedyne co musicie zrobić to wejść w ustawienia sieci i dodać nowy profil VPN:

Jaki VPN? Własny - OpenVPN w 5 minut ⋆ OpenSecurity.pl (2)

A następnie zaimportować plik z konfiguracją klienta, który został wygenerowany podczas konfiguracji serwera:

Jaki VPN? Własny - OpenVPN w 5 minut ⋆ OpenSecurity.pl (3)

I to wszystko 🙂

W przypadku Windowsa dodatkowo konieczne będzie pobranie i zainstalowanie klienta OpenVPN ze strony: https://openvpn.net/community-downloads/ . Instalacja nie wymaga żadnego komentarza – typowe next, next, next, done. Po uruchomieniu klienta (na pulpicie powinien się pojawić skrót do OpenVPN GUI) w zasobniku systemowym ujrzymy ikonę OpenVPN:

Jaki VPN? Własny - OpenVPN w 5 minut ⋆ OpenSecurity.pl (4)

Klikając ją prawym przyciskiem myszy za pierwszym razem będziemy musieli wybrać pozycję „Import>” i wskazać plik klienta wygenerowany podczas konfiguracji serwera. A gdy już przeprowadzimy import, w tym samym miejscu będziemy mogli uruchomić nasz VPN wybierając „Połącz”.

Sugeruję jeszcze wejść w ustawienia klienta i zmienić domyślną wartość parametru „Pokaż powiadomienie” na „Przy połączeniu/rozłączeniu”. Dzięki temu będziemy wiedzieć kiedy nasze połączenie VPN zostanie zerwane.

Jaki VPN? Własny - OpenVPN w 5 minut ⋆ OpenSecurity.pl (5)

A jaki VPN jest najlepszy? – działający

Na koniec warto jeszcze się upewnić, że nasz VPN działa. Po zestawieniu połączenia wejdźmy więc na jakąś stronę weryfikującą adres IP, z którego została ona odwiedzona. Np. https://showmyip.com

Jaki VPN? Własny - OpenVPN w 5 minut ⋆ OpenSecurity.pl (6)

Adres IP powinien być zgodny z adresem naszego serwera VPN. W powyższym przykładzie widzimy, że połączenie zostało zidentyfikowane jako wychodzące z Niemiec, a adres IP należy do dostawcy Amazon Technologies.

Zastrzeżenie

Pamiętajcie, że tego typu VPN pozwoli Wam ukryć swoją aktywność przed dostawcą łącza, z którego usług korzystacie w domu, w firmie, czy podczas podróży i łączenia się z hot spotami. Pozwoli też ominąć pewne restrykcje związane z geolokalizacją. Nie zagwarantuje Wam jednak 100% anonimowości. Adres IP waszego serwera w chmurze będzie bowiem powiązany z Waszym kontem klienta u danego dostawcy. Za to konto płacicie zapewne imienną kartą kredytową. Sam VPN (dowolny) to za mało by zapewnić sobie pełną anonimowość i poufność w Internecie.

Natomiast dużą przewagą własnego VPN-a jest to, że połączenia z niego nie będą blokowane przez usługodawców (bądź dyktatorów), którzy nie lubią klientów kryjących się za VPN-em. Serwery znanych dostawców VPN można bowiem zablokować. Gdyby przyszło Wam zwiedzać Rosję bądź Chiny możecie się o tym przekonać na własnej skórze. Połączenia z własnego serwera raczej nikt Wam nie zablokuje. Co więcej, zawsze będziecie mogli wyjaśnić, że łączycie się tylko ze swoją infrastrukturą chmurową – OpenVPN to popularny klient stosowany przez wielu dostawców.

Zostaw e-mail aby otrzymać powiadomienia o nowościach oraz dostęp do wszystkich bonusowych materiałów przygotowanych wyłącznie dla subskrybentów.

Jaki VPN? Własny - OpenVPN w 5 minut ⋆ OpenSecurity.pl (2024)
Top Articles
Latest Posts
Article information

Author: Jamar Nader

Last Updated:

Views: 6144

Rating: 4.4 / 5 (75 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Jamar Nader

Birthday: 1995-02-28

Address: Apt. 536 6162 Reichel Greens, Port Zackaryside, CT 22682-9804

Phone: +9958384818317

Job: IT Representative

Hobby: Scrapbooking, Hiking, Hunting, Kite flying, Blacksmithing, Video gaming, Foraging

Introduction: My name is Jamar Nader, I am a fine, shiny, colorful, bright, nice, perfect, curious person who loves writing and wants to share my knowledge and understanding with you.