Podnosimy serwer VPN. Część 1: Podstawy

To najbardziej nietypowy artykuł w tym numerze. Jego osobliwością jest to, że próbowałem go opublikować kilka miesięcy temu, ale za każdym razem, gdy przesyłałem numer, zapominałem o tym. Po raz pierwszy zapomniałem go na moim komputerze roboczym. Pomyślałem - wszystko w porządku, opublikuję to później na stronie. „Później” rozrosło się do trzech tygodni. Ten czas nie wystarczył, to było banalnie zapomniane. Kiedy sobie przypomniałem, spojrzałem na kalendarz. To był dopiero początek miesiąca i postanowiłem to opublikować w nadchodzącym numerze. Zapisałem artykuł z pracy na pendrive'a i ... zapomniałem pendrive'a w pracy. Znowu się zepsuł? Nie chciałem odkładać numeru na kolejny dzień, więc splunąłem na tę sprawę i ustawiłem sobie przypomnienie na telefonie. Nie zapomnę następnego numeru, prawda? Jak myślisz, do czasu wydania kolejnego numeru znowu o tym zapomniałem. Tym razem w zwykły sposób. Przyniosłem artykuł do domu, a kiedy zbierałem wszystkie artykuły w stosie do wysłania do projektanta układu, zapomniałem skopiować go z pendrive'a. Powiedz wynik, myślę, że nie jest to konieczne?. Oto taka historia. Najważniejsze, że teraz artykuł jest na swoim miejscu i możesz go w końcu przeczytać. Miłego czytania!

Co to jest VPN?

Nasz magazyn jest czytany przez wielu nowicjuszy w sprawach komputerowych, więc uważam, że moim obowiązkiem jest zacząć od najbardziej podstawowego – od definicji VPN. Zajmowanie się technologią bez znajomości podstaw nie prowadzi do niczego dobrego. Lepiej poruszać się stopniowo.

VPN to skrót od Virtual Private Network, lub w języku rosyjskim - „Virtual Private Network”. Istotą tej wspaniałej technologii jest to, że pozwala organizować sieci / wiele połączeń sieciowych na szczycie innej sieci. Druga sieć zwykle odnosi się do Internetu, ale zwykła sieć również może pełnić tę rolę.

Jeśli istnieje sieć, przez którą możemy już połączyć się ze zdalnym komputerem/komputerami, to po co zawracać sobie głowę VPN? W rzeczywistości wszystko jest proste. Przede wszystkim jest to bezpieczeństwo, połączenia VPN są bezpieczne, ponieważ cały ruch między nimi jest szyfrowany. Dlatego nawet jeśli atakującemu uda się przechwycić Twój ruch, nie wyciągnie z niego niczego użytecznego. Tak więc kluczowym punktem korzystania z VPN jest bezpieczeństwo.

Rozważ inną niezwykle ważną sytuację. Wyobraź sobie, że musisz połączyć się z siecią firmową z domu. Jak to zrobić? Jeśli mówimy o połączeniu z jednym komputerem, to zadanie można rozwiązać banalnie za pomocą narzędzi do zdalnej administracji, których jest teraz bardzo dużo. Uderzającym przykładem takich narzędzi jest znane już wielu - Remote Administrator lub, jak mówią ludzie: "Radmin". Instalujesz część serwerową na komputerze, z którym będziesz się łączyć, a klienta instalujesz dla siebie. Wszystko jest genialnie proste i w zasadzie bezpieczne, ponieważ. Radmin dobrze szyfruje swój ruch, więc atakujący ponownie nie ma szczęścia.

Korzystanie z VPN nie ogranicza się w żaden sposób do tworzenia dostępu do sieci zdalnych. Technologia ta jest obecnie wykorzystywana przez wielu dostawców usług internetowych. Na przykład mój dostawca zapewnia bezpłatny dostęp do zasobów sieci lokalnej, a aby uzyskać dostęp do Internetu, musisz nawiązać połączenie VPN.

Ogólnie rzecz biorąc, VPN umożliwia udostępnianie połączeń trzech typów - węzeł-węzeł, węzeł-sieć i sieć-sieć. Zawsze możesz przeczytać więcej na ten temat w Internecie. Jeśli nie możesz znaleźć literatury - skontaktuj się ze mną, podzielę się przydatnymi linkami.

Tunele VPN

