Lo sviluppo di siti Internet e web application è ormai da tempo uno dei core business di tantissime di aziende in tutto il mondo, ecco perché sono nati numerosi tool open source concepiti con lo scopo di agevolare i web developer durante le operazioni di sviluppo e testing. a questo proposito oggi vogliamo parlarvi di uno di questi strumenti: Ngrok.
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.
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