[💡Dica] Como expor seu localhost para o mundo 🌎 em 3min - ngrok

Essa semana eu estava querendo testar os WebHooks do Gitlab e não queria ter que subir uma máquina na nuvem para ter uma url, pesquisando um pouco me deparei com o Ngrok. E turma, ele é uma delicinha 🥑

Voce pode baixar ele aqui, depois de baixar ele para expor uma das porta do seu localhost é só executar:

ngrok http PORTA

(Ex: ngrok http 8000)

e voilá ✨, ele faz um túnel de uma url para seu localhost. E você pode compartilhar o link que ele gera com quem você quiser.

Print do terminal com ngrok rodando

Me conta, você já conhecia o Ngrok?

Muito legal a dica! Uso o ngrok a bastante tempo já.

Apenas para contribuir com a Tab, gostaria de mostrar aos amigos uma outra alternativa: https://localhost.run

Ele também é um tunel para localhost, mas com a possibilidade de rodar direto do terminal sem precisar instalar nenhum software.

(ele usa o cliente SSH, que em geral já vem instalado nos sistemas mais modernos).

Não conhecia! Muito bacana a ferramenta, por inclusive apenas usar o ssh nativo. Inclusive, para quem usa um ZSH da vida, criei uma função com alias para quem quiser facilitar. No ~/.zshrc ```js function tunnel() { ssh -R 80:localhost:"$1" localhost.run } ``` Logo depois, executar ```js source ~/.zshrc ``` Fechar e abrir o terminal e pronto, comando feito. No caso, seria só abrir um terminal e rodar "tunnel porta", onde porta você coloca a porta que quer expor.
Sempre usei ngrok e não conhecia o localhost.run obrigado!

Nossa isso é muito bom, eu usava o surge, mas funciona apenas front-end. O ngrok funciona para back-end?

De maneira bem genérica, o'que o **Ngrok** faz e conectar uma url a porta selecionada do seu localhost. Então qualquer coisa que você estiver rodando na porta que você selecionou vai estar exposta neste url. Seja sua aplicação em Express, Next, Django, Ruby e etc. Se estiver rodando local na mesma porta que você selecionou no Ngrok vai ser acessível pela url.
Que massaaa, obrigada iorjunior
Sim!! Se bobiar acho que funciona p até servidor de tibia (me lembrei do hamachi)..
Opa, botar um Online entao kkkkk

Valeu!

Muito massa, isso vai ser útil pra mim, quero fazer projetos de back-end e ainda não queria pagar um host na internet, com esse localhost vai ser top!

Tem uma alternativa bem legal também, chamada cloudflare tunnel.

uma pergunta serve pra quem tem cgnat ? ou e obrigatorio tem um ipv4 valido ?

Acredito que sim. Ele nao muda nada na sua rede, a grosso modo ele funciona: `Url -> Agente no seu pc (ngrok) -> Sua Aplicacao rodando na porta setada` Mas, voce pode fazer o teste e voltar aqui para contar se deu certo.
mais eu consigo abrir por porta ? por exemplo conectar em sum servidor ssh ? assim eu posso testar edit e a mesma coisa do dns dinamico caso eu deixe o ipv6 ativado funsiona caso ambos tenham ipv6 se desativo o ipv6 da maquina host não conecta mais por causa do nat

A funcionalidade dele é parecida com a do vercel? Se sim, eu poderia usar com um build de uma aplicação react?

O que a vercel faz é pegar seu código e rodar ele em uma máquina provisionada por eles, ou seja, o código é executado no pc de outra pessoa/empresa e ele é exposto na internet para que qualquer um o acesse. Já o ngrok, pega uma aplicação que você está rodando e expõe na internet, a diferença principal é que na vercel você roda no servidor deles, já no ngrok você roda na sua máquina mesmo.

ngrok é fantástico. usava para testes e treinos com ferramentas de hacking, fazendo treinos de phishing, spear phising e evil twin.

Muito foda!! Não conhecia essa ferramenta, to lendo mais sobre nesse momento!

Meu Deus mano, vc quer um beijo agora ou depois? kkkkkk daorinha demais, vou usar agora! valeu

