Jak zainstalować i skonfigurować OpenVPN na routerze DD-WRT
Omówiliśmy już instalację Tomato na routerze i jak połączyć się z siecią domową za pomocą OpenVPN i Tomato. Teraz zajmiemy się instalacją OpenVPN na routerze obsługującym DD-WRT w celu łatwego dostępu do sieci domowej z dowolnego miejsca na świecie!
Czym jest OpenVPN?
Wirtualna sieć prywatna (VPN) to zaufane, bezpieczne połączenie między jedną siecią lokalną (LAN) a drugą. Pomyśl o swoim routerze jako pośredniku między sieciami, z którymi się łączysz. Zarówno komputer, jak i serwer OpenVPN (w tym przypadku router) "podają sobie ręce" za pomocą certyfikatów, które sprawdzają się nawzajem. Po sprawdzeniu poprawności zarówno klient, jak i serwer zgadzają się na wzajemne zaufanie, a następnie klient ma dostęp do sieci serwera.
Zazwyczaj oprogramowanie i sprzęt VPN kosztuje dużo pieniędzy do wdrożenia. Jeśli jeszcze nie zgadłeś, OpenVPN jest open source'owym rozwiązaniem VPN, które jest (roll roll) darmowe. DD-WRT, obok OpenVPN, jest idealnym rozwiązaniem dla tych, którzy chcą bezpiecznego połączenia między dwiema sieciami bez konieczności otwierania portfela. Oczywiście OpenVPN nie będzie działać od razu po wyjęciu z pudełka. Aby go uzyskać, wystarczy trochę poprawić i skonfigurować. Nie martw się jednak; jesteśmy tutaj, aby ułatwić ci ten proces, więc weź sobie ciepłą kawę i zacznijmy.
Aby uzyskać więcej informacji o OpenVPN, odwiedź oficjalną stronę What Is OpenVPN? strona.
Wymagania wstępne
W tym przewodniku założono, że na komputerze działa obecnie system Windows 7 i że używasz konta administracyjnego. Jeśli jesteś użytkownikiem Maca lub Linuksa, ten przewodnik pokaże Ci, jak to działa, ale możesz zrobić trochę więcej badań samodzielnie, aby wszystko było idealne.
Ten przewodnik zakłada również, że jesteś właścicielem Linksys WRT54GL i masz ogólne zrozumienie technologii VPN. Powinien on służyć jako podstawa do instalacji DD-WRT, ale koniecznie sprawdź nasz oficjalny przewodnik instalacji DD-WRT w celu uzyskania dodatkowego suplementu.
Instalowanie DD-WRT
Zespół odpowiedzialny za DD-WRT wykonał świetną robotę, ułatwiając użytkownikom końcowym wykrycie kompatybilności routera ze stroną bazy danych routera. Zacznij od wpisania modelu routera (w naszym przypadku WRT54GL) w polu tekstowym i oglądać wyniki wyszukiwania pojawiają się natychmiast. Kliknij swój router, gdy zostanie znaleziony.
Zostaniesz przeniesiony na nową stronę zawierającą informacje o twoim modelu - w tym specyfikacje sprzętu i różne wersje DD-WRT. Pobierz kompilację Mini-Generic i generującą VPN wersję DD-WRT (dd-wrt.v24_mini_generic.bin i dd-wrt.v24_vpn_generic.bin). Zapisz te pliki na komputerze.
Warto odwiedzić stronę z informacjami o sprzęcie DD-WRT, aby uzyskać szczegółowe informacje na temat routera i DD-WRT. Ta strona wyjaśni dokładnie, co musisz zrobić przed instalacją DD-WRT i po jej zainstalowaniu. Na przykład musisz zainstalować mini wersję DD-WRT przed instalacją DD-WRT VPN podczas aktualizacji z oprogramowania firmowego Linksys na WRT54GL.
Przed instalacją DD-WRT należy wykonać twardy reset (AKA 30/30/30). Naciśnij przycisk resetowania z tyłu routera przez 30 sekund. Następnie, wciąż trzymając przycisk resetowania, odłącz kabel zasilający i pozostaw go odłączony na 30 sekund. Na koniec podłącz ponownie kabel zasilający, przytrzymując przycisk reset przez kolejne 30 sekund. Powinieneś był trzymać przycisk zasilania przez 90 sekund prosto.
Teraz otwórz przeglądarkę i wprowadź adres IP routera (domyślnie jest to 192.168.1.1). Zostaniesz poproszony o podanie nazwy użytkownika i hasła. Domyślne ustawienia Linksys WRT54GL to "admin" i "admin".
Kliknij kartę Administracja u góry. Następnie kliknij Firmware Upgrade, jak pokazano poniżej.
Kliknij przycisk Przeglądaj i przejdź do mini pliku .bin DD-WRT, który wcześniej pobraliśmy. Robić nie prześlij jeszcze plik .bin DD-WRT VPN. Kliknij przycisk Uaktualnij w interfejsie internetowym. Twój router rozpocznie instalację DD-WRT Mini Generic, a jego ukończenie zajmie Ci mniej niż minutę.
Niestety! Twoja pierwsza obserwacja DD-WRT. Ponownie wykonaj kolejny 30/30/30 reset, tak jak to zrobiliśmy powyżej. Następnie kliknij kartę Administracja u góry. Zostaniesz poproszony o podanie nazwy użytkownika i hasła. Domyślna nazwa użytkownika i hasło to odpowiednio "root" i "admin". Po zalogowaniu kliknij podkartę Aktualizacja oprogramowania i kliknij Wybierz plik. Wyszukaj pobrany wcześniej plik DD-WRT VPN i kliknij Otwórz. Wersja DD-WRT VPN zacznie teraz ładować; bądź cierpliwy, ponieważ może to zająć 2-3 minuty.
Instalowanie OpenVPN
Teraz przejdźmy do strony pobierania oprogramowania OpenVPN i pobierzmy instalator Windows OpenVPN. W tym przewodniku będziemy używać drugiej najnowszej wersji OpenVPN o nazwie 2.1.4. Najnowsza wersja (2.2.0) zawiera błąd, który sprawiłby, że proces ten byłby jeszcze bardziej skomplikowany. Plik, który pobieramy, zainstaluje program OpenVPN, który pozwoli ci połączyć się z twoją siecią VPN, więc koniecznie zainstaluj ten program na innych komputerach, które chcesz działać jako klienci (ponieważ zobaczymy, jak to zrobić później). Zapisz plik .exe openvpn-2.1.4-install na swoim komputerze.
Przejdź do pobranego pliku OpenVPN i kliknij go dwukrotnie. Spowoduje to rozpoczęcie instalacji OpenVPN na twoim komputerze. Uruchom instalator z zaznaczonymi wszystkimi domyślnymi ustawieniami. Podczas instalacji pojawi się okno dialogowe z prośbą o zainstalowanie nowej wirtualnej karty sieciowej o nazwie TAP-Win32. Kliknij przycisk Instaluj.
Tworzenie certyfikatów i kluczy
Teraz, gdy masz już zainstalowany OpenVPN na swoim komputerze, musimy zacząć tworzyć certyfikaty i klucze do uwierzytelniania urządzeń. Kliknij przycisk Start systemu Windows i przejdź do opcji Akcesoria. Zobaczysz program Command Prompt. Kliknij go prawym przyciskiem myszy i kliknij Uruchom jako administrator.
W wierszu polecenia wpisz cd c: \ Program Files (x86) \ OpenVPN \ easy-rsa jeśli używasz 64-bitowego systemu Windows 7, jak pokazano poniżej. Rodzaj cd c: \ Program Files \ OpenVPN \ easy-rsa jeśli używasz 32-bitowego systemu Windows 7. Następnie naciśnij Enter.
Teraz wpisz init-config i naciśnij Enter, aby skopiować dwa pliki o nazwach vars.bat i openssl.cnf do folderu easy-rsa. Kontynuuj wyświetlanie wiersza poleceń, ponieważ wkrótce do niego wrócimy.
Nawigować do C: \ Program Files (x86) \ OpenVPN \ easy-rsa (lub C: \ Program Files \ OpenVPN \ easy-rsa w 32-bitowym systemie Windows 7) i kliknij prawym przyciskiem myszy plik o nazwie vars.bat. Kliknij Edytuj, aby otworzyć go w Notatniku. Alternatywnie zalecamy otwarcie tego pliku za pomocą Notepad ++, ponieważ znacznie lepiej formatuje on tekst w pliku. Możesz pobrać Notepad ++ ze swojej strony głównej.
Spodziewamy się dolnej części pliku. Zaczynając od linii 31, zmień KEY_COUNTRY wartość, KEY_PROVINCE wartości itp. w Twoim kraju, prowincji itp. Na przykład zmieniliśmy naszą prowincję na "IL", miasto na "Chicago", org na "HowToGeek" i wysłaliśmy e-mail na nasz własny adres e-mail. Jeśli masz 64-bitowy system Windows 7, zmień DOM wartość w wierszu 6 do % ProgramFiles (x86)% \ OpenVPN \ easy-rsa. Nie zmieniaj tej wartości, jeśli korzystasz z 32-bitowego systemu Windows 7. Twój plik powinien wyglądać podobnie do naszego poniżej (oczywiście z odpowiednimi wartościami). Zapisz plik, zastępując go po zakończeniu edycji.
Wróć do wiersza polecenia i wpisz vars i naciśnij Enter. Następnie wpisz Wyczyść wszystko i naciśnij Enter. Na koniec wpisz build-ca i naciśnij Enter.
Po wykonaniu build-ca polecenie, zostaniesz poproszony o podanie w swoim kraju nazwy, stanu, miejscowości itp. Ponieważ już ustawiliśmy te parametry w naszym vars.bat plik, możemy pominąć te opcje, naciskając Enter, ale! Zanim zaczniesz trzaskać klawiszem Enter, uważaj na parametr Common Name. Możesz wpisać cokolwiek w tym parametrze (np. Twoje imię i nazwisko). Tylko upewnij się, że wpisujesz coś. To polecenie wyświetli dwa pliki (główny certyfikat CA i główny klucz CA) w folderze easy-rsa / keys.
Teraz zbudujemy klucz dla klienta. W tym samym typie wiersza polecenia klucz konstrukcyjny client1. Możesz zmienić "klienta1" na dowolne (np. Acer-Laptop). Po wyświetleniu monitu pamiętaj o podaniu tej samej nazwy co nazwa zwykła. Przeprowadź wszystkie ustawienia domyślne, takie jak w poprzednim kroku (oczywiście oprócz nazwy zwykłej). Jednak na końcu pojawi się prośba o podpisanie certyfikatu i zatwierdzenie. Wpisz "y" dla obu i kliknij Enter.
Nie martw się też, jeśli otrzymasz błąd "nie można zapisać" stanu losowego. Zauważyliśmy, że Twoje certyfikaty są nadal realizowane bez problemu. To polecenie wyświetli dwa pliki (klucz klienta1 i certyfikat klienta1) w folderze easy-rsa / keys. Jeśli chcesz utworzyć inny klucz dla innego klienta, powtórz poprzedni krok, ale pamiętaj, aby zmienić nazwę zwykłą.
Ostatnim certyfikatem, który będziemy generować, jest klucz serwera. W tym samym wierszu polecenia wpisz build-key-server serwer. Możesz zamienić "serwer" na końcu polecenia na wszystko, co chcesz (np. HowToGeek-Server). Jak zawsze, pamiętaj, by po wyświetleniu monitu podać tę samą nazwę, co nazwa zwykła. Naciśnij Enter i wykonaj wszystkie ustawienia domyślne, z wyjątkiem nazwy zwykłej. Na końcu wpisz "y", aby podpisać certyfikat i zatwierdzić. To polecenie wyświetli dwa pliki (klucz serwera i certyfikat serwera) w folderze easy-rsa / keys.
Teraz musimy wygenerować parametry Diffiego Hellmana. Protokół Diffiego Hellmana "pozwala dwóm użytkownikom wymieniać tajny klucz na niezabezpieczonym medium bez żadnych wcześniejszych tajemnic". Możesz przeczytać więcej o Diffie Hellman na stronie RSA.
W tym samym typie wiersza polecenia build-dh. To polecenie wyświetli jeden plik (dh1024.pem) w folderze easy-rsa / keys.
Tworzenie plików konfiguracyjnych dla klienta
Zanim edytujemy jakiekolwiek pliki konfiguracyjne, powinniśmy skonfigurować usługę dynamicznego DNS. Skorzystaj z tej usługi, jeśli twój ISP co jakiś czas wydaje ci dynamiczny zewnętrzny adres IP. Jeśli masz statyczny zewnętrzny adres IP, przejdź do następnego kroku.
Sugerujemy użycie DynDNS.com, usługi, która pozwala wskazać nazwę hosta (tj. Howtogeek.dyndns.org) na dynamiczny adres IP. Dla OpenVPN ważne jest, aby zawsze znać publiczny adres IP twojej sieci, a używając DynDNS, OpenVPN zawsze będzie wiedział, jak zlokalizować twoją sieć bez względu na twój publiczny adres IP. Zarejestruj się, aby otrzymać bezpłatną nazwę hosta i wskaż ją na swój publiczny adres IP.
Teraz wróć do konfiguracji OpenVPN. W Eksploratorze Windows przejdź do C: \ Program Files (x86) \ OpenVPN \ sample-config jeśli używasz 64-bitowego systemu Windows 7 lub C: \ Program Files \ OpenVPN \ sample-config jeśli używasz 32-bitowego systemu Windows 7. W tym folderze znajdziesz trzy przykładowe pliki konfiguracyjne; zajmujemy się tylko client.ovpn plik.
Kliknij prawym przyciskiem myszy client.ovpn i otwórz go za pomocą Notatnika lub Notepad ++. Zauważysz, że twój plik będzie wyglądał jak na poniższym obrazku:
Jednak chcemy nasze client.ovpn plik wygląda podobnie to zdjęcie poniżej. Pamiętaj, aby zmienić nazwę hosta DynDNS na swoją nazwę hosta w linii 4 (lub zmienić ją na publiczny adres IP, jeśli masz statyczny). Pozostaw numer portu 1194, ponieważ jest to standardowy port OpenVPN. Należy również zmienić wiersze 11 i 12, aby odzwierciedlić nazwę pliku certyfikatu klienta i pliku klucza. Zapisz to jako nowy plik .ovpn w folderze OpenVPN / config.
Konfiguracja demona OpenVPN DD-WRT
Podstawową ideą jest teraz skopiowanie certyfikatów serwera i kluczy, które stworzyliśmy wcześniej, i wklejenie ich do menu demona DD-WRT OpenVPN. Ponownie otwórz przeglądarkę i przejdź do swojego routera. Teraz powinieneś mieć zainstalowaną wersję DD-WRT VPN na routerze. Zobaczysz nową kartę pod zakładką Usługi o nazwie VPN. Kliknij przycisk radiowy Włącz pod demonem OpenVPN.
Najpierw zmień typ Start na "Wan Up" zamiast domyślnego "System". Teraz będziemy potrzebować naszych kluczy serwera i certyfikatów, które utworzyliśmy wcześniej. W Eksploratorze Windows przejdź do C: \ Program Files (x86) \ OpenVPN \ easy-rsa \ keys w 64-bitowym systemie Windows 7 (lub C: \ Program Files \ OpenVPN \ easy-rsa \ keys w 32-bitowym systemie Windows 7). Otwórz każdy odpowiedni plik poniżej (ca.crt, server.crt, server.key, i dh1024.pem) z Notatnikiem lub Notepad ++ i skopiuj zawartość. Wklej zawartość w odpowiednich polach, tak jak pokazano poniżej.
W polu Konfiguracja OpenVPN będziemy musieli utworzyć niestandardowy plik. Te ustawienia będą się różnić w zależności od konfiguracji sieci LAN. Otwórz oddzielne okno przeglądarki i wpisz adres IP routera. Kliknij kartę Ustawienia i zanotuj, jaki adres IP został skonfigurowany w obszarze IP routera> Lokalny adres IP. Wartością domyślną, której używamy w tym przykładzie, jest 192.168.1.1. Wklej tę podsieć zaraz po "route" w pierwszym wierszu, aby odzwierciedlić konfigurację sieci LAN. Skopiuj go do okna Konfiguracja OpenVPN i kliknij Zapisz.
naciśnij "route 192.168.1.0 255.255.255.0"
serwer 10.8.0.0 255.255.255.0dev tun0
proto tcp
keepalive 10 120
dh /tmp/openvpn/dh.pem
ca /tmp/openvpn/ca.crt
cert /tmp/openvpn/cert.pem
key /tmp/openvpn/key.pem# Korzystaj tylko z crl-verify, jeśli używasz listy odwołań - w przeciwnym razie zostawisz to skomentowane
# crl-verify /tmp/openvpn/ca.crl# Parametr zarządzania umożliwia stronie internetowej DDVWRT Status OpenVPN dostęp do portu zarządzania serwera
# port musi mieć wartość 5001, aby skrypty osadzone w oprogramowaniu układowym działały
zarządzanie localhostem 5001
Teraz musimy skonfigurować zaporę, aby umożliwić klientom łączenie się z naszym serwerem OpenVPN przez port 1194. Przejdź do zakładki Administracja i kliknij podkartę Polecenia. W polu tekstowym Polecenia wklej następujące elementy:
iptables -I INPUT 1 -p udp -dport 1194 -j AKCEPTUJ
iptables -I FORWARD 1 -source 192.168.1.0/24 -j AKCEPTUJĘ
iptables -I FORWARD -i br0 -o tun0 -j AKCEPTUJ
iptables -I FORWARD -i tun0 -o br0 -j AKCEPTUJ
Pamiętaj, aby zmienić adres IP LAN w drugim wierszu, jeśli jest inny niż domyślny. Następnie kliknij przycisk Zapisz zaporę poniżej.
Na koniec sprawdź ustawienia czasu na karcie Ustawienia, w przeciwnym razie demon OpenVPN odmówi dostępu wszystkim klientom. Sugerujemy udanie się na TimeAndDate.com i wyszukanie Twojego miasta pod aktualnym czasem. Na tej stronie znajdziesz wszystkie informacje, które musisz podać w ustawieniach czasu, tak jak to zrobiliśmy poniżej. Sprawdź także stronę internetową projektu puli NTP, na której mogą korzystać publiczne serwery NTP.
Konfigurowanie klienta OpenVPN
W tym przykładzie będziemy używać laptopa Windows 7 jako naszego klienta w oddzielnej sieci. Pierwszą rzeczą, którą będziesz chciał zrobić, to zainstalować OpenVPN na kliencie, tak jak zrobiliśmy to powyżej w pierwszych krokach w Konfigurowaniu OpenVPN. Następnie przejdź do C: \ Program Files \ OpenVPN \ config w którym wklejamy nasze pliki.
Teraz musimy wrócić do naszego oryginalnego komputera i zebrać w sumie cztery pliki do skopiowania na laptopa naszego klienta. Nawigować do C: \ Program Files (x86) \ OpenVPN \ easy-rsa \ keys ponownie i skopiuj ca.crt, client1.crt, i client1.key. Wklej te pliki w kliencie config teczka.
Na koniec musimy skopiować jeszcze jeden plik. Nawigować do C: \ Program Files (x86) \ OpenVPN \ config i skopiuj nowy plik client.ovpn, który utworzyliśmy wcześniej. Wklej ten plik do klienta config także folder.
Testowanie klienta OpenVPN
Na laptopie klienta kliknij przycisk Start systemu Windows i przejdź do Wszystkie programy> OpenVPN. Kliknij prawym przyciskiem myszy plik GUI OpenVPN i kliknij Uruchom jako administrator. Pamiętaj, że musisz zawsze uruchamiać OpenVPN jako administrator, aby działał poprawnie. Aby trwale ustawić plik tak, aby zawsze działał jako administrator, kliknij go prawym przyciskiem myszy i kliknij Właściwości. Na karcie Zgodność zaznacz Uruchom ten program jako administrator.
Ikona GUI OpenVPN pojawi się obok zegara na pasku zadań. Kliknij prawym przyciskiem myszy ikonę i kliknij Połącz. Ponieważ mamy tylko jeden plik .ovpn w naszym config folder, OpenVPN będzie domyślnie łączyć się z tą siecią.
Pojawi się okno dialogowe wyświetlające dziennik połączeń.
Po nawiązaniu połączenia z siecią VPN ikona OpenVPN na pasku zadań zmieni kolor na zielony i wyświetli wirtualny adres IP.
I to wszystko! Masz teraz bezpieczne połączenie między serwerem a siecią klienta za pomocą OpenVPN i DD-WRT. Aby dalej przetestować połączenie, spróbuj otworzyć przeglądarkę na laptopie klienta i przejść do routera DD-WRT w sieci serwera.