How to Make a TeamSpeak Server on Linux, Windows, and macOS

How to Make a TeamSpeak Server on Linux, Windows, and macOS

TeamSpeak 3 is a voice-over-internet protocol (VoIP) application that lets users communicate and collaborate using voice in real-time.

Download Complete Linux Commands Cheat Sheet

It’s a reliable and lightweight tool with special features, such as military-grade encryption, minimal latency, and high audio quality.

People use the TeamSpeak VoIP application for various purposes. It’s commonly used for voice chatting while playing games with friends and conducting internal communications in business settings.

In this guide, you will learn how to create a TeamSpeak server on your computer. Whether you use VPS with Ubuntu 16.04, CentOS 7 or you computer with Windows or macOS, we have got you covered.

How to Make a TeamSpeak 3 Server on Ubuntu 16.04

To begin, let’s set up a TeamSpeak server on Linux VPS running the Ubuntu 16.04 operating system. 

Start the process by accessing your VPS via SSH. The following procedure can be broken down into 6 simple steps.

Before you continue, check if your system is up to date by entering the following command into the terminal:

apt-get update && apt-get upgrade

Step 1 – Create a New System User

First of all, add a new user by executing the following command:

adduser --disabled-login teamspeak

You will be requested to enter the personal user details and confirm that they are correct. Keep in mind that all fields can be left blank.

Screenshot of an user detail prompt in the terminal

Then, access the home directory of the newly created user:

cd /home/teamspeak

Step 2 – Download and Extract TeamSpeak 3 Server

The next task will be to download the latest TeamSpeak 3 server software for Linux. You may utilize the wget command to download the setup file directly to the VPS:

wget https://files.teamspeak-services.com/releases/server/3.13.6/teamspeak3-server_linux_amd64-3.13.6.tar.bz2

Once it finishes, extract the downloaded file:

tar xvf teamspeak3-server_linux_amd64-3.13.6.tar.bz2

All the contents will appear in the teamspeak3-server_linux_amd64 folder. The next thing will be moving everything to /home/teamspeak and removing the downloaded archive:

cd teamspeak3-server_linux_amd64 && mv * /home/teamspeak && cd .. && rm -rf teamspeak3-server_linux_amd64-3.13.6.tar.bz2

Make sure to check your TeamSpeak software version and enter the commands accordingly. If you enter the incorrect version number, TeamSpeak won’t run.

Execute the ls command. You should see a screen similar to the example below if everything was done correctly:

Screenshot of the terminal executing the ls command

Step 3 – Accept the TeamSpeak 3 License Agreement

Since the release of TeamSpeak 3 server version 3.1.0, it is mandatory to accept the license agreement. The quickest way to do it is by running the following command:

touch /home/teamspeak/.ts3server_license_accepted

This will create a new empty file called .ts3server_license_accepted, meaning you have accepted the license terms.

Step 4 – Start the TeamSpeak 3 Server on Startup

Now, it’s time to set up the TeamSpeak server to start when the server boots up. We will need to create a file called teamspeak.service in the /lib/systemd/system directory. The following command will do the trick:

sudo nano /lib/systemd/system/teamspeak.service

The file should consist of:

[Unit]
Description=TeamSpeak 3 Server
After=network.target
[Service]
WorkingDirectory=/home/teamspeak/
User=teamspeak
Group=teamspeak
Type=forking
ExecStart=/home/teamspeak/ts3server_startscript.sh start inifile=ts3server.ini
ExecStop=/home/teamspeak/ts3server_startscript.sh stop
PIDFile=/home/teamspeak/ts3server.pid
RestartSec=15
Restart=always
[Install]
WantedBy=multi-user.target
Screenshot of the teamspeak.service file content

Paste the content into the newly created file and save it. Next, we’ll activate the script and make it start on server startup:

systemctl enable teamspeak.service
systemctl start teamspeak.service

Double-check if it was added successfully by running:

systemctl | grep teamspeak.service

If the TS 3 server is running correctly, you will see the following result:

Screenshot of the terminal showing successful connection to the TeamSpeak server

You may also obtain a detailed TeamSpeak server status report by executing:

service teamspeak status
Screenshot of the service teamspeak status command results

Step 5 – Retrieve the Privilege Key

Since the TeamSpeak 3 server is now running, let’s get the last piece of the puzzle – the privilege key. You’ll need to paste it when connecting to the server for the first time. You can view it with the following command:

cat /home/teamspeak/logs/ts3server_*
Screenshot of the privilege key's location in the terminal

Step 6 – Connect via the TeamSpeak Client

