前言废话

TeamSpeak3是一个国外研发的多人语音聊天软件,对比国内热门的YY,QQ等具有占用低,无广告,客制化内容多等优势,官方提供了现成的服务器租赁,但是也支持腐竹自己搭建服务器,这里总结一下自己建站经历!

准备工作

更新/安装需要用到的基础软件
Ubuntu/Debian:

apt-get update
apt-get install vim wget perl tar net-tools bzip2

CentOS/Red Hat:

yum update
yum install vim wget perl tar net-tools bzip2

开始安装

在合适的目录下开始下载teamspeak的server包
(在TeamSpeak Donwload查看需要的版本,这里以64位为例。)

wget https://files.teamspeak-services.com/releases/server/3.12.1/teamspeak3-server_linux_amd64-3.12.1.tar.bz2

解压出来然后放到合适的目录下,如/www/wwwroot/ts3或者/teamspeak之类的,这里以/teamspeak为例,然后修改好权限(可以直接777,或者不这样设置,后面我会讲到设置拥有者的方式)

tar jxf teamspeak3-server_linux_amd64-3.12.1.tar.bz2
mv teamspeak3-server_linux_amd64 /teamspeak
chmod -R 777 /teamspeak/

然后根据官网的帮助,在防火墙规则中打开9987/udp、10011/tcp、10022/tcp、30033/tcp、41144/tcp端口
Hadoop3.0开始,需要防火墙开放的端口中介绍过如何打开端口。

teamspeak不允许root用户启动teamspeak服务,所以这时候我们需要创建一个用户(可以自定义,这里以ts为例),并设置密码:

useradd ts
passwd ts

↑这里设置密码记住至少8位
给teamspeak文件修改拥有者

chown -R ts:ts /teamspeak/

切换到teamspeak用户

su - ts

进入到teamspeak目录后,接受协议并且启动服务

touch .ts3server_license_accepted
./ts3server_startscript.sh start

启动成功会看到类似这样的界面

------------------------------------------------------------------
I M P O R T A N T 
------------------------------------------------------------------
Server Query Admin Account created 
loginname= "serveradmin", password= "xxxxxxxx"
------------------------------------------------------------------


------------------------------------------------------------------
I M P O R T A N T 
------------------------------------------------------------------
ServerAdmin privilege key created, please use it to gain 
serveradmin rights for your virtualserver. please
also check the doc/privilegekey_guide.txt for details.

token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
------------------------------------------------------------------

然后在teamspeak客户端中选连接,使用你的ip地址,密码一栏填入上面的password内的值,连接即可。
连接成功后teamspeak会验证你的管理员身份,这时需要填入上面token字段对应的一串字符来验证。

后期维护

关闭/重启/查看状态:

./ts3server_startscript.sh stop
./ts3server_startscript.sh restart
./ts3server_startscript.sh status

设置teamspeak服务器开机自启:
首先要把teamspeak服务加到你linux的服务列表中(以下为root权限操作,注意):

vim /lib/systemd/system/ts3.service

配置文件内容,注意路径,这里目录以/teamspeak为例,用户名以ts为例

[Unit]
Description=Teamspeak server
After=network.target
[Service]
WorkingDirectory=/teamspeak
User=ts
Group=ts
Type=forking
ExecStart=/teamspeak/ts3server_startscript.sh start inifile=ts3server.ini
ExecStop=/teamspeak/ts3server_startscript.sh stop
PIDFile=/teamspeak/ts3server.pid
RestartSec=15
Restart=always
[Install]
WantedBy=multi-user.target

:wq保存之后,用以下命令管理
启动服务端systemctl start ts3
关闭服务端systemctl stop ts3
开机自启systemctl enable ts3
开机不自启systemctl disable ts3
重新装载服务配置systemctl daemon-reload
查看服务端运行信息systemctl status ts3
(配置自启前最好用teamspeak的用户,如本例的ts进去./ts3server_startscript.sh stop关闭一下服务。

解析teamspeak服务器到域名(example.com):
在域名解析网站如cloudflare中配置DNS,添加一条SRV记录
服务:_tsdns
协议:TCP
名称:随便填,如ts
优先级5权重0端口41144
目标:example.com
(前提example.com已有至少一条A记录直接指向服务器ip地址,这里不能使用CDN代理,只选择DNS)

_tsdns._tcp.ts.example.com 86400 IN SRV 5 0 41144 example.com
example.com 86400 IN A 1.2.3.4

86400是TTL,可以设为自动,稍等1分钟左右生效。
用teamspeak客户端连接时填入example.com或ts.example.com都可以。

域名解析进阶

我遇到的情况是这样的,我通过cloudflare解析过我的博客服务器,然后我也想用这个域名做我的teamspeak服务器的解析,但是这两个服务器并不是同一个id,这是要先添加一条带有二级域名的解析记录A,如ts.example.com,不选择CDN代理,直接DNS,
然后再去照上面添加,目标填ts.example.com,名称依旧是随便填,如teamspeak,ts等(可以和二级域名一样)
CDN.png
配置完在teamspeak中就可以使用ts.example.com或者teamspeak.example.com连接了。


本文由 bambovc 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论