Netværk

Sådan får du offentlig IP-adresse ved hjælp af Ngrok eller SSH Tunneling

Sådan får du offentlig IP-adresse ved hjælp af Ngrok eller SSH Tunneling
Hver enhed, der er tilsluttet på internettet, har en IP-adresse, der entydigt identificerer enheden. IP-adresser kan klassificeres i to typer, der er offentlige og private. Offentlige IP-adresser kan tilgås fra hvor som helst på Internettet, mens private IP-adresser kun kan tilgås inden for Local Area Network (LAN).

Hvis du nu vil dele noget fra din lokale webserver til dine venner, der er uden for det lokale netværk, og de ikke kan få adgang til din maskine. Så hvordan ville du udsætte din lokale vært for dine venner uden for LAN?

I dette tilfælde opretter du en tunnel fra din lokale vært til internettet og deler en offentlig IP-adresse til dine venner, som kan tilgås fra hele internettet.

Tunneler kan oprettes ved hjælp af SSH eller Ngrok. Her vil vi diskutere begge måder, og derefter vil vi kontrollere resultatet af tunneling ved hjælp af netcat.

Sådan får du offentlig IP ved hjælp af Ngrok

Ngrok er en cross-platform tunnelsoftware, der kan bruges til at etablere sikre tunneller fra internettet til det lokale netværk. Det fanger også al trafik til inspektion. Følgende er metoden til at etablere tunneler fra localhost til internettet.

Installation af Ngrok

Før brug Ngrok på din maskine skal vi installere den. Ngrok kan installeres ved hjælp af følgende kommando i Terminal.

[e-mail-beskyttet]: ~ $ snap-installation ngrok

Når du kører ovenstående kommando, installerer den ngrok efter download af nødvendige filer. Du kan kontrollere, om Ngrok er installeret eller ikke ved hjælp af følgende kommando i terminalen.

[e-mail-beskyttet]: ~ $ ngrok --version

Hvis Ngrok er installeret, vil den give versionen som vist i følgende figur.

Efter installation Ngrok, nu er den klar til brug til etablering af tunneler.

Eksponering af Localhost for offentligheden

Ngrok bruges til at udsætte din lokale webserver for internettet. Alt hvad vi skal gøre er at fortælle det Ngrok hvilken port din lokale webserver lytter til. Kør følgende kommando for at udsætte din lokale webserver for internettet

[e-mail-beskyttet]: ~ $ ngrok http 8080

Når du kører ovenstående kommando i Terminal, Ngrok opretter en tunnel fra din lokale webserver til internettet via port 8080 og viser den offentlige URL, hvorigennem din lokale webserver kan fås. Følgende GUI vises på Terminal, når du kører ovenstående kommando.

Nu kan din lokale vært: 8080 fås fra hele internettet ved hjælp af linket vist i ovenstående figur.

Inspektion af trafikken gennem tunnelen

Ngrok giver os muligheden for at inspicere alle indgående eller udgående anmodninger fra internettet til din lokale vært. Vi kan observere al trafik ved at gå til følgende link

localhost: 4040 / inspect / http

Når du går til ovenstående link, viser browseren dig alle de indgående eller udgående anmodninger som vist i følgende figur.

Terminal viser også anmodningerne til din lokale webserver. Følgende figur viser, hvordan terminalen registrerer http-anmodninger.

Sådan får du offentlig IP ved hjælp af SSH

SSH også kendt som Secure Shell er en sikker kommunikationsprotokol, der bruges til fjernkommunikation mellem klient og server. desuden, SSH kan også bruges til at etablere tunneler for at gøre din lokale vært tilgængelig for offentligheden. I denne blog vil vi se, hvordan man bruger SSH til at etablere tunneler mellem din lokale vært og det offentlige internet.

Eksponering af Localhost for offentligheden

Localhost kan også blive udsat for offentligheden ved hjælp af SSH som dybest set er en kommunikationsprotokol. Det kaldes SSH tunneling eller SSH portvideresendelse. Kør følgende kommando i terminalen på din localhost for at etablere en tunnel mellem din localhost og remote server

[e-mail-beskyttet]: ~ $ ssh -R 8080: localhost: 8088 remoteUser @ IPAddress

I ovenstående kommando

Nu kan du få adgang til port 8088 på din lokale vært fra en ekstern server, der har IP "IP-adresse" og brugernavn "remoteUser" gennem port 8080.

Konfiguration af fjernserver

Før du får adgang til localhost gennem tunnelen fra en ekstern server, skal du foretage nogle ændringer i sshd_config fil på den eksterne server. Denne fil kan åbnes ved at skrive følgende kommando i terminalen.

[e-mail-beskyttet]: ~ $ nano / etc / ssh / sshd_config

Efter åbning af filen skal du foretage ændringerne som vist i følgende figur.

AllowTcpForwarding ja
GatewayPorts ja

Efter at have foretaget ændringer, genstart din SSH server til at anvende disse ændringer. Nu er localhost åben for den eksterne server, der skal tilgås.

Test af tunnellerne

Indtil videre har vi etableret tunneller mellem localhost og en ekstern server ved hjælp af SSH og Ngrok. Nu vil vi teste, om disse tunneler er etableret eller ej. Vi bruger netcat kommando til at teste tunneler. Kør følgende kommando i terminalen på din localhost

[e-mail-beskyttet]: ~ $ netcat -l -p 8088

Når du kører ovenstående kommando i terminalen på din localhost, netcat begynder at lytte på port 8088 på din lokale vært.

Skriv nu følgende kommando i terminalen på den eksterne server for at sende besked

[email protected]: ~ $ echo “Hej!”| netcat [fjernserver IP] 8080

Når du kører ovenstående kommando i terminalen på din eksterne server, skal meddelelsen "Hej" vises på terminalen på localhost. Hvis dette sker, er din tunnel blevet oprettet.

Konklusion

For at gøre din lokale vært tilgængelig fra internettet gøres ved at etablere tunneler mellem din lokale vært og internettet. I denne blog har vi diskuteret, hvordan man opretter tunneler for at gøre din lokale vært tilgængelig for internettet. To metoder til etablering af tunneler er blevet diskuteret, hvilke er SSH tunneling og Ngrok tunneling. Trafikinspektion ved hjælp af Ngrok tunneling er også blevet drøftet. Efter dette er processen med at teste tunnellerne ved hjælp af netcat er blevet drøftet. Efter at have læst denne blog vil det være meget let for dig at gøre din lokale webserver til offentligheden.

Sådan bruges GameConqueror Cheat Engine i Linux
Artiklen dækker en vejledning om brug af GameConqueror-snydemotoren i Linux. Mange brugere, der spiller spil på Windows, bruger ofte "Cheat Engine" -a...
Bedste spilkonsolemulatorer til Linux
Denne artikel viser en liste over populære spilkonsolemuleringssoftware, der er tilgængelig til Linux. Emulation er et softwarekompatibilitetslag, der...
Bedste Linux Distros til spil i 2021
Linux-operativsystemet er kommet langt fra dets originale, enkle, serverbaserede udseende. Dette operativsystem er forbedret enormt i de senere år og ...