The last step is to connect to the newly created TS3 server and apply the privilege key. Use your dedicated VPS IP address when connecting.

Screenshot of the TeamSpeak connection screen

You’ll be immediately prompted to enter the server admin token:

Screenshot of the privilege key prompt to connect to TeamSpeak server

You’ve successfully created and connected to a TeamSpeak 3 server on Ubuntu 16.04 VPS.

How to Make a TeamSpeak 3 Server on CentOS 7

Setting up a TeamSpeak server on VPS running CentOS 7 is similar to the procedure above. It can also be split into six steps. Start by accessing your VPS via SSH and updating the system:

yum -y update

Step 1 – Create a New System User

Begin by creating a new user for the TeamSpeak 3 server. Execute the following command:

adduser teamspeak

This will create the user and set its home directory to /home/teamspeak. Access it with:

cd /home/teamspeak

Step 2 – Download and Extract the TeamSpeak 3 Server

Now, download TeamSpeak 3 server setup for Linux. The quickest way to do it is by using the wget command:

wget http://dl.4players.de/ts/releases/3.12.1/teamspeak3-server_linux_amd64-3.12.1.tar.bz2

After the download finishes, you’ll need to extract the archive:

tar xvf teamspeak3-server_linux_amd64-3.12.1.tar.bz2

The extracted files will be in the teamspeak3-server_linux_amd64 folder. Use the following commands to move everything one directory up and to remove the extracted server setup file:

cd teamspeak3-server_linux_amd64 && mv * /home/teamspeak && cd .. && rm -rf teamspeak3-server_linux_amd64-3.12.1.tar.bz2

If all goes well, you should see this screen after entering the ls command:

Screenshot showcasing the results of the ls command for centOS 7

Step 3 – Accept the TeamSpeak 3 License Agreement

TeamSpeak 3 requires you to accept their license agreement. There are a few ways to do it. The simplest one is to execute:

touch /home/teamspeak/.ts3server_license_accepted

A file named .ts3server_license_accepted will appear, meaning that you agreed to the license terms.

Step 4 – Start the TeamSpeak 3 Server on Startup

Next, we’ll need to enable the TeamSpeak 3 server and start it on server startup:


Copy and paste the script below, which will take care of the TS3 server startup for you:

[Unit]
Description=TeamSpeak 3 Server
After=network.target
[Service]
WorkingDirectory=/home/teamspeak/
User=teamspeak
Group=teamspeak
Type=forking
ExecStart=/home/teamspeak/ts3server_startscript.sh start inifile=ts3server.ini
ExecStop=/home/teamspeak/ts3server_startscript.sh stop
PIDFile=/home/teamspeak/ts3server.pid
RestartSec=15
Restart=always
[Install]
WantedBy=multi-user.target
Screenshot of the correct server results for CentOS 7

For a more detailed TeamSpeak server report, enter:

service teamspeak status
Screenshot of the service teamspeak status command results for CentOS 7

Step 5 – Retrieve the Privilege Key

One last thing you have to do is copy the TeamSpeak server token, otherwise known as the privilege key. You may locate it by entering this command:

cat /home/teamspeak/logs/ts3server_*
Screenshot of the Location of the privilege key for CentOS 7

Step 6 – Connect via the TeamSpeak Client

Finally, it’s time to use the created server. Establish a new connection using the TeamSpeak client and enter your dedicated VPS IP address in the Server Nickname or Address field.

Screenshot of the TeamSpeak connection screen for CentOS 7

Once prompted, paste in the previously retrieved privilege key.

Screenshot of the privilege key prompt for CentOS 7

Congratulations – you’ve successfully set up a TeamSpeak 3 server on CentOS 7 VPS.

How to Make a TeamSpeak 3 Server on Windows

Setting up a TeamSpeak server on Windows is easy. In fact, it can be done in three easy steps.

Step 1 – Download and Extract the TeamSpeak 3 Server

First of all, download the TeamSpeak 3 server software for Windows. Then, extract it in the desired location.

Step 2 – Run the TeamSpeak 3 Server Installer

Open the extracted TS3 server files and run ts3server.exe

You’ll be prompted to accept the license agreement and asked if the Windows firewall should whitelist this software.

After that, you will get your server login name, password, API key, and server admin token or privilege key. Copy all four values to an empty Notepad file for later use.

Screenshot of the Windows TeamSpeak server query screen

Step 3 – Connect via the TeamSpeak Client

Once the installation process finishes, the last step is connecting to the TS3 server. 

Download the TeamSpeak 3 client from the official website and run the .exe installer.

Next, open the client and go to Connections -> Connect.

In case you’re not sure what IP address to use for connecting, open your Command Prompt and execute:

ipconfig

Look for the IPv4 Address value. You will need to use it when connecting.

Screenshot of the TeamSpeak connection screen

Lastly, you will need to paste the privilege key to gain admin rights.

Screenshot of the privilege key prompt for Windows

That’s it – you’ve set up a TeamSpeak 3 server on Windows.

How to Make a TeamSpeak 3 Server on macOS

It’s also possible to make a TeamSpeak 3 server on macOS. The whole setup can be completed in four simple steps.

Step 1 – Download and Extract the TeamSpeak 3 Server

Start by downloading the TeamSpeak 3 server binary setup file for Mac. Once finished, double-click to extract it.

Step 2 – Accept the TeamSpeak 3 License Agreement

Open Terminal and execute the following command to accept the license agreement:

touch .ts3server_license_accepted

Step 3 – Start the TeamSpeak 3 Server and Retrieve Your Privilege Key

Navigate to the extracted TeamSpeak 3 server files using the same terminal window. Run this command:

cd Downloads/teamspeak3-server_mac

Start the server by entering:

./ts3server

If you get a warning about TeamSpeak not being recognized as an identified developer, make sure to temporarily override the security settings in System Preferences.

Wait a few moments for the process to finish. You will receive your privilege key:

Screenshot of the privilege key location in MacOS

Step 4 – Connect via the TeamSpeak Client

You’re now ready to use the TeamSpeak 3 server. When connecting, use the IP shown in the System Preferences -> Network section. You might have to override your security settings again to launch the TeamSpeak application.

Screenshot of the TeamSpeak connection screen on MacOS

Don’t forget to paste in the privilege key to gain server admin rights.

Screenshot of the privilege key prompt on MacOS

Congratulations, you’ve created a TeamSpeak 3 server and connected to it on macOS.

Bonus: How to Point a Domain to a TeamSpeak 3 Server

This section will teach you how to point your existing domain to the TeamSpeak 3 server you just created. 

This will make logging into the server easier because you won’t have to remember the IP address and port combination – just the domain name.

Before proceeding with the next step, go to the DNS Zone Editor on your domain registrar account. In this example, we’ll use a domain name that was registered through Hostinger. The steps should be similar to other registrars.

Step 1 – Create the Subdomain Using A Records

Log into hPanel and navigate to Domains. Click on the desired domain name and select DNS / Nameservers.  

In the section Manage DNS records, create a subdomain and point it to the TeamSpeak 3 server.

Screenshot of the hPanel manage DNS records screen
  • Type – choose A.
  • Name – specify the subdomain name.
  • Points to – enter the IP address of your TeamSpeak 3 server instead of the sample 93.188.167.216 address.
  • TTL – this term stands for Time to live, which limits the lifetime of this record. Leave the default value.

Click Add Record

Make sure that the A record is pointed correctly and propagated well before proceeding to the next step.

Step 2 – Create SRV record

Under Manage DNS Records, add a new SRV record.

Screenshot of the new SRV record prompt in hPanel
  • Type – choose SRV.
  • Name – here, specify the service name _ts3 and protocol _udp, separated by a dot. The final result should look similar to: _ts3._udp.teamspeak.yourdomain.com. 
  • Weight – for records with the same priority, set it to 5.
  • Port – enter your server’s port. Alternatively, the default TeamSpeak 3 server port is 9987.
  • Target – instead of teamspeak.yourdomain.com enter the subdomain that you have created in Step 1.
  • Priority – give this record the biggest priority and set the value to 0.
  • TTL – leave the default value here.

Click Add Record.

Important! Note that it can take up to 24 hours for the new DNS records to propagate worldwide. You can also try to clear your DNS cache.

That’s it – you have pointed a domain to the TeamSpeak server via the DNS SRV record. Now, you can easily connect to your server by using a simple subdomain.

Conclusion

TeamSpeak 3 is a voice-over-internet protocol (VoIP) application popular among online gamers, coworkers, and friends.

In this guide, you have learned how to create a TeamSpeak 3 server on four different operating systems:

  • Ubuntu
  • CentOS 7
  • Windows
  • macOS

If you have any tips, tricks, or ideas, do not hesitate to share them in the comments section below. Good luck!

Was this tutorial helpful?

Author
The author

Domantas G.

Domantas leads the content and SEO teams forward with fresh ideas and out of the box approaches. Armed with extensive SEO and marketing knowledge, he aims to spread the word of Hostinger to every corner of the world. During his free time, Domantas likes to hone his web development skills and travel to exotic places.