搭建 Teamspeak3 服务器

TeamSpeak 是一款优秀的语音软件,尤其是在游戏语音方面。原本笔者一直使用的是大家很常见的 YY 语音,但是 YY 铺天盖地的广告和一堆莫名其妙的直播让人抗拒,同时又可能是由于笔者电脑性能不好,也可能是 YY  奇奇怪怪的功能太多,使用的时候总是不太流畅。随后接触到了 TeamSpeak 这款软件,基础的语音功能十分强大,软件简洁小巧,其又能自己搭建服务器免费使用,因此研究起了搭建方法。

1 下载相关程序

中文官网下载页面:https://www.teamspeak.com/zh-CN/downloads/,按照自己的需求下载客户端即可。至于服务端,如果是位于内地的主机可能直接下载速度会很慢,因此可以先在电脑上下载,然后上传到主机。

官方提供的客户端并没有中文版,但是有大佬做的简体中文的语言包:https://github.com/jitingcn/TS3-Translation_zh-CN/releases/tag/travis-dev-build,下载安装即可。大家也可以去 Github 仓库支持一下。

2 服务端的安装配置

为保证安全,不要使用 root 用户安装配置 TeamSpeak!

2.1 准备工作

1 以 root 用户登录后更新系统

yum update

2 创建一个新的用户(以 teamspeak 为例),并设置密码

useradd teamspeak
passwd teamspeak

3 下载 TeamSpeak 的服务端程序(或从本地电脑上传),这里我是将下载的压缩文件放在了 /home/teamspeak/ 中,解压,重命名,并为 teamspeak 用户设置权限。

tar -xvf teamspeak3-server_linux_amd64-3.12.1.tar.bz2
mv teamspeak3-server_linux_amd64 teamspeak3
chown -R teamspeak:teamspeak /home/teamspeak/teamspeak3/

2.2 配置

1 首先切换到我们刚刚新建的用户,并进入到服务端所在的文件夹。

su - teamspeak
cd /home/teamspeak/teamspeak3

2 首先建立一个授权文件,同意 TeamSpeak 许可条款。

touch .ts3server_license_accepted

3 运行服务端

./ts3server_startscript.sh start

之后会看到类似如下的信息,说明成功搭建了。此时最好将这一信息复制下来,尤其是后面的 token 后面还会用到。

然后 Ctrl + C 停止服务器即可。

2.3 设置为服务并开机启动

1 切换为 root 用户

su -

2 新建一个自定义服务文件 ts3.service

vim /lib/systemd/system/ts3.service

并向其中输入以下内容(路径应按实际的安装位置修改):

[Unit]
Description=Teamspeak server
After=network.target
[Service]
WorkingDirectory=/home/teamspeak/teamspeak3 #根据实际情况修改路径
User=teamspeak
Group=teamspeak
Type=forking
ExecStart=/home/teamspeak/teamspeak3/ts3server_startscript.sh start inifile=ts3server.ini #根据实际情况修改路径
ExecStop=/home/teamspeak/teamspeak3/ts3server_startscript.sh stop #根据实际情况修改路径
PIDFile=/home/teamspeak/teamspeak3/ts3server.pid #根据实际情况修改路径
RestartSec=15
Restart=always
[Install]
WantedBy=multi-user.target

3 接下来重启主机,重启后设置服务的启动。

#启动服务
systemctl start ts3
#关闭服务
systemctl stop ts3
#重启服务
systemctl restart ts3
#查看服务状态
systemctl status ts3
#设置开机自启
systemctl enable ts3

2.4 放行端口

TeamSpeak 默认需要放行的端口包括 9987(udp)10011(tcp)30033(tcp)

3 客户端配置

客户端的使用就不多赘述了,具体的功能可以慢慢摸索。连接服务器只需要点 Connections – Connect,然后只需输入服务器 IP(通过域名连接稍后会讲)和自定义昵称即可连接。第一次连接的用户会要求输入授权码,也就是刚才配置服务器时保存的内容中,最后 token 后的内容,然后这个用户就会被视为服务器的管理员。也可以在客户端对服务器进行一些设置。

4 使用域名登录(可选)

4.1 服务器端设置

首先开放端口 41144(tcp),这个是 tsdns 程序的监听端口。

进入服务端程序文件夹下的 tsdns 文件夹,并创建 tsdns_settings.ini 文件。

cd /home/teamspeak/teamspeak3
vim tsdns_settings.ini

然后在其中输入

ts.example.com=ip:9987

其中的 ts.example.comip 更换为自己的域名和 IP 地址,这个即是 tsdnsserver 的配置文件。

运行 tsdnsserver 可以使用 screen 后台运行。

screen -S tsdns
cd /home/teamspeak/teamspeak3/tsdns
./tsdnsserver

使用 crontab 设置 tsdns 开机自启。

理论上讲可以直接在 crontab 中添加命令,但是这样运行的 tsdnsserver 只监听了 ipv6 的 41144 端口,但是我的服务器只有来自 ipv4 的连接,具体的原因不清楚。但是在经过尝试后,发现使用 crontab 自启动一个 shell 脚本,通过脚本启动 tsdnsserver 不会出现这样的问题。因此我们先新建一个 sh 文件,我选择在 root 文件夹,并向其中加入以下代码。

cd /home/teamspeak/teamspeak3/tsdns #注意修改为自己的路径
./tsdnsserver

随后使用命令 crontab -e,在文件中加入一行,注意路径修改为自己的对应路径。

@reboot /root/tsdns.sh

经过实测发现这样启动的 tsdnsserver 就不会只监听 ipv6 的 44144 端口了。

4.2 设置域名 DNS 解析

在域名服务商修改 DNS 解析,主要有以下几处。

1 将自己的域名解析到服务器的 IP,添加一条 A 记录,主机记录可以自己填写,这里以ts为例,记录值为服务器 IP。

2 添加两条 SRV 记录,分别为:

主机记录 记录类型 记录值
_ts3._udp.ts SRV 1 0 9987 ts.example.com
_tsdns._tcp SRV 1 0 41144 ts.example.com

其中的 ts 与 example.com 根据自己的域名修改。

到此为止,TeamSpeak 的服务器配置就完成了。

参考资料

  1. 搭建一个自己的语音通讯服务器——teamspeak服务端搭建及配置心得 – 哔哩哔哩
  2. TeamSpeak 3 服务器架设全流程2020年2月版 – 哔哩哔哩
  3. TeamSpeak 服务器搭建方法 | Vigorous Pro
  4. TeamSpeak3 使用指南 (新手向) | Vigorous Pro
No Thoughts on 搭建 Teamspeak3 服务器

我想留言