Teraz, ak chcete zdieľať niečo z miestneho webového servera so svojimi priateľmi, ktorí sú mimo lokálnej siete a nemajú prístup k vášmu zariadeniu. Ako by ste potom vystavili svojho localhost svojim priateľom mimo LAN?
V takom prípade vytvoríte tunel z vášho lokálneho hostiteľa na internet a zdieľate verejnú IP adresu so svojimi priateľmi, ku ktorej je prístup z celého internetu.
Tunely je možné vytvoriť pomocou SSH alebo Ngrok. Tu si rozoberieme obidva spôsoby a potom overíme výsledok tunelovania pomocou netcat.
Získanie verejnej IP pomocou Ngrok
Ngrok je multiplatformový tunelový softvér, ktorý sa dá použiť na vytvorenie bezpečných tunelov z internetu do miestnej siete. Zachytáva tiež všetku dopravu na kontrolu. Nasleduje postup na vytvorenie tunelov z localhostu na internet.
Inštaluje sa Ngrok
Pred použitím Ngrok na vašom počítači, musíme si ho nainštalovať. Ngrok možno nainštalovať pomocou nasledujúceho príkazu v Termináli.
[chránené e-mailom]: ~ $ snap install ngrokKeď spustíte vyššie uvedený príkaz, nainštaluje ngrok po stiahnutí požadovaných súborov. Môžete skontrolovať, či Ngrok bol nainštalovaný alebo nie pomocou nasledujúceho príkazu v termináli.
[chránené e-mailom]: ~ $ ngrok --verziaAk Ngrok ak je nainštalovaný, bude mať verziu uvedenú na nasledujúcom obrázku.
Po inštalácii Ngrok, teraz je pripravená na použitie na vytvorenie tunelov.
Vystavuje Localhost na verejnosti
Ngrok sa používa na vystavenie vášho lokálneho webového servera internetu. Všetko, čo musíme urobiť, je povedať Ngrok na akom porte počúva váš miestny webový server. Spustením nasledujúceho príkazu vystavte svoj lokálny webový server na internete
[chránené e-mailom]: ~ $ ngrok http 8080Keď spustíte vyššie uvedený príkaz v termináli, Ngrok vytvorí tunel z miestneho webového servera na internet cez port 8080 a zobrazí verejnú adresu URL, cez ktorú je možné pristupovať k miestnemu webovému serveru. Po spustení vyššie uvedeného príkazu sa na termináli zobrazí nasledujúce grafické používateľské rozhranie.
Teraz je váš localhost: 8080 prístupný z celého internetu pomocou odkazu zobrazeného na obrázku vyššie.
Prehliadka premávky cez tunel
Ngrok nám poskytuje možnosť kontrolovať všetky prichádzajúce alebo odchádzajúce požiadavky z internetu na vášho miestneho hostiteľa. Celú premávku môžeme sledovať na nasledujúcom odkaze
localhost: 4040 / inspect / httpKeď prejdete na vyššie uvedený odkaz, prehľadávač vám zobrazí všetky prichádzajúce alebo odchádzajúce požiadavky, ako je to znázornené na nasledujúcom obrázku.
Terminál tiež zobrazuje požiadavky odoslané na váš miestny webový server. Nasledujúci obrázok ukazuje, ako terminál uchováva záznam požiadaviek HTTP.
Získanie verejnej IP pomocou SSH
SSH Secure Shell je bezpečný komunikačný protokol používaný na vzdialenú komunikáciu medzi klientom a serverom. Ďalej, SSH možno tiež použiť na vytvorenie tunelov na sprístupnenie vášho localhost verejnosti. V tomto blogu uvidíme, ako používať SSH na vytváranie tunelov medzi vaším lokálnym hostiteľom a verejným internetom.
Vystavuje Localhost na verejnosti
Localhost môže byť tiež vystavený verejnosti pomocou SSH čo je v podstate komunikačný protokol. To sa nazýva SSH razenie tunela alebo SSH presmerovanie prístavu. Spustením nasledujúceho príkazu v termináli vášho localhost vytvorte tunel medzi localhost a vzdialeným serverom
[chránené e-mailom]: ~ $ ssh -R 8080: localhost: 8088 remoteUser @ IPAddressVo vyššie uvedenom príkaze
- 8080 je port, ktorý server počúva
- 8088 je port, ktorý chcete vystaviť
- remoteUser je meno používateľa, ktorému vystavíte svoj webový server
- IPAddress je IP vzdialeného používateľa
- -R znamená, že vytvárate pripojenie zo vzdialeného servera k vášmu miestnemu hostiteľovi
Teraz je k portu 8088 vášho miestneho hostiteľa prístup zo vzdialeného servera, ktorý má IP „IP adresu“ a užívateľské meno „remoteUser“ cez port 8080.
Konfigurácia vzdialeného servera
Pred prístupom k localhost cez tunel zo vzdialeného servera urobte nejaké zmeny v sshd_config súbor vzdialeného servera. Tento súbor je možné otvoriť zadaním nasledujúceho príkazu do terminálu.
[chránené e-mailom]: ~ $ nano / etc / ssh / sshd_configPo otvorení súboru vykonajte zmeny tak, ako je to znázornené na nasledujúcom obrázku.
AllowTcpForwarding ánoGatewayPorty áno
Po vykonaní zmien reštartujte zariadenie SSH server tieto zmeny použiť. Teraz je localhost otvorený pre vzdialený server, ku ktorému je možné získať prístup.
Testovanie tunelov
Zatiaľ sme vytvorili tunely medzi localhostom a vzdialeným serverom pomocou SSH a Ngrok. Teraz otestujeme, či boli tieto tunely vybudované alebo nie. Použijeme netcat príkaz na testovanie tunelov. Spustite nasledujúci príkaz v termináli vášho localhost
[chránené e-mailom]: ~ $ netcat -l -p 8088Keď spustíte vyššie uvedený príkaz v termináli vášho localhost, netcat začne počúvať na porte 8088 vášho localhost.
Teraz zadajte nasledujúci príkaz do terminálu vzdialeného servera na odoslanie správy
[chránené e-mailom]: ~ $ echo „Dobrý deň!“| netcat [IP remoteserver] 8080Keď spustíte vyššie uvedený príkaz v termináli vzdialeného servera, na termináli localhost sa musí zobraziť správa „Hello“. Ak sa to stane, váš tunel bol zriadený.
Záver
Sprístupnenie vášho localhostu z internetu sa robí vytvorením tunelov medzi vašim localhostom a internetom. V tomto blogu sme diskutovali o tom, ako vytvoriť tunely, aby bol váš localhost prístupný na internete. Diskutovalo sa o dvoch metódach budovania tunelov, ktoré sú: SSH razenie tunelov a Ngrok razenie tunelov. Dopravná inšpekcia pomocou Ngrok Diskutovalo sa aj o tunelovaní. Po tomto, proces testovania tunelov pomocou netcat bolo diskutované. Po prečítaní tohto blogu bude pre vás veľmi ľahké sprístupniť miestny webový server verejnosti.