如何在 CentOS 8 上安装 Teamspeak 3 服务器
在此页
- 先决条件
- 开始
- 安装 TeamSpeak
- 为 TeamSpeak 创建一个系统文件
- 为 TeamSpeak 设置防火墙
- 结论
TeamSpeak 是一个跨平台语音服务器或 VOIP 应用程序,用于通过 Internet 进行实时语音聊天。 TeamSpeak 是轻量级的,使用的带宽非常少,能够同时处理数千名用户。它通常用于游戏、教育、培训以及与朋友和家人聊天。 TeamSpeak 是完全免费的。您只需要下载并设置自己的服务器并根据需要使用客户端。
在本教程中,我们将向您展示如何在 CentOS 8 服务器上安装和设置 TeamSpeak 服务器。
先决条件
- 一台运行 CentOS 8 的服务器。
- 在您的服务器上配置了根密码。
入门
默认情况下,SELinux 在 CentOS 8 服务器中启用。所以你需要先禁用它。
您可以通过编辑 /etc/selinux/config 文件来执行此操作:
nano /etc/selinux/config
进行以下更改:
SELINUX=disabled
保存并关闭文件。然后,重新启动系统以应用更改。
接下来,您需要为您的服务器安装一些依赖项。您可以使用以下命令安装所有这些:
dnf install nano wget perl tar net-tools bzip2
安装所有依赖项后,您可以继续下一步。
安装 TeamSpeak
在安装 TeamSpeak 之前,您需要为 TeamSpeak 添加一个用户。您可以使用以下命令创建它:
adduser teamspeak -d /opt/teamspeak
接下来,使用以下命令下载最新版本的 TeamSpeak:
wget http://dl.4players.de/ts/releases/3.8.0/teamspeak3-server_linux_amd64-3.8.0.tar.bz2
下载完成后,使用以下命令解压缩下载的文件:
tar xvf teamspeak3-server_linux_amd64-3.8.0.tar.bz2
接下来,将提取目录的内容移动到 /opt/teamspeak:
mv teamspeak3-server_linux_amd64/* /opt/teamspeak/
接下来,您需要在 /opt/teamspeak 目录中创建一个名为“.ts3server_license_accepted”的文件以接受许可协议。
touch /opt/teamspeak/.ts3server_license_accepted
接下来,使用以下命令将 /opt/teamspeak 目录的所有权更改为 TeamSpeak 用户:
chown -R teamspeak: /opt/teamspeak
为 TeamSpeak 创建系统文件
接下来,您需要创建一个 systemd 服务文件来管理 TeamSpeak 服务。您可以使用以下命令创建它:
nano /lib/systemd/system/teamspeak.service
添加以下行:
[Unit]
Description=Team Speak 3 Server
After=network.target
[Service]
WorkingDirectory=/opt/teamspeak/
User=teamspeak
Group=teamspeak
Type=forking
ExecStart=/opt/teamspeak/ts3server_startscript.sh start inifile=ts3server.ini
ExecStop=/opt/teamspeak/ts3server_startscript.sh stop
PIDFile=/opt/teamspeak/ts3server.pid
RestartSec=15
Restart=always
[Install]
WantedBy=multi-user.target
保存并关闭文件。然后,使用以下命令重新加载 systemd 守护进程:
systemctl --system daemon-reload
接下来,使用以下命令启动 TeamSpeak 服务并使其在系统重启后启动:
systemctl start teamspeak
systemctl enable teamspeak
您现在可以使用以下命令检查 TeamSpeak 服务的状态:
systemctl status teamspeak
您应该看到以下输出:
? teamspeak.service - Team Speak 3 Server
Loaded: loaded (/usr/lib/systemd/system/teamspeak.service; disabled; vendor preset: disabled)
Active: active (running) since Sun 2019-10-27 12:51:44 EDT; 5s ago
Process: 1298 ExecStart=/opt/teamspeak/ts3server_startscript.sh start inifile=ts3server.ini (code=exited, status=0/SUCCESS)
Main PID: 1305 (ts3server)
Tasks: 12 (limit: 5060)
Memory: 25.3M
CGroup: /system.slice/teamspeak.service
??1305 ./ts3server inifile=ts3server.ini daemon=1 pid_file=ts3server.pid
Oct 27 12:51:44 centos8 systemd[1]: Starting Team Speak 3 Server...
Oct 27 12:51:44 centos8 ts3server_startscript.sh[1298]: Starting the TeamSpeak 3 server
Oct 27 12:51:44 centos8 ts3server_startscript.sh[1298]: TeamSpeak 3 server started, for details please view the log file
Oct 27 12:51:44 centos8 systemd[1]: Started Team Speak 3 Server.
接下来,您将需要检索特权密钥。从 TeamSpeak 客户端连接到 TeamSpeak 服务器时,您将需要它。您可以使用以下命令查看它:
cat /opt/teamspeak/logs/*
您应该得到以下输出:
2019-10-27 17:06:00.334499|INFO | | |Puzzle precompute time: 4434
2019-10-27 17:06:00.335662|INFO |FileManager | |listening on 0.0.0.0:30033, [::]:30033
2019-10-27 17:06:00.337563|INFO |VirtualSvrMgr | |executing monthly interval
2019-10-27 17:06:00.337837|INFO |VirtualSvrMgr | |reset virtualserver traffic statistics
2019-10-27 17:06:00.376549|INFO |Query | |listening for query on 0.0.0.0:10011, [::]:10011
2019-10-27 17:06:00.377080|INFO |Query | |listening for query ssh on 0.0.0.0:10022, [::]:10022
2019-10-27 17:06:00.377152|INFO |Query | |creating QUERY_SSH_RSA_HOST_KEY file: ssh_host_rsa_key
2019-10-27 17:06:06.649531|INFO |CIDRManager | |updated query_ip_whitelist ips: 127.0.0.1/32, ::1/128,
2019-10-27 17:06:00.374048|INFO |VirtualServer |1 |listening on 0.0.0.0:9987, [::]:9987
2019-10-27 17:06:00.375751|WARNING |VirtualServer |1 |--------------------------------------------------------
2019-10-27 17:06:00.375818|WARNING |VirtualServer |1 |ServerAdmin privilege key created, please use the line below
2019-10-27 17:06:00.375857|WARNING |VirtualServer |1 |token=2y8a9yBz5aRlyDUwaBfgw8lq4FtQVT47pyAeU4Ja
2019-10-27 17:06:00.375894|WARNING |VirtualServer |1 |--------------------------------------------------------
为 TeamSpeak 设置防火墙
TeamSpeak 现已安装并运行。接下来,TeamSpeak 监听端口 9987 (UDP)、10011 (TCP) 和 30033 (TCP)。所以你需要允许来自 firewalld 的这些端口。您可以使用以下命令允许它们:
firewall-cmd --zone=public --add-port=9987/udp --permanent
firewall-cmd --zone=public --add-port=10011/tcp --permanent
firewall-cmd --zone=public --add-port=30033/tcp --permanent
firewall-cmd --reload
结论
恭喜!您已经在 CentOS 8 服务器上成功安装并配置了 TeamSpeak 服务器。您现在可以下载 TeamSpeak 客户端,连接到 TeamSpeak 服务器并开始与朋友和家人聊天。