Работа в мрежа

Как да получите публичен IP адрес с помощта на Ngrok или SSH тунелиране

Как да получите публичен IP адрес с помощта на Ngrok или SSH тунелиране
Всяко устройство, свързано в интернет, има IP адрес, който уникално идентифицира устройството. IP адресите могат да бъдат класифицирани в два типа, които са публични и частни. Публичните IP адреси могат да бъдат достъпни от всяко място в Интернет, докато частните IP адреси могат да бъдат достъпни само в рамките на локална мрежа (LAN).

Сега, ако искате да споделите нещо от вашия локален уеб сървър с приятели, които са извън локалната мрежа и те не могат да имат достъп до вашето устройство. Тогава как бихте изложили вашия localhost на вашите приятели извън LAN?

В този случай вие установявате тунел от вашия локален хост към интернет и споделяте публичен IP адрес на приятелите си, до който може да се осъществи достъп от целия интернет.

Тунелите могат да бъдат установени чрез използване SSH или Нгрок. Тук ще обсъдим двата начина и след това ще проверим резултата от използването на тунели netcat.

Получаване на публичен IP с помощта на Ngrok

Нгрок е междуплатформен тунелен софтуер, който може да се използва за установяване на сигурни тунели от интернет до локалната мрежа. Той също така улавя целия трафик за проверка. Следва методът за установяване на тунели от localhost до интернет.

Инсталиране на Ngrok

Преди да използвате Нгрок на вашата машина, ние трябва да го инсталираме. Нгрок може да се инсталира с помощта на следната команда в Терминал.

[имейл защитен]: ~ $ snap install ngrok

Когато стартирате горната команда, тя ще инсталира ngrok след изтегляне на необходимите файлове. Можете да проверите дали Нгрок е инсталиран или не с помощта на следната команда в терминала.

[имейл защитен]: ~ $ ngrok --version

Ако Нгрок е инсталиран, той ще даде версията, както е показано на следващата фигура.

След инсталиране Нгрок, сега е готов за използване за установяване на тунели.

Излагане на Localhost на обществеността

Нгрок се използва за излагане на вашия локален уеб сървър в интернет. Всичко, което трябва да направим, е да кажем Нгрок на кой порт слуша вашият локален уеб сървър. Изпълнете следната команда, за да изложите вашия локален уеб сървър в интернет

[имейл защитен]: ~ $ ngrok http 8080

Когато стартирате горната команда в терминала, Нгрок установява тунел от вашия локален уеб сървър към интернет през порт 8080 и показва публичния URL адрес, през който може да се осъществи достъп до вашия локален уеб сървър. Следният GUI се появява на терминала, когато стартирате горната команда.

Сега вашият localhost: 8080 може да бъде достъпен от цял ​​интернет, като използвате връзката, показана на горната фигура.

Проверка на трафика през тунела

Нгрок ни предоставя възможността да инспектираме всички входящи или изходящи заявки от интернет до вашия localhost. Можем да наблюдаваме целия трафик, като отидем на следната връзка

localhost: 4040 / inspect / http

Когато отидете на горната връзка, браузърът ви показва всички входящи или изходящи заявки, както е показано на следващата фигура.

Терминалът също така показва заявките, отправени към вашия локален уеб сървър. Следващата фигура показва как терминалът съхранява записа на http заявки.

Получаване на публичен IP с помощта на SSH

SSH известен също като Secure Shell е защитен комуникационен протокол, използван за отдалечена комуникация между клиент и сървър. освен това, SSH може да се използва и за установяване на тунели, за да направи вашия локален хост достъпен за обществеността. В този блог ще видим как да използваме SSH за установяване на тунели между вашия localhost и публичен интернет.

Излагане на Localhost на обществеността

Localhost също може да бъде изложен на обществеността чрез използване SSH което всъщност е комуникационен протокол. Нарича се SSH тунелиране или SSH пренасочване на портове. Изпълнете следната команда в терминала на вашия localhost, за да установите тунел между вашия localhost и отдалечен сървър

[имейл защитен]: ~ $ ssh -R 8080: localhost: 8088 remoteUser @ IPAddress

В горната команда

Сега порт 8088 на вашия localhost може да бъде достъпен от отдалечен сървър с IP „IP адрес“ и потребителско име „remoteUser“ през порт 8080.

Конфигуриране на отдалечен сървър

Преди да осъществите достъп до localhost през тунела от отдалечен сървър, направете някои промени в sshd_config файл на отдалечения сървър. Този файл може да бъде отворен чрез въвеждане на следната команда в терминала.

[имейл защитен]: ~ $ nano / etc / ssh / sshd_config

След отваряне на файла направете промените, както е показано на следващата фигура.

AllowTcpForwarding да
GatewayPorts да

След като направите промени, рестартирайте вашия SSH сървър, за да приложи тези промени. Сега localhost е отворен за отдалечения сървър за достъп.

Тестване на тунелите

Досега сме установили тунели между localhost и отдалечен сървър с помощта на SSH и Нгрок. Сега ще тестваме дали тези тунели са установени или не. Ние ще използваме netcat команда за тестване на тунели. Изпълнете следната команда в терминала на вашия localhost

[имейл защитен]: ~ $ netcat -l -p 8088

Когато стартирате горната команда в терминала на вашия localhost, netcat започва да слуша на порт 8088 на вашия localhost.

Сега въведете следната команда в терминала на отдалечен сървър, за да изпратите съобщение

[имейл защитен]: ~ $ echo „Здравейте!”| netcat [отдалечен сървър IP] 8080

Когато стартирате горната команда в терминала на вашия отдалечен сървър, съобщението “Hello” трябва да се появи на терминала на localhost. Ако това се случи, вашият тунел е създаден.

Заключение

За да направите вашия localhost достъпен от интернет, се прави чрез установяване на тунели между вашия localhost и интернет. В този блог обсъдихме как да създадете тунели, за да направите вашия localhost достъпен за интернет. Обсъдени са два метода за установяване на тунели, които са SSH тунелиране и Нгрок тунелиране. Използване на инспекция на движението Нгрок обсъждането на тунели също е обсъдено. След това процесът на тестване на тунелите се използва netcat е обсъждано. След като прочетете този блог, ще ви бъде много лесно да направите своя локален уеб сървър обществен.

Пристанища с отворен код на търговски игрални машини
Безплатни разширения на играта с отворен код и междуплатформени игри могат да се използват за възпроизвеждане на стари, както и някои от доста скорошн...
Най-добрите игри за команден ред за Linux
Командният ред не е само най-големият ви съюзник при използване на Linux - той може да бъде и източник на забавление, защото можете да го използвате, ...
Най-добрите приложения за картографиране на геймпад за Linux
Ако искате да играете игри на Linux с геймпад вместо типична система за въвеждане на клавиатура и мишка, има някои полезни приложения за вас. Много ко...