15Jul
Łączenie się z Internetem w hotspotach Wi-Fi, w pracy lub gdziekolwiek indziej poza domem, naraża Twoje dane na niepotrzebne ryzyko. Możesz łatwo skonfigurować router, aby obsługiwał bezpieczny tunel i chronić swój ruch w przeglądarce - przeczytaj, jak to zrobić.
Co to jest i dlaczego tworzy bezpieczny tunel?
Możesz być ciekawy, dlaczego chciałbyś nawet ustawić bezpieczny tunel ze swoich urządzeń na domowy router i jakie korzyści czerpiesz z takiego projektu. Przedstawmy kilka różnych scenariuszy, które dotyczą korzystania z Internetu w celu zilustrowania korzyści bezpiecznego tunelowania.
Scenariusz pierwszy: jesteś w kawiarni przy użyciu laptopa, aby przeglądać internet za pomocą bezpłatnego połączenia Wi-Fi. Dane opuszczają twój modem Wi-Fi, podróżują przez powietrze niezaszyfrowane do węzła Wi-Fi w kawiarni, a następnie trafiają do większego internetu. Podczas transmisji z komputera do większego Internetu twoje dane są szeroko otwarte. Każdy, kto ma w pobliżu urządzenie Wi-Fi, może sniffować Twoje dane. To tak boleśnie łatwe, że zmotywowany 12-latek z laptopem i kopią Firesheep może pochwalić się twoimi danymi uwierzytelniającymi dla wszystkich rzeczy. To tak, jakbyś był w pokoju wypełnionym głośnikami w języku angielskim, rozmawiającym przez telefon mówiącym po chińsku mandaryńskim. W momencie, w którym pojawia się ktoś, kto mówi po chińsku mandaryńskim( sniffer Wi-Fi) twoja pseudo-prywatność zostaje zniszczona.
Scenariusz drugi: jesteś w kawiarni przy użyciu laptopa, aby ponownie przeglądać Internet za pomocą bezpłatnego połączenia Wi-Fi. Tym razem utworzyłeś zaszyfrowany tunel między laptopem a routerem domowym za pomocą SSH.Twój ruch jest kierowany przez ten tunel bezpośrednio z laptopa do domowego routera, który działa jako serwer proxy. Ten potok jest nieprzenikniony dla snifferów Wi-Fi, które widziałyby tylko zniekształcony strumień zaszyfrowanych danych. Bez względu na to, jak trudne jest ustanowienie, jak niepewne jest połączenie Wi-Fi, dane pozostają w zaszyfrowanym tunelu i pozostawiają je tylko wtedy, gdy dotrą do domowego połączenia z Internetem i wyjdą z większego internetu.
W scenariuszu pierwszym surfujesz szeroko;w scenariuszu drugim możesz zalogować się do swojego banku lub innych prywatnych stron internetowych z taką samą pewnością jak z komputera domowego.
Mimo że w naszym przykładzie wykorzystaliśmy Wi-Fi, możesz użyć tunelu SSH do zabezpieczenia twardego połączenia, powiedzmy, do uruchomienia przeglądarki w sieci zdalnej i przebicia otworu w firewallu, aby surfować tak swobodnie, jak w twoim domowym połączeniu.
Brzmi nieźle, prawda? Jest niewiarygodnie łatwy w konfiguracji, więc nie ma czasu jak teraźniejszość - możesz uruchomić swój tunel SSH w ciągu godziny.
Co jest potrzebne
Istnieje wiele sposobów na skonfigurowanie tunelu SSH, aby zabezpieczyć przeglądanie Internetu. W tym samouczku skupiamy się na skonfigurowaniu tunelu SSH w najprostszy z możliwych sposobów przy jak najmniejszym zamieszaniu dla użytkownika z routerem domowym i maszynami z systemem Windows. Aby śledzić nasz samouczek, będziesz potrzebować następujących rzeczy:
- Router z oprogramowaniem modyfikowanym Tomato lub DD-WRT.
- Klient SSH, taki jak PuTTY.
- Przeglądarka internetowa zgodna z SOCKS, taka jak Firefox.
Dla naszego przewodnika będziemy używać Tomato, ale instrukcje są prawie identyczne z tymi, które obserwujesz dla DD-WRT, więc jeśli używasz DD-WRT, nie krępuj się.Jeśli nie masz zmodyfikowanego oprogramowania na swoim routerze, zapoznaj się z naszym przewodnikiem dotyczącym instalowania DD-WRT i Tomato, zanim przejdziesz dalej.
Generowanie kluczy dla naszego zaszyfrowanego tunelu
Chociaż może wydawać się dziwne, aby przejść do generowania kluczy, zanim jeszcze skonfigurujemy serwer SSH, jeśli mamy przygotowane klucze, będziemy mogli skonfigurować serwer w jednym przebiegu.
Pobierz pełny pakiet PuTTY i wyodrębnij go do wybranego folderu. W folderze znajduje się PUTTYGEN.EXE.Uruchom aplikację i kliknij przycisk - & gt;Wygeneruj parę kluczy .Zobaczysz ekran podobny do tego przedstawionego powyżej;poruszaj myszą, aby wygenerować losowe dane do procesu tworzenia klucza. Po zakończeniu procesu okno Generatora kluczy PuTTY powinno wyglądać mniej więcej tak:śmiało wpisz silne hasło:
Po podłączeniu hasła, kliknij Zapisz klucz prywatny .Przechowaj wynikowy plik. PPK w bezpiecznym miejscu. Skopiuj i wklej zawartość pola "Klucz publiczny do wklejania. .." do tymczasowego dokumentu TXT na razie.
Jeśli planujesz używać wielu urządzeń z serwerem SSH( takich jak laptop, netbook i smartphone), musisz wygenerować pary kluczy dla każdego urządzenia.Śmiało i generuj, hasło i zapisz dodatkowe pary kluczy, których potrzebujesz teraz. Pamiętaj, aby skopiować i wkleić każdy nowy klucz publiczny do dokumentu tymczasowego.
Konfigurowanie routera dla SSH
Zarówno Tomato jak i DD-WRT mają wbudowane serwery SSH.To jest niesamowite z dwóch powodów. Po pierwsze, telnet do routera był bardzo trudny, aby ręcznie zainstalować serwer SSH i skonfigurować go. Po drugie, ponieważ używasz serwera SSH na routerze( który prawdopodobnie zużywa mniej energii niż żarówka), nigdy nie musisz opuszczać głównego komputera tylko dla lekkiego serwera SSH.
Otwórz przeglądarkę internetową na komputerze podłączonym do sieci lokalnej. Przejdź do interfejsu sieciowego routera, dla naszego routera-a Linksys WRT54G z systemem Tomato - adres jest http://192.168.1.1.Zaloguj się do interfejsu internetowego i przejdź do Administration - & gt; SSH Daemon .Tam musisz sprawdzić Enable przy uruchomieniu i Remote Access .Możesz zmienić port zdalny, jeśli chcesz, ale jedyną korzyścią jest to, że nieznacznie zaciemnia on powód, dla którego port jest otwarty, jeśli któryś port Cię zeskanuje. Odznacz Zezwalaj na logowanie hasła .Nie będziemy używać loginu do hasła, aby uzyskać dostęp do routera z daleka, użyjemy pary kluczy.
Wklej klucze publiczne wygenerowane w ostatniej części samouczka do pola Authorized Keys. Każdy klucz powinien być jego własnym wpisem oddzielonym przez podział wiersza. Pierwszą częścią klucza ssh-rsa jest bardzo ważny .Jeśli nie dodasz go do każdego klucza publicznego, staną się nieprawidłowe dla serwera SSH.
Kliknij Uruchom teraz , a następnie przewiń w dół na dół interfejsu i kliknij Zapisz .W tym momencie serwer SSH jest uruchomiony.
Konfigurowanie komputera zdalnego do uzyskiwania dostępu do serwera SSH
Tu dzieje się magia. Masz kluczową parę, masz serwer uruchomiony, ale nic z tego nie ma żadnej wartości, chyba że jesteś w stanie zdalnie połączyć się z pola i tunelować do routera. Czas zepsuć naszą sprawdzoną książkę sieciową z systemem Windows 7 i zacząć działać.
Najpierw skopiuj utworzony folder PuTTY na inny komputer( lub po prostu pobierz i rozpakuj go ponownie).Od tego momentu wszystkie instrukcje koncentrują się na komputerze zdalnym. Jeśli uruchomiłeś generator kluczy PuTTy na komputerze domowym, upewnij się, że przełączyłeś się na komputer mobilny do końca samouczka. Zanim się zdecydujesz, musisz również upewnić się, że masz kopię utworzonego pliku. PPK.Po wyciągnięciu PuTy i. PPK w ręce, jesteśmy gotowi, aby kontynuować.
Uruchom PuTTY.Pierwszy ekran, który zobaczysz, to ekran Session .Tutaj musisz podać adres IP domowego połączenia z Internetem. To nie jest adres IP twojego routera w lokalnej sieci LAN, to jest adres IP twojego modemu / routera, jak widać na zewnątrz. Możesz go znaleźć, patrząc na główną stronę statusu w interfejsie internetowym routera. Zmień port na 2222 ( lub cokolwiek, co zastąpiłeś w procesie konfiguracji demona SSH).Upewnij się, że SSH jest zaznaczone .Śmiało i nadaje twojej sesji nazwę , dzięki czemu możesz zapisać do wykorzystania w przyszłości. Zatytułowaliśmy nasz Tomato SSH.
Nawiguj przez lewe okienko do połączenia - & gt;Auth .Tutaj musisz kliknąć przycisk Przeglądaj i wybrać plik. PPK zapisany i przeniesiony do zdalnego komputera.
W podmenu SSH przejdź do SSH - & gt;Tunele .Właśnie tutaj skonfigurujemy PuTTY, aby działał jako serwer proxy dla twojego komputera mobilnego. Zaznacz oba pola pod Port Forwarding .Poniżej, w sekcji Dodaj nowy przekierowany port , wprowadź 80 dla portu źródłowego i adres IP routera dla Destination .Sprawdź Auto i Dynamic , a następnie kliknij Dodaj .
Podwójnie sprawdź, czy wpis pojawił się w w .Przejdź z powrotem do sekcji i kliknij Zapisz ponownie, aby zapisać wszystkie prace konfiguracyjne. Teraz kliknij Otwórz .PuTTY uruchomi okno terminala. W tym momencie może pojawić się ostrzeżenie wskazujące, że klucz hosta serwera nie znajduje się w rejestrze.Śmiało i upewnij się, że ufasz hostowi. Jeśli się o to martwisz, możesz porównać ciąg odcisków palców otrzymany w wiadomości ostrzegawczej z odciskem palca klucza wygenerowanego przez załadowanie go w Generatorze kluczy PuTTY.Gdy otworzysz PuTTY i klikniesz ostrzeżenie, powinieneś zobaczyć ekran podobny do tego:
W terminalu będziesz musiał zrobić tylko dwie rzeczy. W wierszu logowania wpisz root .Po znaku zachęty do hasła wpisz hasło do klucza RSA - to hasło utworzone kilka minut temu, kiedy wygenerowałeś klucz, a nie hasło routera. Powłoka routera zostanie załadowana i skończysz w wierszu polecenia. Utworzyłeś bezpieczne połączenie pomiędzy PuTTY a routerem domowym. Teraz musimy poinstruować twoje aplikacje, jak uzyskać dostęp do PuTTY.
Uwaga: Jeśli chcesz uprościć proces za cenę nieznacznego zmniejszenia bezpieczeństwa, możesz wygenerować parę kluczy bez hasła i ustawić PuTTY na automatyczne logowanie się do konta root( możesz przełączyć to ustawienie w obszarze Połącz - & gt; Dane - & gt;; Automatyczne logowanie).Zmniejsza to proces łączenia PuTTY do prostego otwierania aplikacji, ładowania profilu i klikania Otwórz.
Konfigurowanie przeglądarki do łączenia się z PuTTY
W tym momencie samouczka, w którym serwer jest uruchomiony, komputer jest z nim połączony i pozostaje tylko jeden krok. Musisz powiedzieć ważnym aplikacjom, aby używać PuTTY jako serwera proxy. Każda aplikacja obsługująca protokół SOCKS może być połączona z PuTTY - na przykład Firefox, mIRC, Thunderbird i uTorrent, aby wymienić tylko kilka - jeśli nie masz pewności, czy aplikacja obsługuje SOCKS w menu opcji lub zapoznaj się z dokumentacją.Jest to kluczowy element, którego nie należy przeoczyć: cały ruch użytkownika nie jest domyślnie kierowany przez serwer proxy PuTTY; musi być podłączony do serwera SOCKS .Mógłbyś mieć na przykład przeglądarkę internetową, na której włączono SOCKS i przeglądarkę internetową, na której nie korzystałeś - obie na tym samym komputerze - i jeden szyfrowałby twój ruch, a jeden nie.
Dla naszych celów chcemy zabezpieczyć naszą przeglądarkę Firefox Portable, która jest dość prosta. Proces konfiguracji Firefoksa oznacza praktycznie dowolną aplikację, do której będziesz potrzebować informacji SOCKS.Uruchom Firefoksa i przejdź do opcji - & gt;Zaawansowane - & gt;Ustawienia .Z poziomu menu Ustawienia wybierz Ręczna konfiguracja proxy i pod SOCKS Wtyczka hosta 127.0.0.1 - łączysz się z aplikacją PuTTY uruchomioną na komputerze lokalnym, więc musisz umieścić adres IP lokalnego hosta, a nieadres IP twojego routera, tak jak dotychczas w każdym z automatów. Ustaw port na 80 i kliknij OK.
Mamy jedną drobną poprawkę, którą musimy zastosować, zanim wszystko będzie gotowe. Firefox domyślnie nie wysyła żądań DNS za pośrednictwem serwera proxy. Oznacza to, że Twój ruch będzie zawsze szyfrowany, ale ktoś szpiegujący połączenie zobaczy wszystkie twoje żądania. Wiedzieliby, że jesteś na Facebooku.com lub Gmail.com, ale nie będą mogli zobaczyć niczego innego. Jeśli chcesz przesłać swoje żądania DNS przez SOCKS, musisz go włączyć.
Wpisz about: config w pasku adresu, a następnie kliknij "Będę ostrożny, obiecuję!", Jeśli otrzymasz surowe ostrzeżenie o tym, jak możesz zepsuć przeglądarkę.Wklej network.proxy.socks_remote_dns do filtra : , a następnie kliknij prawym przyciskiem myszy wpis dla network.proxy.socks_remote_dns i Przełącz na True .Odtąd zarówno twoje przeglądanie, jak i twoje żądania DNS będą wysyłane przez tunel SOCKS.
Chociaż konfigurujemy naszą przeglądarkę dla SSH-all-the-time, możesz chcieć łatwo przełączać swoje ustawienia. Firefox ma poręczne rozszerzenie, FoxyProxy, które sprawia, że przełączanie serwerów proxy jest bardzo łatwe. Obsługuje mnóstwo opcji konfiguracyjnych, takich jak przełączanie się pomiędzy serwerami proxy w oparciu o domenę, w której się znajdujesz, witryny, które odwiedzasz, itp. Jeśli chcesz mieć możliwość łatwego i automatycznego wyłączania usługi proxy w zależności od tego, czy jesteś w pobliżuw domu lub poza domem, na przykład, FoxyProxy Cię obejmuje. Użytkownicy Chrome będą chcieli sprawdzić Proxy Switchy!dla podobnej funkcjonalności.
Zobaczmy, czy wszystko działało zgodnie z planem, dobrze? Aby przetestować różne rzeczy, otworzyliśmy dwie przeglądarki: Chrome( widoczna po lewej) bez tunelu i Firefoksa( widoczne po prawej), które zostały świeżo skonfigurowane do korzystania z tunelu.
Po lewej stronie widzimy adres IP węzła Wi-Fi, z którym się łączymy, i po prawej stronie, dzięki naszemu tunelowi SSH, widzimy adres IP naszego odległego routera. Cały ruch Firefoksa jest kierowany przez serwer SSH.Powodzenie!
Masz wskazówkę lub sztuczkę do zabezpieczenia zdalnego ruchu? Użyj serwera SOCKS / SSH w konkretnej aplikacji i uwielbiam go? Potrzebujesz pomocy w określeniu sposobu szyfrowania ruchu? Posłuchajmy o tym w komentarzach.