Skip to content

config.yml

The file is plugins/PortBridge/config.yml. Edit it and use /port reload to publish a validated replacement along with messages. Invalid types or ranges reject loading; after a failed reload, the previous settings remain active.

An active tunnel reconnects with the replacement settings. An explicitly stopped tunnel stays stopped. Local Minecraft and public relay ports are separate settings.


startup:
auto-start: true
delay-seconds: 3
KeyDefaultRange / typePurpose
auto-starttrueBooleanOpen a tunnel automatically after server startup
delay-seconds30–3600Delay before preparing Bore and checking the Minecraft listener

The listener must answer Minecraft status requests before the tunnel can start. With automatic startup disabled, use /port start.


local:
auto-detect: true
host: '127.0.0.1'
port: 25565
KeyDefaultRange / typePurpose
auto-detecttrueBooleanRead the running server’s server-ip and server-port
host127.0.0.1Host without a port or URL schemeExplicit listener host when automatic detection is disabled
port255651–65535Explicit listener port when automatic detection is disabled

Wildcard server bindings are contacted through 127.0.0.1. Automatic detection does not change Minecraft’s port or router settings. Keep enable-status=true in server.properties.


relay:
host: 'bore.pub'
public-host: ''
port: 0
fallback-to-random: true
secret: ''
KeyDefaultRange / typePurpose
hostbore.pubHost without a port or URL schemeBore control server; the control connection uses TCP 7835
public-hostEmptyOptional host without a port or URL schemeHostname shown to friends and used for public probes
port00–655350 requests a free public port; another value requests that port
fallback-to-randomtrueBooleanRetry once with a random port when the requested port is occupied
secretEmptyUp to 4096 characters, without control charactersShared secret required by a private relay

Leave public-host empty unless the replacement hostname reaches the forwarded Minecraft port. Bore’s secret is passed through the client environment and redacted from logs. See tunnels and relays for a private-relay example.


bore:
auto-download: true
executable: ''
download-timeout-seconds: 60
KeyDefaultRange / typePurpose
auto-downloadtrueBooleanDownload pinned Bore v0.6.0 when a valid managed binary is missing
executableEmptyFile path without control charactersCustom executable; empty uses the managed binary
download-timeout-seconds605–600Total managed-download timeout

Managed archives and cached executables use SHA-256 verification. Managed downloads support Windows x64/x86 and Linux/macOS x64/ARM64. Relative custom paths resolve under plugins/PortBridge/; custom executables are outside managed digest verification.


reconnect:
enabled: true
initial-delay-seconds: 5
max-delay-seconds: 60
max-attempts: 0
KeyDefaultRange / typePurpose
enabledtrueBooleanRetry process failures and failed public routes
initial-delay-seconds51–3600Initial retry delay
max-delay-seconds601–3600Maximum retry delay; must be at least the initial delay
max-attempts00–1000Retry limit; 0 keeps retrying until explicitly stopped

Retry delays double gradually up to the maximum. /port stop cancels retries and invalidates earlier callbacks.


health:
enabled: true
interval-seconds: 30
timeout-seconds: 5
failure-threshold: 3
KeyDefaultRange / typePurpose
enabledtrueBooleanVerify Minecraft status and a matching ping through the public route
interval-seconds305–3600Time between public probes
timeout-seconds51–30Local and public probe timeout; cannot exceed the interval
failure-threshold31–100Consecutive failed public probes before reconnection

Disabling public checks still requires a successful local listener check. The relay connection is then displayed as unverified. Health checks do not perform a Minecraft login.


notifications:
on-admin-join: true
debug: false
KeyDefaultTypePurpose
notifications.on-admin-jointrueBooleanShow the current connection panel to joining players with portbridge.address
debugfalseBooleanLog additional Bore output with the configured relay secret redacted

Joining-player notifications recheck the current setting, player permission, and tunnel state before sending. See permissions for address and management access.


bStats uses its own shared file, plugins/bStats/config.yml. To disable anonymous usage statistics, set enabled: false there and restart the server. This setting is separate from Port Bridge’s tunnel configuration.

Browse the bundled config.yml for the complete commented defaults, or continue with messages.yml to customize chat output.