TeamSpeak is a voice-over IP chat software, it allows users to talk in a chat channel with other users, just like a traditional conference call. To do this, clients have to connect to a server. This is what we are going to do.
The main advantage is that you can manage the created instance yourself.
Install TeamSpeak Server
Before we start, the server must be up to date so that we don’t have problems during the process.
sudo apt update sudo apt upgrade
After this, log in as the root user.
Now we can get started.
The first thing we need to do is create a new system user which is where TeamSpeak will work. This new user can be called whatever you want and does not need to be logged into the system.
adduser --disabled-login teamspeak
So you willbe asked a few questions requesting information about the new user. Nothing complicated.
Now, log in to the newly created user.
su - teamspeak
In addition to with the help of the wget command, we can download TeamSpeak for Linux.
Once the download is complete, we can unzip it.
tar xvfj teamspeak3-server_linux_amd64-3.13.6.tar.bz2
Now it is a good idea to copy the generated files directly into the Home folder of the user-created for TeamSpeak.
cp teamspeak3-server_linux_amd64/* -R /home/teamspeak/
Also, it is advisable to delete the downloaded file, as you will not need it.
rm -rf teamspeak3-server_linux_amd64 teamspeak3-server_linux_amd64-3.13.6.tar.bz2
After this, create a new empty file corresponding to the license.
Now, TeamSpeak is installed, but we can’t use it yet.
Configuring TeamSpeak Server
With TeamSpeak installed, the process of preparing for the first use begins.
First, exit the TeamSpeak user and return it to the root user.
The best way to manage TeamSpeak is to manage it as a systemd service. This can be done by creating a new entry in the system.
And add the following
[Unit] Description=Teamspeak Service Wants=network.target [Service] WorkingDirectory=/home/teamspeak User=teamspeak ExecStart=/home/teamspeak/ts3server_minimal_runscript.sh ExecStop=/home/teamspeak/ts3server_startscript.sh stop ExecReload=/home/teamspeak/ts3server_startscript.sh restart Restart=always RestartSec=20 [Install] WantedBy=multi-user.target
Save your changes and close the text editor.
Refresh the list of system services, by running the following command
Then, start the application service.
systemctl start ts3server
It is advisable to check the status of the service to see if it is active.
systemctl status ts3server
So, everything is working properly.
Create new access password
It is important to define a new password that takes care of adding an extra layer of security.
So, stop running the service
systemctl stop ts3server
Log the user teamspeak back in.
su - teamspeak
To set a password, just start the service manually and add the serveradmin_password parameter along with a strong password.
./ts3server_startscript.sh start serveradmin_password=unixcop
Replace unixcop with a stronger password.
Now stop it manually
Change to root user again
And now start the TeamSpeak service.
systemctl start ts3server
Enabling the TeamSpeak web interface
Also, it is advisable to enable the TeamSpeak web interface so that you can manage TeamSpeak faster and more comfortably.
To do so, install Apache and PHP along with the unzip package.
apt-get install apache2 php libapache2-mod-php unzip
Then, access the Apache Root document folder.
And from there, proceed to download the web interface. Again, we will do it with the wget command.
Since it’s lightweight, the download shouldn’t take long. When it is finished, you have to unzip it.
Then, to avoid problems with running on the web, make the folder belong to Apache.
chown -R www-data:www-data /var/www/html/ts3wi
And now in a text file called query_ip_allowlist.txt inside the teamspeak user’s home folder add the IP of the server and the client that will be able to access it.
vim /home/teamspeak/query_ip_allowlist.txt your ip server ip client
Save your changes and close the editor.
To apply the changes, restart the Apache and TeamSpeak services.
systemctl restart apache2 systemctl restart ts3server
It is now accessible from a client and a web browser via the address http://your-server-ip/ts3wi where you will see the Login screen.
After logging in with the username serveradmin and the password you defined, you will see the administration panel.
You have learned how to install your own TeamSpeak instance on your server. This way, you will have full control over what happens and it is interesting for your internal use.