Można było zobaczyć to zdanie w różnej literaturze, a zwłaszcza w czasopiśmie] [aker. Wielokrotnie opisywał niuanse tworzenia i niestandardowego wykorzystania tej technologii. Jeśli interesuje Cię hacking i bezpieczeństwo, polecam odwiedzić oficjalną stronę magazynu i zajrzeć do pliku elektronicznego. 100%, że znajdziesz wiele ciekawych rzeczy.

Wróćmy do naszych królików. Auć! Miałem na myśli tunele VPN. Tak więc zwyczajowo nazywa się tunele VPN kanałem, który powstał w wyniku połączenia klienta VPN z serwerem VPN. Wiesz już, że takie połączenie jest bezpieczne, a wszystkie przesyłane przez nie dane są bezpiecznie szyfrowane. Jeśli widziałeś różne podręczniki uniwersyteckie w sieciach, zwykle używają one terminu „kanał punkt-punkt”. Koncepcje „tunel VPN” i „kanału punkt-punkt” są identyczne i możesz użyć dowolnego. W całym artykule będę używał dokładnie „tunelu VPN”. Lubię to bardziej.

rówieśnicy, ale ci z torrentów

Innym ważnym terminem w dziedzinie VPN są peery (węzeł). Ci, którzy używają trackerów torrentów, prawdopodobnie są świadomi znaczenia tego słowa w tym środowisku. W VPN termin ten odnosi się do komputerów, które nawiązały połączenie VPN. Tych. kiedy nawiązujesz połączenie VPN ze swojego komputera, możesz bezpiecznie nazywać się peerem.

Trochę o szyfrowaniu

Szyfrowanie jest jednym z kluczowych punktów sieci VPN. Temat jest wystarczająco obszerny i można na jego temat napisać więcej niż jeden solidny artykuł. Nie będę wdawał się w szczegóły i powiem tylko, że za szyfrowanie odpowiadają obaj peery, którzy ustanowili tunel. Na przykład mamy dwie sieci połączone przez bramy VPN. Schematycznie model ten można przedstawić w następujący sposób:

Sieć A -> Bramka VPN A -> INTERNET -> Bramka VPN B-> Sieć B.

W tym scenariuszu algorytm będzie następujący. Dane z sieci A są przesyłane do bramki VPN A całkowicie bez zmian. Następnie (już na bramce) są szyfrowane i przesyłane przez tunel VPN, przekazywane dalej przez niezabezpieczoną sieć. W moim przykładzie niezabezpieczoną siecią jest INTERNET. Po otrzymaniu zaszyfrowanego zestawu danych, brama VPN B odszyfruje go i wyśle ​​czysty zestaw do sieci B. Na podstawie powyższego wnioskujemy, że dane pozostają zaszyfrowane tylko podczas ich transmisji przez tunel VPN. Po zakończeniu dostawy dane nie są już szyfrowane.

Należy pamiętać, że szyfrowanie wpływa na cały pakiet IP. Zastępowane są również same nagłówki pakietów (tj. adres nadawcy i adres docelowy). Nowe adresy docelowe i źródłowe będą adresami bramy VPN. W ten sposób podczas przechwytywania pakietu możliwe będzie określenie jedynie adresów bram VPN, a nie adresów końcowych klientów sieci wewnętrznej.

Trochę o zasadach VPN

Ogólnie rzecz biorąc, wszystkie sieci VPN przestrzegają kilku ogólnych zasad:

1. Identyfikacja węzłów przed utworzeniem tunelu VPN.

2. Ustalenie dla obu klientów listy dozwolonych protokołów szyfrowania danych. Rozumiesz, że jeśli użyję algorytmu DES, a ty użyjesz AES, to po prostu się nie zrozumiemy i nie będziemy mogli wymieniać danych. Dokładniej, możesz wymienić, ale nie możesz odszyfrować.

3. Po zakończeniu weryfikacji zastosowanych algorytmów szyfrowania (oczywiście, jeśli się powiodła) zostanie utworzony klucz. W przyszłości będzie wykorzystywany w algorytmie symetrycznym do szyfrowania/odszyfrowywania pakietów danych.

Chodź, poćwiczmy

Przekazałem wam najpotrzebniejszą teorię, a teraz trzeba by było spróbować wszystkiego w praktyce. Kiedy pisałem pierwszą wersję artykułu, całkowicie poświęciłem ją konfiguracji serwera VPN na Kerio WinRoute. Oczywiście mogłem to zrobić - zostawić wszystko tak, jak jest i niczego nie zmieniać, ale ostatniego dnia przed złożeniem tego numeru postanowiłem wygospodarować kilka godzin i urozmaicić informacje. Zacznij od najprostszego przykładu, który z pewnością przyda się początkującym, a w dalszej części artykułu rozważymy bardziej konkretne rzeczy, takie jak podniesienie serwera VPN za pomocą OpenVPN i Kerio Winroute. Zacznijmy więc od najprostszego przykładu – zorganizowania tunelu VPN między dwoma komputerami z systemem Windows XP. Ważny punkt. Nie będę używał żadnego dodatkowego oprogramowania. Wszystko zostanie zrobione standardowymi środkami.

Tunel VPN dla Windows XP

Jak powiedziałem, zacznijmy od najprostszego. Niewiele osób wie, że Windows XP ma wbudowany serwer VPN. Czy czujesz, jak pachnie? Możesz łatwo tunelować do zdalnego komputera i korzystać ze wszystkich radości VPN.

Nie zwlekajmy jeden po drugim, ale przejdźmy do rzeczy. Najpierw nauczmy się akceptować zewnętrzne połączenia VPN, tj. Przygotujmy serwer VPN. Usiądź przy komputerze, który będzie działał jako serwer i wykonaj następujące czynności.

1. START -> Ustawienia -> Połączenia sieciowe.

2. Uruchom Kreatora nowego połączenia.

3. W pierwszym oknie (patrz rysunek 1) wybierz element: "Ustaw bezpośrednie połączenie z innym komputerem" i kliknij "Dalej".

4. W kolejnym oknie (Rysunek 2) dokonaj wyboru na korzyść „Akceptuj połączenia przychodzące”. Kliknij Następny".

5. W następnym oknie (Rysunek 3) kreator tworzenia nowego połączenia zapyta „Zezwalać na wirtualne połączenia prywatne czy nie?”. Właściwie będziemy akceptować połączenia, więc wybieramy „Zezwól”. Następnie kliknij „Dalej”. Prawdopodobnie twoje okno będzie wyglądać inaczej niż na rysunku 3. Nie zwracaj na to uwagi, ale po prostu kliknij „Dalej”. Następne okno powinno wyglądać tak, jak powinno.

6. W kolejnym oknie (Rysunek 4) należy zdefiniować użytkowników, którzy mogą się łączyć. Wybierz z listy istniejących lub utwórz nowe. Nie zapomnij, utwórz użytkownika - ustaw hasło. Kiedy skończysz, kliknij „Dalej”.

7. Nasze wysiłki są bliskie zakończenia. W kolejnym kroku musimy skonfigurować parametry sieci. Możesz zostawić wszystko tak, jak jest. Jedyne, co jest wymagane, to skonfigurowanie protokołu TCP/IP. Wybierz ten element i kliknij przycisk „Właściwości”. Przed tobą pojawi się okno jak na rysunku 5. Ustaw w nim flagę „Zezwalaj rozmówcom na dostęp do sieci lokalnej”. Zaznacz pole "Określ wyraźnie adresy TCP/IP". Następnie zapisz zakres „od” i „do”. Podałem tutaj następującą opcję: 192.168.1.40-192.168.1.50. Wszyscy klienci, którzy się z nami połączą, otrzymają adresy IP z tego zakresu. Tak więc prawie wszystko pozostaje tylko odznaczyć pole „Zezwól dzwoniącemu na określenie swojego adresu IP”. Teraz to wszystko na pewno. Kliknij OK, a następnie Dalej.

8. Kolejny krok kreatora jest czysto formalny i wystarczy kliknąć przycisk „Dalej”.

To wszystko, teraz nasz serwer VPN jest gotowy do przyjmowania połączeń. Zauważ, że nie musieliśmy robić nic trudnego. Zobaczmy teraz, jak możesz połączyć się z tym serwerem z innego komputera. Wymaga to jeszcze mniej kroków:

1. Uruchom znanego już Kreatora nowego połączenia. Po pierwszym kroku informacyjnym wybierz „Połącz z siecią w miejscu pracy” (Rysunek 6). Kliknij Następny.

2. Teraz musisz wybrać rodzaj połączenia, które chcesz utworzyć. Dostępne są dwie opcje:
- Połączenie zdalnego dostępu
- Łączenie się z wirtualną siecią prywatną.
Nietrudno zgadnąć, że interesuje nas druga opcja (rysunek 7).


3. Tutaj musimy wpisać nazwę połączenia. Wpisz tutaj dowolną nazwę. Nie ma różnicy od tego. Ponownie kliknij „Dalej”.

4. Na tym etapie kreator poprosi o podjęcie decyzji: „Czy musisz połączyć się z siecią publiczną przed nawiązaniem połączenia VPN. Na przykład, jeśli serwer VPN znajduje się w Internecie, najpierw musisz nawiązać połączenie z Internetem, a dopiero potem spróbować połączyć się z serwerem VPN. Dla siebie wybrałem opcję „Nie wybieraj numeru przed połączeniem”.

5. To jest ostatni krok. Tutaj musisz wprowadzić adres IP serwera VPN. Mój serwer VPN jest w sieci lokalnej i ma adres 192.168.1.33. To wszystko, kliknij „Dalej”, a potem gotowe.

Spróbuj przetestować nasze połączenie. Jeśli wszystko zrobiłeś poprawnie, to połączenie zostanie nawiązane, a otrzymasz adres IP ze zdefiniowanego przez nas zakresu. Możesz wykazać się umiejętnościami i udostępniać Internet na komputerze serwera. Dzięki temu będziesz mieć możliwość surfowania po Internecie za pośrednictwem bezpiecznego połączenia.

Łączenie zakończone

To wszystko na dzisiaj. Poeksperymentuj z nawiązanym połączeniem - spróbuj znaleźć dla niego praktyczne zastosowanie (na przykład zorganizować dostęp do Internetu dla klienta VPN), a w następnym numerze opowiem o konfiguracji i praktycznym wykorzystaniu OpenVPN. Powodzenia w twoich badaniach.

Napisane przez Igora Antonova aka Spider_NET