头像

NestleLatte

要来一杯拿铁吗

《在CentOS7上搭建Teamspeak3服务器》

 1年前  •   turtorial  •     •   2.89k  •   5

最近在帮朋友物色适合搭建TeamSpeak(TS)的服务器,给我们小队开黑用。我的这个小游戏群每天晚上一般会有10-20人语音在线,一直用的TS。相比于臃肿而且疯狂弹广告的YY,TS内存占用低,语音质量好,除了界面古老可以说是非常不错了。我们曾经也考虑过Discord,但是Discord香港的softlayer服务器国内链路太毒,就没了下文。

国内的TS服务主要由ts1.cn代理运营,服务器是上海阿里云BGP不用多说,就是价格比较贵,一个30人的服务器要30R/mo,自己买的套路云学生机带宽性能感人。小队里还有国际友人,从新加坡连回国要300ms+,幸好语音不卡。

物色了半天,最后找到了UOvZ这家的香港服务器,链路和质量都可以接受。

UOvZ是一家去年年底成立的国人主机商,主营国内和香港等地区的线路。

更多信息可参见梨园博客:UOvZ: 全线产品清单

我买的是年付100的香港 BGP,国内去程BGP+CN2,回程BGP。

5m端口也够一个小型语音服务器,购买地址(包含AFF)

最后在搜索服务器搭建教程的时候,居然找不到一篇较为全面的中文教程,可能因为这个软件在国内用的人太少了。搭建过程中还踩了几个坑,就写文章记录一下。

安装说明

我用的系统是CentOS7,其他系统的安装方式类似。需要root权限,以下均以root账户输入。

更新系统和依赖

yum -y update
yum -y install nano wget perl tar net-tools bzip2

添加用户安装TS

使用普通用户权限运行TeamSpeak,隔离ts服务端与其他系统服务

adduser teamspeak
passwd teamspeak

会提示为新建的用户设置密码,这个密码之后不会用到。
坑点:因为国内ts1汉化的客户端版本不是最新版,不能支持新版服务端,故选择老版本服务端安装。

wget http://dl.4players.de/ts/releases/3.0.13.6/teamspeak3-server_linux_amd64-3.0.13.6.tar.bz2
tar xvf teamspeak3-server_linux_amd64-3.0.13.6.tar.bz2
cd teamspeak3-server_linux_amd64
cp * -R /home/teamspeak
cd ..
rm -rf teamspeak3-server_linux_amd64*
chown -R teamspeak:teamspeak /home/teamspeak

设置TS服务和防火墙

nano /lib/systemd/system/teamspeak.service

在打开的文件编辑器里输入

[Unit]
Description=Team Speak 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

Ctrl+O回车保存,Ctrl+E退出

如果你的服务器打开了防火墙,就需要添加如下规则,对CentOS7上的firewall使用如下命令

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

启动TS服务

systemctl start teamspeak
systemctl enable teamspeak

确保TeamSpeak服务正确运行

systemctl status teamspeak

管理员登陆TS服务器

TS服务器第一次运行时,会生成一个一次性的权限密钥,用于给你本地端设置管理员权限。

cat /home/teamspeak/logs/ts3server_*

如果TS服务器正确运行,你应该能看到类似如下的输出

