Teraz, jeśli chcesz udostępnić coś z lokalnego serwera WWW znajomym, którzy są poza siecią lokalną i nie mogą uzyskać dostępu do Twojego komputera. W takim razie jak naraziłbyś swój lokalny host na znajomych poza LAN?
W takim przypadku ustanawiasz tunel od lokalnego hostu do Internetu i udostępniasz publicznego adresu IP znajomym, do którego można uzyskać dostęp z całego Internetu.
Tunele można ustanowić za pomocą Ssh Lub Ngrok. Tutaj omówimy oba sposoby, a następnie zweryfikujemy wynik tunelowania za pomocą Netcat.
Otrzymanie publicznego adresu IP za pomocą Ngrok
Ngrok to oprogramowanie do tunelowania między platformami, które można wykorzystać do ustanowienia bezpiecznych tuneli z Internetu na sieć lokalną. Uchwytuje również cały ruch w celu kontroli. Poniżej znajduje się metoda ustanowienia tuneli od LocalHost do Internetu.
Instalowanie NGrok
Przed użyciem Ngrok Na twoim komputerze musimy go zainstalować. Ngrok można zainstalować za pomocą następującego polecenia w terminalu.
Ubuntu@ubuntu: ~ $ snap instaluj ngrok
Po uruchomieniu powyższego polecenia zainstaluje Ngrok po pobraniu wymaganych plików. Możesz sprawdzić, czy Ngrok został zainstalowany lub nie przy użyciu następującego polecenia w terminalu.
Ubuntu@ubuntu: ~ $ ngrok --version
Jeśli Ngrok został zainstalowany, da wersję, jak pokazano na poniższym rysunku.
Po zainstalowaniu Ngrok, Teraz jest gotowy do użycia do ustanowienia tuneli.
Narażanie Localhost na publiczność
Ngrok służy do ujawnienia lokalnego serwera WWW na Internet. Wszystko, co musimy zrobić, to powiedzieć Ngrok Na jakim porcie lokalnym serwerze WWW słucha. Uruchom następujące polecenie, aby ujawnić lokalny serwer WWW na Internet
Ubuntu@ubuntu: ~ $ ngrok http 8080
Po uruchomieniu powyższego polecenia w terminalu, Ngrok Ustanawia tunel z lokalnego serwera internetowego do Internetu za pośrednictwem portu 8080 i wyświetla publiczny adres URL, za pomocą którego można uzyskać dostęp do lokalnego serwera WWW. Po uruchomieniu powyższego polecenia pojawia się następująca GUI.
Teraz Twój lokalny host: 8080 można uzyskać z całego Internetu za pomocą linku pokazanego na powyższym rysunku.
Sprawdzanie ruchu przez tunel
Ngrok Zapewnia nam możliwość kontroli wszystkich przychodzących lub wychodzących wniosków z Internetu do lokalnego hosta. Możemy obserwować cały ruch, przechodząc do następującego linku
Localhost: 4040/Inspekcja/http
Kiedy dostaniesz powyższy link, przeglądarka pokazuje wszystkie żądania przychodzące lub wychodzące.
Terminal pokazuje również żądania złożone na lokalnym serwerze WWW. Poniższy rysunek pokazuje, w jaki sposób terminal przechowuje zapis żądań HTTP.
Otrzymanie publicznego adresu IP za pomocą SSH
Ssh Znany również jako Secure Shell to bezpieczny protokół komunikacyjny używany do zdalnej komunikacji między klientem a serwerem. Ponadto, Ssh może być również używane do ustanowienia tuneli, aby udostępnić publiczność Twojego lokalnego hostu. Na tym blogu zobaczymy, jak korzystać z SSH do ustanowienia tuneli między lokalnym hostem a publicznym Internetem.
Narażanie Localhost na publiczność
LocalHost może być również narażony na społeczeństwo, korzystając z Ssh który jest zasadniczo protokołem komunikacyjnym. Nazywa się Ssh tunelowanie lub Ssh Przekazywanie portów. Uruchom następujące polecenie w terminalu Localhost, aby ustanowić tunel między lokalnym hostem a zdalnym serwerem
Ubuntu@ubuntu: ~ $ ssh -r 8080: LocalHost: 8088 Remoteuser@ipaddress
W powyższym poleceniu
Teraz port 8088 Localhost można uzyskać ze zdalnego serwera o „adresu IP” IP i nazwie użytkownika ”za pośrednictwem portu 8080.
Konfiguracja zdalnego serwera
Przed uzyskaniem dostępu do LocalHost przez tunel ze zdalnego serwera dokonaj pewnych zmian w sshd_config plik zdalnego serwera. Ten plik można otworzyć, wpisując następujące polecenie w terminalu.
Ubuntu@ubuntu: ~ $ nano/etc/ssh/sshd_config
Po otwarciu pliku wprowadzaj zmiany, jak pokazano na poniższym rysunku.
Zezwolenie, tak
Gatewayports Tak
Po wprowadzeniu zmian uruchom ponownie Ssh serwer do zastosowania tych zmian. Teraz LocalHost jest otwarty na zdalny serwer, do którego można uzyskać dostęp.
Testowanie tuneli
Do tej pory ustanowiliśmy tunele między LocalHost a zdalnym serwerem za pomocą Ssh I Ngrok. Teraz sprawdzimy, czy te tunele zostały ustanowione, czy nie. Użyjemy Netcat polecenie do testowania tuneli. Uruchom następujące polecenie w terminalu Localhost
Ubuntu@ubuntu: ~ $ netcat -l -p 8088
Po uruchomieniu powyższego polecenia w terminalu Localhost, Netcat Zaczyna słuchać w porcie 8088 twojego lokalnego hostu.
Teraz wpisz następujące polecenie w terminalu zdalnego serwera, aby wysłać wiadomość
Ubuntu@ubuntu: ~ $ echo „Hello!”| Netcat [Remoteserver IP] 8080
Po uruchomieniu powyższego polecenia w terminalu zdalnego serwera komunikat „Hello” musi pojawić się na terminalu LocalHost. Jeśli tak się stanie, wówczas tunel został ustanowiony.
Wniosek
Aby Twoja lokalna hosta dostępna z Internetu odbywa się poprzez ustanowienie tuneli między lokalnym hostem a Internetem. Na tym blogu omówiliśmy, jak ustanowić tunele, aby udostępnić lokalizację w Internecie. Omówiono dwie metody ustanawiania tuneli, które są Ssh tunelowanie i Ngrok tunelowanie. Za pomocą kontroli ruchu Ngrok Omówiono również tunelowanie. Następnie proces testowania tuneli za pomocą Netcat został omówiony. Po przeczytaniu tego bloga będzie bardzo łatwo uczynić lokalny serwer WWW do publiczności.