Go로 작성된 자체 호스팅 터널로, 자체 도메인과 서버를 통해 localhost 서비스를 인터넷에 공개합니다.
ekzhang/bore
로컬 TCP 포트를 원격 서버로 연결해 localhost 서비스를 공개 인터넷에서 이용하게 하는 간결한 Rust CLI입니다.
대체할 수 있는 제품:ngrok
localtunnel
- 스타
- 11,538
- 포크
- 618
- 열린 이슈
- 18
- 마지막 커밋
- 9개월 전
어떤 프로젝트인가요?
bore는 Rust로 작성된 명령줄 TCP 터널입니다. `bore local <PORT> --to <SERVER>`를 실행하면 로컬 포트가 원격 서버의 공개 주소로 전달됩니다. 특정 포트를 지정하지 않으면 원격 포트는 임의로 할당됩니다. 라우터를 설정하지 않고도 NAT나 방화벽 외부에서 로컬 서비스에 접속할 수 있도록 설계되었습니다.
이 도구의 기능은 의도적으로 제한되어 있습니다. 원시 TCP 트래픽만 전달하며 다른 기능은 제공하지 않습니다. 서버 측은 `bore server` 명령 하나로 실행할 수 있고, 포트 범위, 제어 서버와 터널의 바인드 주소, 선택적 공유 시크릿을 설정해 직접 호스팅할 수 있습니다. 각 연결에서 HMAC 기반 핸드셰이크에 시크릿을 사용하며, 핸드셰이크 이후의 트래픽은 기본적으로 암호화되지 않습니다.
이 프로젝트는 Cargo, Homebrew, AUR, 사전 빌드된 릴리스, Docker를 통해 단일 바이너리로 배포되며 Tokio를 기반으로 합니다.
핵심 기능
- 01로컬 TCP 포트를 원격 서버의 공개 주소로 전달합니다.
- 02원격 포트를 직접 지정하거나 임의로 할당받을 수 있습니다.
- 03`bore server` 명령 하나로 직접 호스팅할 수 있습니다.
- 04클라이언트 인증을 위해 선택적 공유 시크릿을 지원합니다.
- 05제어 서버와 터널에 서로 다른 바인드 주소를 지정할 수 있습니다.
- 06Cargo, Homebrew, AUR, 사전 빌드된 바이너리, Docker를 통해 사용할 수 있습니다.
활용 사례
- 개발 중인 로컬 웹 앱을 동료나 웹훅 제공업체와 공유할 때.
- 라우터의 포트 포워딩 설정을 바꾸지 않고 홈 네트워크의 서비스를 공개할 때.
- 자체 인프라에서 비공개 터널 서버를 운영할 때.
빠른 시작
- 1
Cargo로 bore CLI를 설치합니다(Rust 필요).
cargo install bore-cli - 2
공개 서버 bore.pub을 통해 로컬 포트 8000을 외부에 공개합니다.
bore local 8000 --to bore.pub
사용 전 알아둘 점
- 초기 핸드셰이크 이후 데이터는 암호화되지 않은 상태로 전송되므로 기본적으로 트래픽이 암호화되지 않습니다.
- README에는 직접 서버를 실행하는 방법 외에 공개 서버 bore.pub을 대체해 셀프 호스팅하는 방법이 나와 있지 않으며, 직접 서버를 실행하려면 별도의 설정 작업이 필요합니다.
토픽
자주 묻는 질문
- bore은(는) 무엇인가요?
- 로컬 TCP 포트를 원격 서버로 연결해 localhost 서비스를 공개 인터넷에서 이용하게 하는 간결한 Rust CLI입니다. bore는 Rust로 작성된 명령줄 TCP 터널입니다. `bore local <PORT> --to <SERVER>`를 실행하면 로컬 포트가 원격 서버의 공개 주소로 전달됩니다. 특정 포트를 지정하지 않으면 원격 포트는 임의로 할당됩니다. 라우터를 설정하지 않고도 NAT나 방화벽 외부에서 로컬 서비스에 접속할 수 있도록 설계되었습니다.
- bore은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- bore은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- bore은(는) 아직 유지보수되고 있나요?
- 6개월 이상 커밋 없음. bore의 마지막 커밋은 2026년 2월 4일입니다.
- bore은(는) 어디에 사용할 수 있나요?
- 개발 중인 로컬 웹 앱을 동료나 웹훅 제공업체와 공유할 때. 라우터의 포트 포워딩 설정을 바꾸지 않고 홈 네트워크의 서비스를 공개할 때. 자체 인프라에서 비공개 터널 서버를 운영할 때.
- bore는 어떻게 설치하나요?
- Cargo로 bore CLI를 설치합니다(Rust 필요).: cargo install bore-cli 공개 서버 bore.pub을 통해 로컬 포트 8000을 외부에 공개합니다.: bore local 8000 --to bore.pub
- bore은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/ekzhang/bore
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
계정 없이 Cloudflare Tunnel로 localhost를 HTTPS에 공개하는 무료 오픈소스 ngrok 대안
명령 하나로 로컬 HTTP 서버를 공개 HTTPS URL에 연결하는 오픈소스 ngrok 대안입니다.
Tailscale 계정이나 제어 플레인 없이 WireGuard 데이터 플레인으로 두 기기를 연결하는 netcat 스타일 CLI 및 Go 라이브러리
YAML 파일로 저장되는 홈랩 및 소규모 IT 인프라 관리용 웹 UI와 CLI입니다.