środa, 11 grudnia
Shadow

Rapberry Pi – własny serwer VPN

Co raz częściej pojawia się temat dotycząc prywatności jak i zagrożeń bezpieczeństwa w Internecie. Coraz więcej osób zaczyna korzystać z VPN (Virtual Private Network, wirtualna sieć prywatna) w swoich sieciach domowych jak i smartfonach oraz tabletach. Prosto mówiąc jeżeli jesteś podłączony do publicznej sieci WiFi np. w centrum handlowym, każdy może zobaczyć twoje dane, jeśli używasz VPN, wszystkie twoje dane są szyfrowane przez prywatny tunel i jesteś podłączony bezpośrednio do sieci domowej. VPN są bardzo popularne w biznesie i najprawdopodobniej używasz ich do pracy, a nawet nie wiesz dlaczego. Głównym powodem jest bezpieczeństwo jak i dostęp do lokalnych plików.

Z racji tego, że mam wolne i leżące odłogiem Raspberry Pi postanowiłem wykorzystać je jako serwer VPN. Dzięki własnemu serwerowi Raspberry Pi VPN będziesz mógł łączyć się z publicznymi sieciami Wi-Fi i mieć pewność, że twoje dane są bezpieczne. Jednocześnie po połączeniu z własnym serwerem VPN będziesz mieć dostęp do wszystkich plików które masz w domu.

Co nam będzie potrzebne:

– Raspberry Pi np. 3B plus
– karta μSD minimum 8GB
– Raspbian Stretch Lite
– PiVPN (instalację opisze poniżej)

Pierwszą czynnością jaką należy wykonać jest aktualizacja naszego systemu (wszystkie czynności wykonuje z konta root) w tym celu wpisujemy w konsoli:

apt-get update && apt-get upgrade -y

VPN raspberrypi

Po wykonaniu aktualizacji systemu przystępujemy do instalacji PiVPNa w tym celu wpisujemy w konsoli

curl -L https://www.tranzystor.pl/pliki/raspberry/pivpn/install.sh | bash

lub

curl -L https://install.pivpn.io | bash

Po uruchomieniu powyższego polecenia powinieneś otrzymać po kilku minutach okno widoczne poniżej, naciśnij enter, aby kontynuować proces.

raspberrypi VPN istalacja

raspberrypi VPN istalacja

Następnie jeżeli mamy skonfigurowany Ethernet oraz WiFi pokaże się nam okno z prośbą o wybranie interfejsu sieciowego, którego chcesz użyć. Ja nie mam skonfigurowanego WiFi użyje połączenia Ethernet w tym przykładzie, który jest oznaczony eth0. Sugeruję użycie połączenia ethernetowego, ponieważ będzie działało o wiele szybciej. Po wybraniu interfejsu sieciowego pojawi się pytanie, czy chcesz skonfigurować interfejs, pamiętaj aby miał statyczny adres IP. Zapewni to, nam wygodę iż po resecie routera twój adres IP nie ulegnie zmianie.

raspberrypi VPN istalacja

Następny krok poprosi o wybranie użytkownika, który będzie miał ustawienia konfiguracyjne PiVPN. Jeśli utworzyłeś innych użytkowników w swoim systemie, możesz wybrać ich tutaj. Ja nie posiadam dodatkowych korzystam z domyślnego (hasło wiadomo zmienione).

raspberrypi VPN istalacja wybór użytkownika

Kolejny z kroków a zarazem ważny. Jest on o tyle ważny, że będziemy otwierać porty na naszym routerze, aby móc przekierować ruch do naszej maliny z zewnątrz. Pamiętaj otwieraj tylko te porty które będziesz używał nigdy więcej niż potrzeba, otwierając za dużo możesz narazić się na ataki. Nie ma ci się śmiać jednak wystawiamy nasze urządzenie na świata. Pamiętaj aby zawsze ale to zawsze ustawiać silne hasło silne hasła dla użytkowników lub skorzystaj z naszego generatora -> generator haseł. Będziesz też miał możliwość wyboru zautomatyzowanych aktualizacji systemu zalecam z nich skorzystać, pamiętaj jednak aby raz na jakiś czas uruchomić ponownie malinę.

raspberrypi VPN istalacja automatyczne aktualizacje

Po włączeniu automatycznych aktualizacji zabezpieczeń pojawi się następujący ekran konfiguracji PiVPN.

raspberrypi VPN istalacja automatyczne aktualizacje

Następnie mamy do wyboru z jakiego protokołu chcemy korzystać mamy do wyboru UDP lub TCP ja osobiście wybieram TCP

raspberrypi VPN istalacja wybór protokołu TCP

W następnym kroku wybieramy nasz port dla naszych połączeń VPN. Domyślny port to 443. Jak ja wybieram zupełnie inny port, w moim przypadku będzie to 1001. Moja sugestia zmienia to w celu zwiększenia bezpieczeństwa. Zmiana portu nie zmieni serwera w Fort Knox, ale nie pojawi nie pojawi się w domyślnie skanach portach na twoim adresie IP, zakładając, że atakujący skanuje tylko domyślne porty.

raspberrypi VPN istalacja wybór portu

Następnie zostaniemy poproszeni o potwierdzenie naszego wyboru.

raspberrypi VPN istalacja wybór portu

Następnym krokiem jest ustawienie rozmiaru klucza szyfrowania. Sugeruję szyfrowanie 256 bitowe tylko dlatego, że jest wystarczająco bezpieczne. Ja w ramach eksperymentów wybieram 521 bit ;).

raspberrypi VPN istalacja wybór szyfrowania