2018-04-24 05:15:19.808720|INFO    |ServerLibPriv |   |TeamSpeak 3 Server 3.0.13.6 (2016-11-08 08:48:33)
2018-04-24 05:15:19.808834|INFO    |ServerLibPriv |   |SystemInformation: Linux 2.6.32-042stab126.2 #1 SMP Wed Dec 6 18:08:29 MSK 2017 x86_64 Binary: 64bit
2018-04-24 05:15:19.808873|WARNING |ServerLibPriv |   |The system locale is set to "C" this can cause unexpected behavior. We advice you to repair your locale!
2018-04-24 05:15:19.808898|INFO    |ServerLibPriv |   |Using hardware aes
2018-04-24 05:15:19.809882|INFO    |DatabaseQuery |   |dbPlugin name:    SQLite3 plugin, Version 3, (c)TeamSpeak Systems GmbH
2018-04-24 05:15:19.819093|INFO    |DatabaseQuery |   |dbPlugin version: 3.11.1
2018-04-24 05:15:19.819377|INFO    |DatabaseQuery |   |checking database integrity (may take a while)
2018-04-24 05:15:19.835790|INFO    |SQL           |   |db_CreateTables() tables created
2018-04-24 05:15:19.880463|WARNING |Accounting    |   |Unable to find valid license key, falling back to limited functionality
2018-04-24 05:15:22.175884|INFO    |              |   |Puzzle precompute time: 2264
2018-04-24 05:15:22.177343|INFO    |FileManager   |   |listening on 0.0.0.0:30033, :::30033
2018-04-24 05:15:22.178288|INFO    |VirtualSvrMgr |   |executing monthly interval
2018-04-24 05:15:22.178463|INFO    |VirtualSvrMgr |   |reset virtualserver traffic statistics
2018-04-24 05:15:22.200638|INFO    |CIDRManager   |   |updated query_ip_whitelist ips: 127.0.0.1/32, ::1/128,
2018-04-24 05:15:22.200965|INFO    |Query         |   |listening on 0.0.0.0:10011, :::10011
2018-04-24 05:25:30.593174|INFO    |ServerMain    |   |Received signal SIGTERM, shutting down.
2018-04-24 05:15:22.198477|INFO    |VirtualServer |1  |listening on 0.0.0.0:9987, :::9987
2018-04-24 05:15:22.199370|WARNING |VirtualServer |1  |--------------------------------------------------------
2018-04-24 05:15:22.199410|WARNING |VirtualServer |1  |ServerAdmin privilege key created, please use the line below
2018-04-24 05:15:22.199434|WARNING |VirtualServer |1  |token=SVA+zpAPeqAr5QtJ2pSY0pTf5TwSRuPv4vuoDUdf
2018-04-24 05:15:22.199458|WARNING |VirtualServer |1  |--------------------------------------------------------

你应该能在最后几行看到ServerAdmin privilege key,登陆ts服务器,客户端输入token=后面的privilege key,你就是服务器管理员了。

疗效怎样

4月27日晚11点全球多地延迟检测如图

和我的小伙伴们一起开黑,TS检测有5%的丢包,但语音体感无延迟卡麦,TS对语音的优化确实是顶尖水平。

你能看出来频道里有几个梗呢2333

参考文章

Globo.Tech–How to install TeamSpeak Server on CentOS 7

HowtoForge–How to Install and Use TeamSpeak Server on CentOS 7

上一篇:
下一篇:

 评论


 已有5条评论

  1. kresr3p Windows 10 | 谷歌浏览器 70.0.3538.102 8月前

    太感谢了。。终于找到了合适的服务器了。。十分感谢推荐(´இ皿இ`)

  2. 1 Windows 10 | 谷歌浏览器 71.0.3578.98 7月前

    有点问题,找了找是这个原因,看这个教程的小伙伴们注意下许可的问题
    Before you run the teamspeak 3 server it is required that you agree to our license. This license can be found in the file “license.txt” or “LICENSE” (depending on your platform), which is located in the same location as the ts3server binary (the main folder). If, after reading it, you agree to the license, this can be indicated in one of three ways:

  3. Yuki Windows 10 | 谷歌浏览器 72.0.3626.109 5月前

    马云的9块5还行 5M1T 只要24岁以下(确信)∠( ᐛ 」∠)_

  4. Darelove Windows 10 | 谷歌浏览器 73.0.3683.86 4月前

    非常感谢,之前一直用腾讯云做了个最新版的服务器,一直想找旧版的做一个,但是一直找不到旧版的包,我佛了