Fica a dica: Se não tiver potência na maquina para rodar o front e o back, suba o front, deixe uma variavel no localStorage para colocar um endereço da API, rode o back na máquina, coloque o endereço lá e aproveite o front hospedado para testar o back em desenvolvimento na sua máquina

show de bola, sempre quis fazer isso mas nao sabia como ... galera aque ta afiada kkk

ngrok salva muitoooo! boa

Que maravilha, eu adorei isso!

Experimentei em Laravel, após algumas configurações em questão da porta HTTPS e HTTP, eu consegui rodar e enviar o link para amigos e testar a aplicação no meu próprio celular (o que SIM, faz muita diferença para mim do que usar o inspecionar elemento).

Salvou muito minha vida, vou usar para sempre!

Que bacana, esses dias eu tentei subir uma aplicação que tava estudando no github page, porém ele não lidou muito bem com o JSON Server, não sei se eu não soube subir direito, mas vou testar essa alternativa !

Interessante sua recomendação... Muita gente não conhece. Ngrok é uma maravilha, uso em vários projetos e ocasiões.

Isso foi de uma extrema importância que nossa senhora, não tinhaa idéia de como fazer isso!

[Post partilhar host na internet eu estava precisando disso valeu.

Ótimo para deixar um pc velho como servidor de alguma aplicação backend que esteja em fase inicial e realizar testes que precisar

Interessantíssimo! Nunca tinha ouvido falar dessa ferramenta, e parece muito interessante!

Conheci o ngrok há alguns anos no começo da faculdade, gostava de usa para fazer alguns teste e coloca meus projetos para meus amigos testarem.

Isso salva quando preciso testar webhooks

Fantástico! Acabei de testar aqui e a facilidade da configuração disso é impressionante. Será muito útil em um projeto que irei apresentar na faculdade semana que vem :)

Já tinha um pouco de conhecimento dessa ferramenta de quando estudei Pentesting, principalmente focando em Phishing ou simplesmente "largar" um clone de um website famoso (facebook, youtube e etc) para capturar dados.

Porém, por incrível que pareça, nunca havia pensado em utilizar ele dessa maneira.

Achei muito massa ! Fiquei com uma pequena dúvida apenas, essa URL que ele gera permite conexões externas ? Se sim, precisa de mais alguma configuração ? =]

Conheço, usei uma vez para conseguir jogar minecraft com meus amigos, ai abria a minha porta do localhost em que estava o jogo e mandava o link para eles acessarem.

Usei durante muitos anos o no-ip, fazia uma tempo que não testava nada desse tipo e esse ngrok se mostrou bem rápido, vou subir alguma coisa e deixar rodando para testar a estabilidade volto depois com os teste.

Utilizo o no-ip na empresa em que trabalho para uma página de cotação de produto com diversos fornecedores, o ip não é fixo e utilizamos o plano gratuito (a cada 30 dias tenho que confirmar a utilização pra não perder o endereço). O ngrok seria uma alternativa, ou nesse caso o no-ip é a melhor solução?

Que issooo aue delicimha esse nível de compartilhamento de tecnologias para facilitar a nossa vida e compartilhar com o mundo nossas queridas criações.

Interessante, vai me ajudar demais na graduação.

Sim. Conheci o Ngrok no Kali-Linux. O projeto evoluiu e foi simplificado. Agora basta configurar o binário do Ngrok, tanto no Linux quanto no Windows.

Uma delicinha, mesmo!

Sempre quis fazer algo do tipo mas nao sabia como ... agradeço pela informaçao ...

Agora, isso nao deixa brechas na segurança da sua maquina local ?

Nesse processo você não esta expondo a sua maquina em si na rede. Quando uma requisição bate na url, ela direciona para o agente do ngrok na sua máquina e ele direciona para sua porta local. Mas como Natanael falou vai depender um pouco do que sua aplicação faz, se sua aplicação consegue executar comandos direto na sua máquina, esse é um enorme problema. como recomendação deixo esse video aqui do [Akita](https://youtu.be/T-jHuFnxZ2k).