

使用Mumble搭建语音服务器
source link: https://fisher.lazybone.xyz/%E4%BD%BF%E7%94%A8mumble%E6%90%AD%E5%BB%BA%E8%AF%AD%E9%9F%B3%E6%9C%8D%E5%8A%A1%E5%99%A8.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

之前与朋友一起在CSGO开黑时一直用的是微信语音,没有按键发言用的很不顺手。YY语音的广告太多不忍直视,Discord又被墙了。正好自己有个阿里云的服务器,就想着自己搭建一个语音服务器,也方便上网课的时候建立讨论组。于是乎上网查找了一番,找到了一个叫Mumble的语音软件,它的语音客户端全平台支持,官方的搭建文档介绍详细,简直就是开黑神器。话不多说,接下来就是我的搭建过程
下载Mumble服务器安装包
Mumble官方下载页面在这里,选择下载Static Linux Server
,然后从浏览器的下载管理中把下载链接复制出来,在服务器上使用wget DOWNLOAD_ADDERSS
下载(DOWNLOAD_ADDRESS为刚刚复制的下载链接)
如果官方链接太慢的话,我的服务器上也提供了Mumble V1.3.0的服务器安装包、Windows安装包、macOS安装包,需要的可以从这个页面找到并下载。使用我的服务器提供的下载地址下载Mumble Server:
wget http://fisher.lazybone.xyz/downloads/software/murmur-static_x86-1.3.0.tar.bz2
解压安装包、添加用户和用户组
下载完安装包后,解压并移动到指定目录下。同时从安装包中复制一份配置文件到/etc
中
tar -vxjf ./murmur-static_x86-1.3.0.tar.bz2
sudo mkdir /usr/local/murmur
sudo cp -r ./murmur-static_x86-1.3.0/* /usr/local/murmur/
sudo cp ./murmur-static_x86-1.3.0/murmur.ini /etc/murmur.ini
创建用户、用户组、数据文件夹和日志文件夹。同时修改创建的文件和文件夹的权限、拥有者
sudo groupadd -r murmur
sudo useradd -r -g murmur -m -d /var/lib/murmur -s /sbin/nologin murmur
sudo mkdir /var/log/murmur
sudo chown murmur:murmur /var/log/murmur
sudo chmod 0770 /var/log/murmur
配置服务器参数
使用vim编辑murmur.ini
文件
vim /etc/murmur.ini
指定以下3个参数
database=/var/lib/murmur/murmur.sqlite
logfile=/var/log/murmur/murmur.log
pidfile=/var/run/murmur/murmur.pid
以下参数可根据自己需要修改
# 欢迎进入服务器信息,可以修改成自己喜欢的
welcometext="Welcome to Fisher's mumble server!"
# 语音服务器端口,待会对应防火墙端口需要打开
port=64738
# 服务器密码,进入服务器时会询问输入
serverpassword=12345678
# 最大语音带宽,我改成了128kbit/s,可根据自己需要修改
bandwidth=128000
# 最多允许多少名用户进入服务器
users=10
添加系统服务模块
添加系统服务单元,以允许Mumble在后台运行
使用root
权限创建murmur.service
sudo vim /etc/systemd/system/murmur.serivce
将以下数据复制到murmur.service
中,然后保存退出
[Unit]
Description=Mumble Server (Murmur)
Requires=network-online.target
After=network-online.target mariadb.service time-sync.target
[Service]
User=murmur
Type=forking
ExecStart=/usr/local/murmur/murmur.x86 -ini /etc/murmur.ini
PIDFile=/var/run/murmur/murmur.pid
ExecReload=/bin/kill -s HUP $MAINPID
[Install]
WantedBy=multi-user.target
由于现在的操作系统会在重启时放弃var/run
中的更改,为了重新创建Mumble的PID文件夹,我们需要创建murmur.conf
文件
使用root
权限创建murmur.conf
sudo vim /etc/tmpfiles.d/murmur.conf
将以下数据复制到murmur.conf
中,然后保存退出
d /var/run/murmur 775 murmur murmur
配置日志文件
使用root
权限创建murmur
sudo vim /etc/logrotate.d/murmur
将以下数据复制到murmur
中
/var/log/murmur/*log {
su murmur murmur
dateext
rotate 4
missingok
notifempty
sharedscripts
delaycompress
postrotate
/bin/systemctl reload murmur.service > /dev/null 2>/dev/null || true
endscript
}
配置防火墙
不同的云服务器商设置防火墙的方式不同。对于阿里云的轻量服务器,服务器的管理界面中点击防火墙,添加TCP和UDP的64738端口(端口根据上面配置文件改变而改变)
启动服务器
刷新系统服务
sudo systemd-tmpfiles --create /etc/tmpfiles.d/murmur.conf
sudo systemctl daemon-reload
允许开机自动启动Mumble服务
sudo systemctl enable murmur.service
正式启动Mumble服务器
sudo systemctl start murmur.service
当看到active(running)
时,表示Mumble服务器启动成功
连接服务器,完成!
打开自己电脑上的Mumble,点击左上角小地球,点击添加,填入自己的服务器地址,用户名自己起一个喜欢的(不能是SpuerUser
,这是Mumble管理员账号)。点击OK后连接,输入密码,大功告成!
进阶操作:添加、修改频道
如果使用的小伙伴太多了,需要分开不同的频道使用的时候,就需要使用SuperUser
用户连接服务器并对root
频道进行修改了。要使用SuperUser
很简单,可以使用首次启动时系统随机分配的密码,也可以自己设置一个密码
对于系统随机分配的密码,使用以下命令:
cat /var/log/murmur/murmur.log
查找<W>year-month-day hour:min:sec 1 => Password for 'SuperUser' set to 'supersecretpassword'
这条日志,密码就是那一串supersecretpassword
。由于我的服务器用了好久了,那一串日志被覆盖掉了,这里就没有截图了(逃
对于自己设置一个密码,使用以下命令即可:
cd /usr/local/murmur
./murmur.x86 -ini /etc/murmur.ini -supw PASSWORD
其中PASSWORD
改成自己想要设定的密码。接下来在Mumble软件中添加自己的服务器,用户名使用SuperUser
,密码填自己刚刚设置的密码
连接到服务器后,对着root
频道右键,就可以进行频道添加、修改、删除的操作了。最后配置一下自己的音频输入输出,就可以愉快地与朋友开黑了!
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK