TeamSpeak 是一款老牌 VoIP 工具软件, 被国外广大游戏玩家所采用。国内用户可能不是很熟悉, 其实, TeamSpeak 是一款非常流行的跨平台 VoIP 和文本聊天应用程序, 可用于企业内部业务通信、教育和培训(讲座)、在线游戏以及朋友间的聊天沟通。TeamSpeak 提供了一种使用更简单、安全性强、语音质量高、系统和带宽利用率低的解决方案。软件采用客户机——服务器体系结构, 可以实时处理成千上万的用户。
TeamSpeak 具有以下关键特性:
- 易于使用, 高度可定制
- 高度可扩展性
- 支持高安全性标准
- 提供卓越的语音质量
- 允许低系统资源和带宽使用
- 支持强大的文件传输
- 支持健壮的权限系统
- 支持惊人的3D声音效果
- 允许移动连接
看到以上特性, 感觉这就是一个私密的语音聊天服务器么, 是不是有些心动, 想搭建一台属于自己的 TeamSpeak 服务器呢?如果有 VPS 服务器, 并且想搭建 TeamSpeak 服务器的朋友注意了, 本文将详细讲解如何在 CentOS 7 系统搭建 TeamSpeak 服务器, 并对相关细节进行说明。
CentOS 7 系统安装 TeamSpeak 服务器
升级系统并安装依赖
在进行服务器安装之前, 首先使用如下命令升级 CentOS 7 系统并安装 TeamSpeak 服务器所需的依赖工具包
yum update
yum install vim wget perl tar net-tools bzip2
创建 TeamSpeak 用户
出于安全性的考虑, TeamSpeak 服务器并不建议使用 root 用户来执行, 所以我们可以创建一个用户 teamspeak 来单独执行 TeamSpeak 服务器程序。使用如下命令创建用户 teamspeak 并为其设置密码:
adduser teamspeak
passwd teamspeak
下载并配置 TeamSpeak 服务器
从 TeamSpeak 官方网站下载最新版的服务器程序, 解压后将文件拷贝到 teamspeak 用户的家目录, 方便授权及文件管理
wget https://files.teamspeak-services.com/releases/server/3.13.6/teamspeak3-server_linux_amd64-3.13.6.tar.bz2
tar -xjf teamspeak3-server_linux_amd64-3.13.6.tar.bz2
mv teamspeak3-server_linux_amd64 /home/teamspeak/
# 设置文件权限
chown -R teamspeak:teamspeak /home/teamspeak/teamspeak3-server_linux_amd64/
find /home/teamspeak/teamspeak3-server_linux_amd64 -type d -exec chmod 705 {} +
find /home/teamspeak/teamspeak3-server_linux_amd64 -type f -exec chmod 604 {} +
chmod 705 /home/teamspeak/teamspeak3-server_linux_amd64/ts3server
手动启动 TeamSpeak 服务
当全部文件就位, 就可以切换成 teamspeak 用户来启动 TeamSpeak 服务器了。如果浏览过程序目录的话, 就会发现 TeamSpeak 服务器程序已经很方便使用了, 完全的绿色版, 无需安装直接运行, 并且程序还提供了服务器管理脚本, 方便操作服务器。
启动 TeamSpeak 服务器命令如下
su - teamspeak
cd teamspeak3/
# 首次启动时需要设置授权文件
touch .ts3server_license_accepted
./ts3server_startscript.sh start
第一次启动服务器时, 会出现如下提示
可以看到, 程序会提示创建了一个服务器管理员帐户, 并且创建了一个管理服务器的 token 字符串, 这个 token 串是通过客户端管理服务器的, 所以会着重提醒。
常见问题
如果出现错误提示, 表示缺少授权文件, 可以创建该文件
之后再使用之前的命令启动服务器, 就可以正常启动服务器了。
Accounting failed to register
ERROR |Accounting | |failed to register local accounting service: File exists
如果遇到了这个错误需要删除这个文件
rm -f /dev/shm/7gbhujb54g8z9hu43jre8
添加 systemctl 服务
为了管理服务器方便, 可以将 TeamSpeak 服务器添加为 CentOS 服务, 在 /lib/systemd/system/
目录中添加一个名为 ts3.service
的文件, 使用如下命令:
su -
vim /lib/systemd/system/ts3.service
在文件中添加以下内容
[Unit]
Description=TeamSpeak 3 Server
Wants=network-online.target
After=network.target
[Service]
Type=simple
User=teamspeak
Group=teamspeak
WorkingDirectory=/home/teamspeak/teamspeak3-server_linux_amd64/
ExecStart=/home/teamspeak/teamspeak3-server_linux_amd64/ts3server license_accepted=1
RestartSec=15
Restart=always
[Install]
WantedBy=multi-user.target
然后使用如下命令启动 TeamSpeak 服务, 并将其设置为开机自动启动, 最后查看服务状态
systemctl start ts3
systemctl enable ts3
systemctl status ts3
如果见到如下提示, 就表示服务已经添加成功, 并且工作正常了
好了, 现在 TeamSpeak 服务器就安装完成了, 可以通过 systemctl
命令来方便管理, 并且开机可以自行启动。
配置防火墙
CentOS 7 默认是安装并启用了防火墙的, 现需要通过以下命令将 TeamSpeak 服务器侦听的所有端口都打开
firewall-cmd --add-port=9987/udp --permanent
firewall-cmd --add-port=10011/tcp --permanent
firewall-cmd --add-port=30033/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-all
所有操作都完成后, 服务器就搭建完成。
TeamSpeak 客户端的使用
服务器搭建好后, 还需要一些基本的设置, 不然服务器就没有个性。
这里演示如何使用 windows 客户端来管理服务器。客户端的下载和安装这里就不再讲解, 根据自己系统版本下载安装程序自行安装即可。
安装完成后, 连接自己搭建的服务器, 会看到如下提示询问是否使用 token
还记得之前生成的 token 吗, 将这个密钥输入到对话框中, 就会得到服务器的管理权限, 就可以对服务器进行相关设置了。
选中服务器, 然后点击右键选择 Edit Virtual Server
菜单, 就可以进行服务器管理了, 典型设置如下图所示
当然, 还可以对服务器及聊天频道等内容进行更多的设置, 这里不再进行演示。
至此, 通过 VPS 搭建 TeamSpeak 服务器的主要工作就完成了, 当然还可以进行其它内容的细化, 包括服务器的其它配置等, 这里就不再赘述, 因为理论上不影响主要功能的使用。
原文
CentOS 7系统搭建TeamSpeak服务器详细教程
TeamSpeak 3 - Accounting failed to register