Wenn Sie jetzt etwas von Ihrem lokalen Webserver mit Ihren Freunden teilen möchten, die sich außerhalb des lokalen Netzwerks befinden und nicht auf Ihr Gerät zugreifen können. Wie würden Sie dann Ihren Localhost Ihren Freunden außerhalb des LANs aussetzen??
In diesem Fall bauen Sie einen Tunnel von Ihrem Localhost zum Internet auf und teilen Ihren Freunden eine öffentliche IP-Adresse, auf die Sie aus dem gesamten Internet zugreifen können.
Tunnel können erstellt werden mit SSH oder Ngrok. Hier werden wir beide Wege besprechen und dann das Ergebnis des Tunnelns mit überprüfen netcat.
Erhalten einer öffentlichen IP mit Ngrok
Ngrok ist eine plattformübergreifende Tunneling-Software, mit der sichere Tunnel vom Internet zum lokalen Netzwerk aufgebaut werden können. Es erfasst auch den gesamten Verkehr zur Inspektion. Es folgt die Methode zum Herstellen von Tunneln von localhost zum Internet.
Ngrok . installieren
Vor Gebrauch Ngrok auf Ihrer Maschine müssen wir es installieren. Ngrok kann mit dem folgenden Befehl im Terminal installiert werden.
[email protected]:~$ snap install ngrokWenn Sie den obigen Befehl ausführen, wird der ngrok nach dem Herunterladen der erforderlichen Dateien installiert. Sie können überprüfen, ob Ngrok installiert wurde oder nicht, indem Sie den folgenden Befehl im Terminal verwenden.
[email protected]:~$ ngrok --versionWenn Ngrok installiert wurde, wird die Version wie in der folgenden Abbildung gezeigt angezeigt.
Nach der Installation Ngrok, Jetzt ist es einsatzbereit, um Tunnel aufzubauen.
Localhost der Öffentlichkeit zugänglich machen
Ngrok wird verwendet, um Ihren lokalen Webserver dem Internet zugänglich zu machen. Wir müssen es nur sagen Ngrok auf welchem Port Ihr lokaler Webserver lauscht. Führen Sie den folgenden Befehl aus, um Ihren lokalen Webserver dem Internet zugänglich zu machen
[email protected]:~$ ngrok http 8080Wenn Sie den obigen Befehl im Terminal ausführen, Ngrok baut einen Tunnel von Ihrem lokalen Webserver zum Internet über Port 8080 auf und zeigt die öffentliche URL an, über die auf Ihren lokalen Webserver zugegriffen werden kann. Die folgende GUI erscheint auf dem Terminal, wenn Sie den obigen Befehl ausführen run.
Jetzt kann auf Ihren localhost:8080 aus dem gesamten Internet zugegriffen werden, indem Sie den in der obigen Abbildung gezeigten Link verwenden.
Kontrolle des Verkehrs durch den Tunnel
Ngrok bietet uns die Möglichkeit, alle eingehenden oder ausgehenden Anfragen aus dem Internet an Ihren localhost zu überprüfen. Wir können den gesamten Verkehr beobachten, indem Sie auf den folgenden Link gehen
localhost:4040/inspect/httpWenn Sie den obigen Link aufgerufen haben, zeigt Ihnen der Browser alle eingehenden oder ausgehenden Anfragen an, wie in der folgenden Abbildung gezeigt.
Terminal zeigt auch die Anfragen an Ihren lokalen Webserver an. Die folgende Abbildung zeigt, wie das Terminal HTTP-Anfragen aufzeichnet.
Öffentliche IP mit SSH abrufen
SSH auch bekannt als Secure Shell ist ein sicheres Kommunikationsprotokoll, das für die Remote-Kommunikation zwischen Client und Server verwendet wird. Außerdem, SSH kann auch zum Aufbau von Tunneln verwendet werden, um Ihren localhost der Öffentlichkeit zugänglich zu machen. In diesem Blog werden wir sehen, wie Sie SSH verwenden, um Tunnel zwischen Ihrem localhost und dem öffentlichen Internet aufzubauen.
Localhost der Öffentlichkeit zugänglich machen
Localhost kann auch der Öffentlichkeit zugänglich gemacht werden, indem man . verwendet SSH was im Grunde ein Kommunikationsprotokoll ist. Es wird genannt SSH Tunnelbau oder SSH Port-Weiterleitung. Führen Sie den folgenden Befehl im Terminal Ihres localhost aus, um einen Tunnel zwischen Ihrem localhost und dem Remote-Server aufzubauen
[email protected]:~$ ssh -R 8080:localhost:8088 remoteUser@IPAddressIm obigen Befehl
- 8080 ist der Port, auf den der Server lauscht
- 8088 ist der Port, den Sie freigeben möchten
- remoteUser ist der Name des Benutzers, dem Sie Ihren Webserver zur Verfügung stellen
- IPAddress ist die IP des entfernten Benutzers
- -R bedeutet, dass Sie eine Verbindung vom Remote-Server zu Ihrem localhost herstellen
Jetzt kann auf Port 8088 Ihres localhosts von einem Remote-Server mit der IP "IP-Adresse" und dem Benutzernamen "remoteUser" über Port 8080 zugegriffen werden.
Remote-Server-Konfiguration
Bevor Sie von einem Remote-Server über den Tunnel auf localhost zugreifen, nehmen Sie einige Änderungen im sshd_config Datei des entfernten Servers. Diese Datei kann durch Eingabe des folgenden Befehls im Terminal geöffnet werden.
[email protected]:~$ nano /etc/ssh/sshd_configNehmen Sie nach dem Öffnen der Datei die Änderungen wie in der folgenden Abbildung gezeigt vor.
AllowTcpForwarding jaGatewayPorts ja
Nachdem Sie Änderungen vorgenommen haben, starten Sie Ihr SSH Server, um diese Änderungen zu übernehmen. Jetzt ist localhost für den Remote-Server geöffnet, auf den zugegriffen werden kann.
Testen der Tunnel
Bisher haben wir Tunnel zwischen localhost und einem Remote-Server aufgebaut, indem wir SSH und Ngrok. Jetzt testen wir, ob diese Tunnel eingerichtet wurden oder nicht. Wir werden verwenden netcat Befehl zum Testen von Tunneln. Führen Sie den folgenden Befehl im Terminal Ihres localhost aus
[email protected]:~$ netcat -l -p 8088Wenn Sie den obigen Befehl im Terminal Ihres localhost ausführen, netcat beginnt auf Port 8088 Ihres localhosts zu hören.
Geben Sie nun den folgenden Befehl in das Terminal des Remote-Servers ein, um eine Nachricht zu senden
[email protected]:~$ echo „Hallo!” | netcat [Remoteserver-IP] 8080Wenn Sie den obigen Befehl im Terminal Ihres Remote-Servers ausführen, muss auf dem Terminal von localhost die Meldung „Hallo“ erscheinen. Wenn dies passiert, wurde Ihr Tunnel eingerichtet.
Fazit
Um Ihren Localhost über das Internet zugänglich zu machen, werden Tunnel zwischen Ihrem Localhost und dem Internet eingerichtet. In diesem Blog haben wir besprochen, wie Sie Tunnel einrichten, um Ihren localhost für das Internet zugänglich zu machen. Es wurden zwei Methoden zum Herstellen von Tunneln diskutiert, die sind: SSH Tunnelbau und Ngrok Tunnelbau. Verkehrskontrolle mit Ngrok Tunnelbau wurde auch diskutiert. Danach wird der Testprozess der Tunnel mit netcat wurde diskutiert. Nachdem Sie diesen Blog gelesen haben, wird es Ihnen sehr leicht fallen, Ihren lokalen Webserver der Öffentlichkeit zugänglich zu machen.