Auther:Anhar
For online gaming communities, smooth voice communication is very
important. Although many users rely on public communication platforms,
self-hosting a TeamSpeak 3 server gives you more control over privacy,
server configuration, channel management, and user permissions.
In this guide, we will install TeamSpeak 3 Server on an Ubuntu-based
Tencent Cloud Lighthouse instance.
Self-hosting TeamSpeak 3 is useful when you want more control over your
voice communication environment.
A self-hosted TeamSpeak server gives you:
Full control over channels and user permissions
Private voice communication for your community
Custom server groups such as Admin, Moderator, Member, and Guest
File transfer support
A stable server that can stay online 24/7
The ability to use your own domain or subdomain
For gaming communities, this is especially useful because you can create
dedicated rooms for different games, private squads, staff discussions,
or AFK channels.
Unlike hosting TeamSpeak on a home computer, a cloud server provides a
public IP address and better uptime. This makes it easier for community
members to connect from anywhere.
Before starting, prepare the following:
| Requirement | Details |
|---|---|
| Cloud server | Tencent Cloud Lighthouse |
| Operating system | Ubuntu 24.04 LTS |
| CPU | 1 vCPU or higher |
| RAM | 1 GB or higher |
| Storage | 20 GB or higher |
| SSH access | Root or sudo user |
| TeamSpeak Client | Installed on your local computer |
| Main voice port | UDP 9987 |
| File transfer port | TCP 30033 |
| ServerQuery port | TCP 10011 |
Tencent Cloud Lighthouse is suitable for lightweight server deployments
such as websites, bots, VPN servers, game tools, and voice servers. The
example article also uses Lighthouse for a self-hosted network service
because it provides simple cloud server management and global region
options.
For a TeamSpeak 3 server, Tencent Cloud Lighthouse is a good fit
because:
It provides a public IPv4 address.
It can run 24/7.
It supports Ubuntu Linux.
Firewall rules can be managed from the Tencent Cloud console.
You can choose a server region close to your users.
The server requirements for TeamSpeak are relatively low.
For best voice quality, choose a Lighthouse region close to your main
user base. For example, if most users are in Southeast Asia, a nearby
Asia-Pacific region is usually better than a faraway region.
Go to the Tencent Cloud Lighthouse product purchase page
to purchase a server. Recommended configuration:
Image: Ubuntu 24.04 LTS
Region: Pick the location closest to most of your users.
Package Configuration: Starter type 2 vCPU / 2 GB RAM
Click Buy Now, follow the page guidance to complete payment, and
wait about 30 seconds to complete server creation.

Should the Markdown version be exactly the same as the Docs version, including all image placements, or is it okay to submit a simpler Markdown version without images while providing the image materials separately?
After the instance is created, open the Firewall tab :

Click Add Rule

Add three new rules:
| Port | Protocol | Notes |
|---|---|---|
| 9987 | UDP | TS3 main voice port |
| 30033 | TCP | TS3 file transfer port |
| 10011 | TCP | TS3 ServerQuery port |

Open the Tencent Cloud Console and find your Lighthouse instance.
You can log in using either:
Tencent Cloud web terminal
SSH from your local computer
Example SSH command:
ssh root@your-server-ip
After logging in, update the system packages:
sudo apt update && sudo apt upgrade -y
Install required tools:
sudo apt install wget tar nano bzip2 -y
For better security, TeamSpeak Server should not run as the root user.
Create a dedicated system user named teamspeak.
sudo adduser --disabled-login --gecos "" teamspeak
This user will be used only to run the TeamSpeak server process.
Move to the TeamSpeak home directory:
cd /home/teamspeak
Download the Linux 64-bit TeamSpeak 3 Server package:
wget https://files.teamspeak-services.com/releases/server/3.13.7/teamspeak3-server_linux_amd64-3.13.7.tar.bz2
Extract the downloaded archive:
tar -xvjf teamspeak3-server_linux_amd64-3.13.7.tar.bz2
Change the ownership of the TeamSpeak directory:
sudo chown -R teamspeak:teamspeak teamspeak3-server_linux_amd64
Before starting TeamSpeak Server, you need to accept the license agreement.
Move to the TeamSpeak server directory:
cd /home/teamspeak/teamspeak3-server_linux_amd64
Create the license acceptance file:
sudo -u teamspeak touch .ts3server_license_accepted
Start the server manually:
sudo -u teamspeak ./ts3server_startscript.sh start
On the first startup, TeamSpeak will generate a server privilege key. You can check it using:
cat /home/teamspeak/teamspeak3-server_linux_amd64/logs/ts3server_*
Example output:
2026-04-29 15:41:55.382818|WARNING |VirtualServer |1 |--------------------------------------------------------
2026-04-29 15:41:55.382841|WARNING |VirtualServer |1 |ServerAdmin privilege key created, please use the line below
2026-04-29 15:41:55.382847|WARNING |VirtualServer |1 |token=jGUwiMySRvhSLuHs7EKDWS7MdPfUoPXV5o7+lYZd
2026-04-29 15:41:55.382853|WARNING |VirtualServer |1 |--------------------------------------------------------
Important: Save this information immediately. The privilege key is required to claim administrator permission when you connect to the server for the first time.
After saving the information, stop the server temporarily:
sudo -u teamspeak ./ts3server_startscript.sh stop
To make TeamSpeak run automatically in the background and start after reboot, create a systemd service.
Create a new service file:
sudo nano /etc/systemd/system/teamspeak.service
Paste the following configuration:
[Unit]
Description=TeamSpeak 3 Server
After=network.target
[Service]
WorkingDirectory=/home/teamspeak/teamspeak3-server_linux_amd64/
User=teamspeak
Group=teamspeak
Type=forking
ExecStart=/home/teamspeak/teamspeak3-server_linux_amd64/ts3server_startscript.sh start
ExecStop=/home/teamspeak/teamspeak3-server_linux_amd64/ts3server_startscript.sh stop
ExecReload=/home/teamspeak/teamspeak3-server_linux_amd64/ts3server_startscript.sh restart
Restart=on-failure
[Install]
WantedBy=multi-user.target
Save the file, then reload systemd:
sudo systemctl daemon-reload
Enable TeamSpeak to start automatically after reboot:
sudo systemctl enable teamspeak
Start the TeamSpeak service:
sudo systemctl start teamspeak
Check the service status:
sudo systemctl status teamspeak
If the output shows active (running), your TeamSpeak 3 Server is running successfully.
TeamSpeak 3 Server requires several ports to be opened. The official TeamSpeak support page lists UDP 9987 for voice, TCP 30033 for file transfer, and TCP 10011 for raw ServerQuery.
Open the required ports using UFW:
sudo ufw allow 9987/udp
sudo ufw allow 30033/tcp
sudo ufw allow 10011/tcp
Enable UFW if it is not already active:
sudo ufw enable
Download and install TeamSpeak Client on your computer.
Then follow these steps:







Using a domain makes it easier for users to connect to your server.
For example:
ts.yourdomain.com
Create a DNS record:
Type: A
Name: ts
Value: your-server-ip
After DNS propagation is complete, users can connect using:
ts.yourdomain.com
A self-hosted TeamSpeak 3 Server is a good choice if your community
wants a private, lightweight, and highly configurable voice server.
What works well:
Low server resource usage
Stable voice communication
Detailed permission system
Good channel organization
Suitable for gaming communities
Can run 24/7 on a small cloud server
What you should know:
You need to manage firewall rules correctly.
You need to save the privilege key during the first startup.
You are responsible for backups and updates.
ServerQuery should be protected if exposed to the internet.
TeamSpeak requires users to install the TeamSpeak Client.
For small gaming groups, guilds, clans, and private communities, this
setup is practical and affordable. A basic Tencent Cloud Lighthouse
instance is usually enough for a small to medium TeamSpeak server.
| Issue | Likely Cause | Fix |
|---|---|---|
| Cannot connect to server | UDP 9987 is blocked | Open UDP 9987 in UFW and Lighthouse firewall |
| Service not running | TeamSpeak failed to start | Check systemctl status teamspeak |
| File transfer not working | TCP 30033 is blocked | Open TCP 30033 |
| Permission denied | Wrong file ownership | Run sudo chown -R teamspeak:teamspeak teamspeak3-server_linux_amd64 |
| Service fails after reboot | Systemd service not enabled | Run sudo systemctl enable teamspeak |
| Domain does not work | DNS record not configured correctly | Check A record and DNS propagation |
| ServerQuery not accessible | TCP 10011 blocked | Open or restrict TCP 10011 |
| High latency | Server region too far from users | Choose a closer Lighthouse region |
By default, a free TeamSpeak 3 Server installation supports up to 32
slots, which means up to 32 concurrent users on one virtual server.
If your community needs more capacity. The official TeamSpeak licensing
page lists the Gamer License with up to 1024 slots and up to 2 virtual
servers.
No. You can connect directly using the server IP address. A domain is
optional but recommended because it is easier to remember.
The most important port is UDP 9987, because it is used for voice
communication.
File transfer uses TCP 30033. Make sure this port is open in both Ubuntu
UFW and Tencent Cloud Lighthouse firewall.
No. Raw ServerQuery on TCP 10011 is optional. It is useful for
remote administration, but it should be restricted for better security.
Technically yes, but it is not recommended. A dedicated user such as
teamspeak is safer.
A Discord has been created, and everyone is welcome to join and explore advanced ways to use Lighthouse together!

Unlock advanced tips on Discord
Click to join the community
Note: After joining, you can get the latest plugin templates and deployment playbooks
Join WhatsApp / WeCom for dedicated technical support
| Channel | Scan / Click to join |
|---|---|
| WhatsApp Channel |
|
| WeCom (Enterprise WeChat) |
|
Learn more on the official page:
Go to the Tencent Cloud Lighthouse product purchase page