Repolode
ekzhang

ekzhang/bore

Uma CLI minimalista em Rust que expõe uma porta TCP local por meio de um servidor remoto, permitindo acessar serviços do localhost pela internet pública.

Alternativa open source a:ngroklocaltunnel

Estrelas
11,538
Forks
618
Issues abertas
18
Último commit
há 9 meses

O que é?

bore é um túnel TCP de linha de comando escrito em Rust. Ao executar `bore local <PORT> --to <SERVER>`, você encaminha uma porta local para um endereço público em um servidor remoto. A porta remota é atribuída aleatoriamente, a menos que você solicite uma específica. A ferramenta permite acessar um serviço local de fora de uma rede NAT ou de um firewall sem precisar configurar o roteador.

A ferramenta tem um escopo intencionalmente limitado: encaminha tráfego TCP bruto e nada mais. No servidor, basta executar o comando `bore server`, e ele pode ser hospedado por você. Há opções para definir o intervalo de portas, o endereço de bind do servidor de controle e dos túneis e um segredo compartilhado opcional. Esse segredo é usado em um handshake baseado em HMAC em cada conexão; por padrão, o tráfego após o handshake não é criptografado.

O projeto é distribuído como um único binário pelo Cargo, Homebrew, AUR, releases pré-compiladas e Docker, e é construído sobre Tokio.

Recursos principais

  • 01Encaminha portas TCP locais para um endereço público em um servidor remoto.
  • 02Permite solicitar uma porta remota específica ou usar uma atribuída aleatoriamente.
  • 03Pode ser hospedado por você com um único comando `bore server`.
  • 04Oferece suporte a um segredo compartilhado opcional para autenticar clientes.
  • 05Permite definir endereços de bind separados para o servidor de controle e os túneis.
  • 06Disponível pelo Cargo, Homebrew, AUR, binários pré-compilados e Docker.

Casos de uso

  • Compartilhar um app web local com um colega ou com um provedor de webhooks durante o desenvolvimento.
  • Expor um serviço em uma rede doméstica sem alterar o encaminhamento de portas do roteador.
  • Executar um servidor de túnel privado na sua própria infraestrutura.

Início rápido

  1. 1

    Instale o bore CLI com Cargo (requer Rust).

    cargo install bore-cli
  2. 2

    Exponha a porta local 8000 por meio do servidor público bore.pub.

    bore local 8000 --to bore.pub

Antes de usar

  • Os dados são enviados sem criptografia após o handshake inicial; por isso, o tráfego não é criptografado por padrão.
  • O README não lista nenhuma alternativa ao servidor público bore.pub para hospedagem própria, além de executar seu próprio servidor, o que exige algum esforço de configuração.

Tópicos

Perguntas frequentes

O que é bore?
Uma CLI minimalista em Rust que expõe uma porta TCP local por meio de um servidor remoto, permitindo acessar serviços do localhost pela internet pública. bore é um túnel TCP de linha de comando escrito em Rust. Ao executar `bore local <PORT> --to <SERVER>`, você encaminha uma porta local para um endereço público em um servidor remoto. A porta remota é atribuída aleatoriamente, a menos que você solicite uma específica. A ferramenta permite acessar um serviço local de fora de uma rede NAT ou de um firewall sem precisar configurar o roteador.
bore é gratuito? Qual é a licença?
bore é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
bore ainda é mantido?
Sem commits há mais de 6 meses. O último commit de bore foi em 4 de fev. de 2026.
Para que posso usar bore?
Compartilhar um app web local com um colega ou com um provedor de webhooks durante o desenvolvimento. Expor um serviço em uma rede doméstica sem alterar o encaminhamento de portas do roteador. Executar um servidor de túnel privado na sua própria infraestrutura.
Como instalar bore?
Instale o bore CLI com Cargo (requer Rust).: cargo install bore-cli Exponha a porta local 8000 por meio do servidor público bore.pub.: bore local 8000 --to bore.pub
Onde consigo bore?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/ekzhang/bore

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados