Ngrok no Linux: Guia Completo de Instalação, Configuração e Uso

O que é o ngrok?

Ngrok permite expor um serviço local (por exemplo, um servidor web rodando no seu PC) para a internet por meio de um túnel seguro, sem precisar configurar redirecionamento de portas no roteador ou DNS complicada.
Requisitos prévios
Antes de começar, você precisa:
Ter uma conta no ngrok (gratuita ou paga).
Ter acesso ao terminal no Linux (shell).
Saber qual serviço/porta local você quer expor (por exemplo, servidor web em
localhost:3000).

Faça o login com uma conta do github ou google. Em seguida, siga esses passos!
Instale o ngrok via Apt com o seguinte comando:
curl -sSL https://ngrok-agent.s3.amazonaws.com/ngrok.asc \
| sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null \
&& echo "deb https://ngrok-agent.s3.amazonaws.com bookworm main" \
| sudo tee /etc/apt/sources.list.d/ngrok.list \
&& sudo apt update \
&& sudo apt install ngrok
Execute o seguinte comando para adicionar seu authtoken ao arquivo de configuração padrão ngrok.yml.
ngrok config add-authtoken seu_token

No arquivo será adicionado o seu token.
Agora veja a aplicação rodando no localhost sem o protocolo de segurança, muita das vezes utilizamos alguns serviços que exigem https.

Agora é que vem a mágica.
Faça o deploy do seu aplicativo, execute o seguinte na linha de comando:
ngrok http 8074

Acesse seu domínio de desenvolvimento para ver seu aplicativo!
https://unforsaken-extrusile-ainsley.ngrok-free.dev

Vai aparecer essa tela mas não se preocupe, clique no botão azul.

Nossa aplicação está carregando, porém precisamos corrigir as urls para que o css e o javascript carreguem. Como a aplicação é um site em wordpress, basta inserir essas linhas no arquivo wp-config.php
define('WP_HOME','https://unforsaken-extrusile-ainsley.ngrok-free.dev');
define('WP_SITEURL','https://unforsaken-extrusile-ainsley.ngrok-free.dev');
Agora nossa aplicação carregou perfeitamente.

Em nosso terminal, podemos visualizar o status de todas as requisições no HTTP Requests.

O ngrok cria uma interface de inspeção web local, onde você consegue ver todas as requisições que passam pelo túnel.
🔗 A URL padrão é:
http://127.0.0.1:4040

O que você encontra lá:
Lista de todas as requisições que chegaram ao túnel.
Método HTTP (GET, POST, PUT etc.).
Status de resposta (200, 404, 500…).
Corpo da requisição e da resposta.
Possibilidade de repetir requisições para testar seu servidor local.
👉 Dica: se você precisar acessar essa interface de outro dispositivo ou servidor, dá para expor também o painel (ngrok http 4040), mas normalmente ele só fica disponível localmente por segurança.
📌 Resumo
O ngrok é uma ferramenta poderosa para desenvolvedores que precisam expor serviços locais na internet de forma rápida e segura. Com ele, é possível compartilhar aplicações em desenvolvimento, realizar testes de integrações externas, validar webhooks e até mesmo acessar serviços internos sem configuração de rede complexa.
📚 Referências
ngrok Docs — Tunnels Configuration
ngrok Docs — API & Inspector







