···11% BORE(1) bore 1.0
22% Kieran Klukas
33-% December 2024
33+% January 2026
4455# NAME
66···8899# SYNOPSIS
10101111-**bore** [*SUBDOMAIN*] [*PORT*] [**--protocol** *PROTOCOL*] [**--label** *LABEL*] [**--save**]
1111+**bore** [*SUBDOMAIN*] [*PORT*] [**--protocol** *PROTOCOL*] [**--label** *LABEL*] [**--auth**] [**--save**]
12121313**bore** **--list** | **-l**
1414···16161717# DESCRIPTION
18181919-**bore** is a tunneling service that uses frp (fast reverse proxy) to expose local services to the internet via bore.dunkirk.sh. It provides a simple CLI for creating and managing HTTP, TCP, and UDP tunnels with optional labels and persistent configuration.
1919+**bore** is a tunneling service that uses frp (fast reverse proxy) to expose local services to the internet via bore.dunkirk.sh. It provides a simple CLI for creating and managing HTTP, TCP, and UDP tunnels with optional labels, authentication, and persistent configuration.
20202121# OPTIONS
2222···3232**--label** *LABEL*
3333: Assign a label/tag to the tunnel for organization and identification.
34343535+**-a**, **--auth**
3636+: Require Indiko authentication to access the tunnel. Users must sign in via OAuth before accessing the tunneled service.
3737+3538**--save**
3639: Save the tunnel configuration to bore.toml in the current directory for future use.
3740···55585659[api]
5760port = 3000
5858-protocol = "http"
5959-label = "dev"
6161+labels = ["dev", "api"]
6262+6363+[admin]
6464+port = 3001
6565+auth = true
6666+labels = ["admin"]
60676168[database]
6269port = 5432
6370protocol = "tcp"
6464-label = "postgres"
7171+labels = ["postgres"]
65726673[game-server]
6774port = 27015
6875protocol = "udp"
6969-label = "game"
7676+labels = ["game"]
7077```
71787279When running **bore** without arguments in a directory with bore.toml, you'll be prompted to choose between creating a new tunnel or using a saved configuration.
73808181+# AUTHENTICATION
8282+8383+Tunnels can require Indiko authentication by setting **auth = true** in bore.toml or using the **--auth** flag. When enabled:
8484+8585+- Users are redirected to Indiko to sign in before accessing the tunnel
8686+- Sessions last 7 days by default
8787+- The authenticated user's info is passed to the tunneled service via headers:
8888+ - **X-Auth-User**: User's profile URL
8989+ - **X-Auth-Name**: User's display name
9090+ - **X-Auth-Email**: User's email address
9191+7492# EXAMPLES
75937694Create a simple HTTP tunnel:
···83101$ bore api 3000 --label dev
84102```
85103104104+Create a protected tunnel requiring authentication:
105105+```
106106+$ bore admin 3001 --auth --label admin
107107+```
108108+86109Create a TCP tunnel for a database:
87110```
88111$ bore database 5432 --protocol tcp --label postgres
···96119Save a tunnel configuration:
97120```
98121$ bore frontend 5173 --label local --save
122122+```
123123+124124+Save a protected tunnel configuration:
125125+```
126126+$ bore admin 3001 --auth --label admin --save
99127```
100128101129List active tunnels:
···121149# SEE ALSO
122150123151Dashboard: https://bore.dunkirk.sh
152152+153153+Indiko: https://indiko.dunkirk.sh
124154125155# BUGS
126156