Authentication

How Exposr authenticates agents.

Agent tokens

Exposr uses a shared token for authenticating agents on the control channel. The agent sends its token when connecting to port 9000, and the server validates it against its configured token. Connections with mismatched tokens are rejected before any tunnel operations are allowed.

Setting up authentication

On the client, run:

bash
exposr config set-server YOUR_SERVER_IP

This generates a random token and saves it to ~/.exposr/agent_token.txt. Then on the server:

bash
exposr server init-token PASTE_TOKEN_HERE

Data channel authentication

Experimental
Data connections on port 9001 are not currently authenticated separately. The data channel relies on UUID matching only. Per-data-connection authentication is a planned improvement.

Currently, when an agent connects to port 9001 and sends DATA <uuid>, the server matches the UUID with a pending connection. There is no separate token validation on the data channel.