TeamSpeak is a VOIP server for teams or multiple people to communicate. It is relatively lightweight and secure, and updates are released regularly.
In this tutorial, we’ll install Teamspeak on your CentOS 7 instance.
Prerequisites
Before we begin, you’ll need:
- CentOS 7 system (64-bit only).
- 512 MB of RAM or higher.
- wget (utility used for downloading files).
- nano or vim (any text editor is fine).
Installation
Prerequisites
Update the system packages. This may take some time.
yum update -y
Install the tools needed for this tutorial.
yum install nano wget perl tar net-tools bzip2 -y
Installation
Add an unprivileged user to run Teamspeak. When prompted, enter your desired password.
useradd ts
passwd ts
Retrieve the Teamspeak server software.
cd ~
wget http://dl.4players.de/ts/releases/3.0.13.8/teamspeak3-server_linux_amd64-3.0.13.8.tar.bz2
Extract the Teamspeak tarball and copy all of the files to our unprivileged user’s home directory.
tar -xvf teamspeak3-server_linux_amd64-3.0.13.8.tar.bz2
cd teamspeak3-server_linux_amd64
cp * -R /home/ts
Remove temporary files.
cd ~
rm -rf teamspeak3-server_linux_amd64
rm -rf teamspeak3-server_linux_amd64-3.0.13.8.tar.bz2
Grant the appropriate permissions to our ts user.
chown -R ts:ts /home/ts
Create a Systemd service for Teamspeak.
nano /lib/systemd/system/teamspeak.service
Paste the following:
[Unit]
Description=Team Speak 3 Server
After=network.target
[Service]
WorkingDirectory=/home/teamspeak/
User=ts
Group=ts
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
Save and exit (press CTRL and O simultaneously, followed by the Enter key).
Reload systemd units.
systemctl --system daemon-reload
Make Teamspeak run on startup.
systemctl enable teamspeak.service
Starting, Stopping And Restarting Teamspeak
Controlling Teamspeak is simple. You can control Teamspeak with the following command:
systemctl (option) teamspeak.service
Replace (option) with start, stop, or restart.
Configuring The Firewall
CentOS 7 no longer uses iptables. As an alternative, CentOS 7 comes with firewalld by default.
Find the default zone. On Aklweb host instances running CentOS 7, the default zone is public.
firewall-cmd --get-default-zone
Open the default ports for Teamspeak. If each rule is added successfully, the output will read “success”.
firewall-cmd --zone=public --permanent --add-port=10011/tcp
firewall-cmd --zone=public --permanent --add-port=30033/tcp
firewall-cmd --zone=public --permanent --add-port=9987/udp
Reload firewalld.
firewall-cmd --reload
Conclusion
Congratulations! You’ve successfully created a Teamspeak server. You can connect to it with the Teamspeak Client.