Na następnym ekranie zobaczymy proces generowania klucza. Wygenerowanie zajmie kilka minut. Raspberry Pi 3B plus zajęło mi około 2 minut. Po ukończeniu resetujemy naszą malinę.

W następnym kroku mamy do wyboru opcje prywatnego zewnętrznego IP lub DNS ja wybieram swój zewnętrzny. Z wiadomych przyczyn adres usmołem połowę swojego adresu IP 😉

raspberrypi VPN istalacja IP

Następnie zostajemy poproszeni o wybór serwera DNS dla naszych użytkowników VPN ja korzystam z OpenDNS.

raspberrypi VPN istalacja wybór serwera DNS

Na sam koniec resetujemy naszą malinę.

raspberrypi VPN istalacja koniec

Po restarcie przystępujemy do dodawania użytkowników oraz ustawianie i hasła pamięta o nadaniu silnego hasła zalecam korzystać z generatora haseł.

pivpn add

W pieszej linii podajemy nazwę użytkownika w następnej hasło.

raspberrypi VPN doswanie użytkownika

Plik konfiguracyjny który należy zaimportować do openvpn którego możemy zainstalować na PC jak i telefony. Oczywiście plik znajdziecie w

/home/pi/ovpns

W razie pytań piszcie w komentarzach.

5/5 - (3 ocena/y)

18 Comments

  • Leet

    Przy konfiguracji podprotokołu VPN wybiera Pan TCP mimo że jest to odradzane w wiadomości na górze. TCP w VPN może powodować spore problemy przy połączeniach z dużym pingiem, zazwyczaj jest preferowany protokół UDP ponieważ TCP komunikujemy się już w samym VPN więc nie ma potrzeby na taką nadmiarowość. Proszę sprawdzić sobie termin „TCP Meltdown”.

  • Wojtek

    Witam,
    czy jest możliwość zmiany hosta w pivpn? Czy muszę przeinstalować vpn?
    Ponieważ w noip wygasł mi host i muszę go zmienić.

  • Tomek

    Witam, cały proces przebiega bez komplikacji prócz ostatnich pkt. tj. polecenie pivpn add nie działa (bez różnicy czy samo, w ” ” czy ’ ’). Katalog /home/pi/ovpns również u mnie nie istnieje.
    Wcześniej konfigurowałem OMV, po którym użytkownikiem nie jest pi tylko root ( konfiguracja zgodnie z tym przewodnikiem z pclab.pl). Podpowiedzcie proszę co i jak mogę zmienić

  • Krzysiek

    Witam
    Z racji z poczatkowego etapu zaineresowania Raspberry pytań mam wiele ale będę się uzewnętrzniał stopniowo ;). Na chwilę obecną zainteresowany jestem wykorzystaniem Raspberry do multimediów i VPN. Więc pierwsze pytania któe mi się cisną do głowy wyglądają następująco:
    1. Wydaje mi się, że ze względu całkiem odmienne funkcje będę potrzebował dwóch urządzeń ale proszę o potwierdzenie moich domysłów.
    2. w celu optymalizacji kosztów zastanawia się mnie jaki najniższy model Raspberry można wykorzystać do VPN i w sumie pojawiła się nowa nazwa PiHoll więc pewnie to też będę wrzucał po zapoznaniu się z tematem. Do multimediów wydaje mi się sprawa prosta (tym bardziej że czytałem także o mozliwości wykorzystania go jako emulatora gier) im nowszy i mocniejszy tym lepiej więc chyba będę oceniał swoje możliwości finansowe w momencie gdy zaprzyjaźnię się bardziej z budową Raspberry i dokładnie ocenie swoje potrzeby.
    3. Teraz pytanie bardziej ogólne: prywatny VPN wydaje się lepszy jeśli chodzi o dostęp i przesyłanie swoich plików lub korzystania z internetu (banki, poczty itd) – nie ma firmy zewnętrznej która udostępnia nam serwery VPN i teoretycznie może w jakiś sposób zbierać informacje. Pytanie dodatkowe rodzi się w przypadku multimediów – czy postawiony przezemnie serwer VPN pozwoli na np ominięcie regionalizacji Netlixa, HBO czy korzystanie w sposób bezpieczny z innych programów multimedialnych które można zainstalować na Raspberry, czy takie zastosowanie i tak będzie wymagało skorzystania z usług któregoś z ogólnodostępnych VPN (i raczej myślę o płatnych opcjach). Pozdrawiam

    • 1. Można jednak osobiście oddzielam rozrywkę od bezpieczeństwa zalecam 2 maliny
      2. Piholl i VPN lata spokojnie razem mam tak skrojonego
      3. nie ominiesz geolokalizacji gdyż VPN przedstawi się twoim zewnętrznym IP musiał byś mieć VPN na adresie IP w innym regionie.

  • Wojciech

    Witam mam 2 malinki 1 w domu na publicznym IP zaś 2 na działce Bez publicznego adresu IP
    Chciałbym mieć dostęp na działkę do swojego raspberry pi bezpośrednio przez opisany serwer vpn na malinie. Rozumie że takie rozwiązanie zda egzamin. P.S. Obie maliny mają system automatyki domowej Domoticz i chcę złączyć przez Domoticz – Remote Server dodatkowo do połączenia ssh

  • Darek_S

    Czy zadziała jak przekieruję na routerze port 1001 na ip malinki. Przez co nie trzeba wystawiać Malinki na ataki z neta. Czy Malinka w tym samym czasie jest w stanie obsłużyć serwer www i ftp ?

  • Łukasz

    Czy to zadziała, jeśli router nie ma publicznego adresu IP, tylko znajduje się w sieci wewnętrznej (NAT), np. sieć osiedlowa?

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *


Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.