> ## Documentation Index
> Fetch the complete documentation index at: https://tunnelfleet.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Deploy Your First Server

> Create a TunnelFleet server and provision WireGuard or OpenVPN on your VPS.

Deploying a server connects your VPS to TunnelFleet and installs the VPN stack you select.

## Before you start

* An active TunnelFleet subscription or trial (your organization must not be locked)
* A VPS with a public IP and root SSH access
* Ubuntu 22.04 or 24.04 LTS
* Enough capacity remaining on your plan's server limit

## Create the server

<Steps>
  <Step title="Open Create Server">
    In the dashboard, go to **Servers** → **Create Server**.
  </Step>

  <Step title="Fill in server details">
    * **Server name** — label shown in the dashboard (a random name is suggested)
    * **IP address** — public IPv4 of the VPS
    * **Private IP** — optional, for private networking setups
    * **Operating system** — match the OS on the VPS
    * **Protocols** — WireGuard, OpenVPN TCP, and/or OpenVPN UDP
  </Step>

  <Step title="Create">
    Click **Create Server**. TunnelFleet creates a pending server and shows the install command.
  </Step>
</Steps>

<Warning>
  The VPS must have **root SSH access**. Do not reuse a machine that already runs another TunnelFleet agent for a different server entry.
</Warning>

## Run the install script

SSH into the VPS and run the command from the provisioning screen:

```bash theme={null}
wget -O tunnelfleet.sh "https://tunnelfleet.com/install/YOUR_TOKEN"; bash tunnelfleet.sh
```

Watch the dashboard progress through Waiting → Preparing → Installing → Firewall → Finalising.

## Verify deployment

When provisioning finishes:

1. Server status is ready
2. Agent shows as online (seen within the last couple of minutes)
3. Selected protocols show as **active**
4. Default user `tunnelfleet` appears under **Users**
5. Hostname resolves under `*.server.tunnelfleet.com`

## Troubleshooting

| Symptom                    | What to try                                                               |
| -------------------------- | ------------------------------------------------------------------------- |
| Stuck on Waiting           | Confirm the install command ran as root and the token matches this server |
| Protocol install failed    | Open **Protocols** → **Repair** for that protocol                         |
| Agent offline              | Check the VPS is running and can reach `tunnelfleet.com`                  |
| Can't connect from clients | Confirm cloud security groups allow the protocol ports                    |

## Next steps

<Columns cols={2}>
  <Card title="Create a VPN user" icon="user-plus" href="/docs/getting-started/create-your-first-vpn-user">
    Add peers beyond the default user.
  </Card>

  <Card title="Download configuration" icon="download" href="/docs/getting-started/download-configuration">
    Get `.conf` and `.ovpn` files for your devices.
  </Card>
</Columns>
