BetterWire Installation Guide
Follow these steps to get your secure tunnel up and running.
Cross-Platform by Design: You can mix and match operating systems. For example, run the server on a Linux machine and connect with a Windows client, or vice-versa. The process is nearly identical.
Server Setup
The server is the core of your setup. It runs on a machine with a public IP address (like a VPS) and manages client connections. We recommend using a Linux server for optimal stability.
1. Download & File Placement
- Download the appropriate package (e.g.,
Linux.ziporWindows.zip). - Unzip the archive. You will have three essential files:
server,server_config.yml, andindex.html.
Crucial: The index.html file MUST be in the exact same directory as your server executable (server.exe on Windows). The server application needs this file to serve the web dashboard.
2. Configuration (server_config.yml)
Open the server_config.yml file in a text editor to configure your server:
# IP and port for clients to connect to.
# "0.0.0.0" allows connections from any IP.
listen_address: "0.0.0.0:8090"
# IP and port for the web dashboard.
web_interface_address: "0.0.0.0:8080"
# A strong, unique password your clients will use to authenticate.
client_secret: "change-this-to-a-very-secure-password"
# A password to log in to the web dashboard.
# If you leave this empty, a new one will be generated on the first run.
server_identifier: "change-this-to-your-dashboard-login"
3. Firewall Configuration
Your server's firewall must allow incoming traffic on the ports you've configured:
- The
listen_addressport (e.g.,8090/TCP) for client connections. - The
web_interface_addressport (e.g.,8080/TCP) for the web dashboard. - Any public ports you intend to forward (e.g.,
25565/TCPand19132/UDPfor game servers).
4. Running the Server
On Linux (Recommended)
First, make the server file executable:
chmod +x server
To ensure the server keeps running even after you close your terminal, we strongly recommend using screen. If you don't have it, install it with sudo apt-get install screen (Debian/Ubuntu) or sudo yum install screen (CentOS).
- Start a new screen session: Give it a memorable name.
screen -S betterwire - Run the server:
./server - Detach from the session: Press
Ctrl+AthenD. The server is now running in the background.
To re-attach to the session later (to see logs or stop the server), use: screen -r betterwire
On Windows
Simply double-click server.exe or run it from the Command Prompt. A window will open showing the server logs. Keep this window open for the server to remain active.
Client Setup
The client runs on your local machine (e.g., your PC at home) and connects to your server.
1. Download & Prepare
Download and unzip the package for your OS. You'll find a client executable and a client_config.yml file.
2. Configuration (client_config.yml)
Edit client_config.yml to point to your server:
# Your server's public IP and the 'listen_address' port.
server_address: "YOUR_SERVER_IP:8090"
# The 'client_secret' from your server_config.yml. This MUST match perfectly.
secret: "change-this-to-a-very-secure-password"
# A list of local ports you want to forward.
# The public port will match the local port.
ports_to_forward:
- "tcp:25565"
- "udp:19132"
3. Running the Client
On Windows
Double-click client.exe. A command prompt window will appear and show the connection status. Keep it running to maintain the tunnel.
On Linux
Make the client executable (chmod +x client) and run it from the terminal (./client). You can also run it inside a screen session, just like the server.
Accessing the Web Dashboard
Once your server is running and a client is connected, you can manage everything from the web UI.
- Open a browser and go to
http://YOUR_SERVER_IP:8080(using theweb_interface_addressport). - Log in using the
server_identifieryou set in the server config. - You can now view client status and manage port rules in real-time.