Ngrok è un reverse proxy server cross-platform con cui è possibile esporre un server locale, collocato dietro NAT, e firewall alla rete Internet tramite secure tunnel. Attraverso Ngrok si potrà implementare un personal cloud service anche dalla propria postazione di lavoro.

Semplificando al massimo, Ngrok permette di stabilire una connessione sicura con la propria macchina (localhost) cosi da poter eseguire dei test sui siti Web e sulle Web application che operano localmente, evitando di dover caricare il proprio codice su altri servizi cloud.

inspect2

Tra le feature principali di Ngrok abbiamo:

  • Facilità d'installazione, non necessità di dipendenze.
  • Supporta i secure tunnel.
  • Cattura e analizza tutto il traffico veicolato nel tunnel.
  • Consente di evitare il port forwarding del router.
  • Implementa l'HTTP authentication (tramite password protection).
  • Utilizza i TCP Tunnel per esporre i networked service che non usano HTTP (ad esempio via SSH).
  • Supporta il tunneling con HTTP e HTTPS (SSL/TLS).
  • Supporta tunnel multipli e simultanei.
  • Permette di ripetere Webhook request.
  • Consente di lavorare con i virtual-host.
  • Può essere automatizzato tramite API.

Prima di iniziare ad utilizzare Ngrok è necessario avere installato in locale un Web server, in alternativa si può realizzare uno stack LAMP/LEMP. Ecco come installare Ngrok:

mkdir ngrok
cd ngrok/
wget -c https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
unzip ngrok-stable-linux-amd64.zip

Dopo aver scaricato e decompresso il pacchetto bisognerà creare un file index.html nel Web server, ad esempio su Apache:

sudo nano /var/www/html/index.html

ed aggiungere:

<!DOCTYPE html>
<html>
<body>
<h1>Prova</h1>
<p>Test di Ngrock.</p>
</body>
</html>

Salviamo il file e ora possiamo avviare il tool puntandolo sulla porta su cui abbiamo in ascolto il nostro Web server:

ngrok http 80

Una volta avviato possiamo iniziare ad usarlo tramite la comoda interfaccia Web:

http://localhost:4040 

Via Ngrok

CommentaDi' la tua

Il tuo indirizzo email non sarà mostrato pubblicamente. I campi obbligatori sono contrassegnati da *