Raspberry Pi – serwer VPN – cz. 1

DSPDSW moim projekcie CyberHome wykorzystuję m.in. Raspberry Pi, Raspberry działa 24h/ dobę i ma ciągłe połączenie z siecią. Chciałbym wykorzystać go do dostępu z dowolnego miejsca na świecie do mojej sieci domową zapewniając sobie przy tym pełne bezpieczeństwo komunikacji.

Co to jest VPN i jakie ma zalety?

Krótko: VPN to wirtualna siec prywatna – po połączeniu z nią mamy możliwość tunelowania całego (bądź wybranego fragmentu) naszego ruchu sieciowego.
Sieć taka jest przezroczysta dla pakietów (pakiety nie mają wiedzy, że są przesyłane przez VPN). W praktyce oznacza to, że mogę przebywając w Wiedniu mogę połączyć się za pomocą klienta VPN z moim komputerem w Warszawie zestawiając pomiędzy np. laptopem (tabletem, telefonem, ect.) w Wiedniu, a serwerem VPN w Warszawie tunel.

Cała komunikacją biegnąca tunelem jest szyfrowana, dane wychodzą z tunelu dopiero w Warszawie, co oznacza, że jeśli sieć w Wiedniu jest niebezpieczna (np. publiczne WiFi w hotelu) lub niepewna z innych względów (np. ryzyko podsłuchów) – zakładając poprawną konfigurację VPNa i stosując się do podstawowych zasad bezpieczeństwa – mam pełne zabezpieczenie poufności transmisji.

Być może wielu z Was słyszało o VPNie po zaostrzeniu przez obecny polski rząd uprawnień „służb związanych z przymusem bezpośrednim” 🙂 w zakresie podsłuchu komunikacji elektronicznej.
Zakładając, że mamy serwer VPN w Brazylii, a mieszkamy w Polsce: podobnie jak w poprzednim przykładzie – nasza komunikacja pomiędzy Polską, a Brazylią jest szyfrowana i nieosiągalna dla Polskich instytucji.
Oczywiście istnieją metody zmuszenia użytkownika do ujawnienia się, nie bazują one jednak na niedołężności, czy lukach  VPNu tylko – głównie – na nieprzestrzeganiu zasad bezpiecznej komunikacji przez nieświadomych użytkowników.

Podsumowując. Jak działa komunikacja poprzez VPN?

Ostatni przykład:

  • Jestem w Madrycie i mam laptopa podłączonego do hotelowego WiFi.
  • Chce połączyć się ze stroną http://www.cnn.com na serwerze w Waszyngtonie.
  • Mam serwer VPN na Raspberry PI w Warszawie.

Łącze się z Madrytu poprzez VPN z Warszawą i włączam na laptopie na stronę http://www.cnn.com (bez szyfrowania SSL).
Komunikacja między Madrytem a Warszawą jest tajna (tunelowana i szyfrowana przez VPN), komunikacja pomiędzy Warszawą a Waszyngtonem jest jawna (chyba, że cnn.com obsługuje SSL wtedy – ta część komunikacji również będzie szyfrowana).

Moje użycie

VPN potrzebny jest mi do prostszego zadania. Mój Raspberry znajduje się za NATem (zestawionym na routerze mojego ISP), dodatkowo w domu mam PCta, chcę móc go włączyć zdalnie za pomocą WoL i zalogować się na niego poprzez RDP.

Przypadek dość prosty i bardzo użyteczny: jestem w podróżny z laptopem, chcę poprogramować, na laptopie nie daje jednak rady – jest zbyt wolny; łączę się z VPNem, uruchamiam domowego PCa, łącze się z nim Pulpitem Zdalnym (lub TeamViewerem, VNC, lub czymkolwiek innym) i działam!
Laptop ogranicza się tylko do transmitera obrazu (prawie jak terminal), działa to dość płynnie i można w ten sposób pracować (choć milisekundowe opóźnienia niestety  występują – jest więc nieznacznie mniej wygodnie niż developowanie na localhoście).

Oczywiście bezpośrednie połączenie (p2p) z moim dekstopem jest niemożliwe, ponieważ nie ma on publicznego IP – do tego potrzebny jest VPN.

Inny wartość to bezpośredni dostęp do mojego RaspberryPi i bezpieczne połączenie z sercem mojego Cyfrowego Domu.


W kolejnym artykule omówię jak poprawnie skonfigurować VPN na Raspberry PI i uruchomić go. Będzie można łączyć się zarówno z komputera klasy PC jak i z telefonu komórkowego z systemem Android (prawdopodobnie iOS też da radę, choć nie miałem okazji sprawdzić).


Artykuł ukazuje się w ramach projektu CyberHome tworzonego w ramach akcji DajSięPoznać.

Jedna odpowiedź do “Raspberry Pi – serwer VPN – cz. 1”

  1. Witam,
    Do tekstu wkradła się mała (naprawdę niewielka) ale jednak nieścisłość. Oprogramowanie TeamViewer dzięki wykorzystaniu serwera pośredniczącego bez problemu radzi sobie z NAT i nie potrzebuje vpn. Użycie VPN w jego przypadku znacznie wydłuży tylko drogę pakietów, a dodatkowo i tak nie zabezpieczy nas przed największą „wadą” tego oprogramowania czyli zgodą aby cały ruch przechodził przez serwery 3 firmy.
    Pozdrawiam

Leave a Reply