在 CentOS 上搭建 Mumble 服务器
Mumble 服务器搭建
前言
Mumble 是一个开源、低延迟、高质量的语音通话平台。可以在多个平台搭建,并且有多个开源的客户端(Windows、Linux、Android、MacOS)。这是 官网 Github
比如你可以在 F-Droid 下载一个开源的客户端 Mumla ,可以使用自己搭建的服务器,也可以使用许多公共服务器。
Mumble 有以下特点:
- 对用户
- 低延迟,用于游戏交流体验超棒
- 保持隐私和安全
- 始终是加密通话
- 默认使用公钥、私钥配对
- 通过服务器辨别朋友
- 对于游戏玩家:
- In-game Overlay 看谁在说话、FPS、时间
- 方位音频,听到玩家从游戏中的所处的位置说话。
- 有指南帮助设置,例如配置麦克风
- 对管理员
- Libre 软件,没有授权什么的限制
- 开源,安全,可扩展
- 可扩展的用户权限系统
- 可通过 Ice 和 GRPC 协议扩展
- 对 Hosters
- 免费软件
- 可通过 Ice middleware 自动化管理
- 低资源占用
- 稳定的 server 软件
- 可自定义的 web-interfaces (通过 Ice)
这里是官方的服务器搭建指南: Server guide
其实像 Ubuntu 类的系统搭建是比较简单的,有官方包,安装运行就行,但是 CentOS 没有官方 yum 可安装的包,所以要手动搭建。
今天在我的阿里云 CentOS 服务器上搭建了 Mumble 服务器。
安装
Windows
下载安装包安装就行了
Linux
CentOS7
下载
(服务器端是 murmur ,不是 mumble,mumble 是客户端)
tar -jxvf murmur-static_x86-1.3.0.tar.bz2
cd cd murmur-static_x86-1.3.0
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
创建 Murmur 账户、数据目录、登陆目录
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
系统配置
Murmur.ini vim /etc/murmur.ini
database=/var/lib/murmur/murmur.sqlite
logfile=/var/log/murmur/murmur.log
pidfile=/var/run/murmur/murmur.pid
# 对了,把服务密码设一下,不要让人随便就能加入
serverpassword=mypassword
# Reminder: When changing the port that murmur will listen to you will need to also update the firewall.
# Update the firewall by editing /etc/firewalld/services/murmur.xml
# Then run "sudo firewall-cmd --reload"
port=64738
# Comment out the following setting since the service will already be executing as the correct user:
# uname=murmur
# 再设下最大在线用户数。估计我的服务器承载不了很多人
users=10
允许后台运行
创建一个系统单位,让 Murmur 可以被系统管理,创建文件 vim /etc/systemd/system/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 已经不能用了,创建 vim /etc/tmpfiles.d/murmur.conf :
d /var/run/murmur 775 murmur murmur
自动覆盖Log
设置 logrotate 不让 log 文件 /var/log 装满。创建 vim /etc/logrotate.d/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
}
防火墙(如果要更改默认端口的话)
/etc/firewalld/services/murmur.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>Murmur</short>
<description>Mumble Server (Murmur)</description>
<port protocol="tcp" port="64738" /><!-- Reminder: Update /etc/murmur.ini so that it uses the same ports -->
<port protocol="udp" port="64738" />
</service>
再添加防火墙规则到默认区域并重新载入:
sudo firewall-cmd --permanent --add-service=murmur
sudo firewall-cmd --reload
SELinux
如果有 SELinux ,临时禁用:
sudo setenforce 0
要永久禁用 SELinux :
SELINUX=disabled
最后步骤:
更新系统让它准备运行 Murmur 服务
sudo systemd-tmpfiles --create /etc/tmpfiles.d/murmur.conf
sudo systemctl daemon-reload
暂时启动:
sudo systemctl start murmur.service
设置自动启动:
sudo systemctl enable murmur.service
注意 :如果启动 Murmur 后只得到了一个僵死的进程,那么需要安装 redhat-lsb-core
系统准备
在控制台打开 64738 的 TCP 和 UDP 端口,
配置服务
ini 文件
改变 ini 文件后要重启服务才能生效。 ini 长这个样子:
welcometext=
port=
serverpassword=
上面一行留空表示是公共服务
bandwidth=
users=
registerName=根频道的名字
#这是注释
登陆
用手机端的 Mumla 测试下,延迟 64ms ,还不错。
在 CentOS 上搭建 Mumble 服务器的更多相关文章
- CentOs上搭建git服务器
CentOs上搭建git服务器 首先安装setuptools wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0 ...
- 在CentOS上搭建PHP服务器环境
您也可以使用一键自动部署环境的工具,请参见网友开发的这个工具 http://www.centos.bz/2013/08/ezhttp-tutorial/ 安装apache: yum insta ...
- 在centos上搭建SVN服务器和MySQL
----------搭建MySQL--------------- 1.查看yum库中的mysql yum list | grep mysql //查看yum库中的mysql 2.选择需要的mysql进 ...
- 在CentOS上搭建PHP服务器环境(可用)
原文:https://www.cnblogs.com/zy2009/p/7047828.html 1,先安装apache: yum install httpd 配置ServerName vi /etc ...
- 如何在CentOS上搭建gitlab服务器
步骤 1. 打开HTTP和SSH访问 1.1 安装 sudo yum install -y curl policycoreutils-python openssh-server 1.2 开启SSH 这 ...
- 在CentOS上搭建svn服务器及注意事项
系统环境 CentOS 5.9 推荐使用yum install安装,比较简单 一.检查是否已经安装其他版本svn # rpm -qa subversion #卸载svn # yum remove ...
- 在centos上搭建Git服务器
第一步:先安装一些相关依赖库和编译工具 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel yum in ...
- CentOS Linux上搭建PPPoE服务器及拨号设置
CentOS Linux上搭建PPPoE服务器及拨号设置 搭建PPPoE,成功了的话,就觉得超级简单,在CentOS Linux更是5步左右就能搞定. 1.安装pppoe,安装完成后,会有pppoe- ...
- CentOS 7搭建SVN服务器
安装步骤如下: 1.yum install subversion 2.查看安装版本 svnserve --version 3.创建SVN版本库目录 mkdir -p /var/svn/svnrepos ...
- 在CentOS 上搭建nginx来部署静态页面网站
在centOs 上搭建nginx来部署静态页面网站 一.部署服务器环境 nginx:轻量级.高性能的HTTP及反向代理服务器,占用内存少,并发能力强,相比老牌的apache作为web服务器,性能更加卓 ...
随机推荐
- MQ(为什么要使用MQ)
为什么使用MQ? 个人认为主要由几下几点: 1.在高并发环境下,由于来不及同步处理,请求往往会发生堵塞,比如说,大量的insert,update之类的请求同时到达数据库,直接导致无数的行锁表锁,甚至最 ...
- useBean类属性[javaChuLi.LoginBean]的值无效
今天遇到了一个错误,如图 参见:JSP 中给定的 useBean 标签的 class 属性的值无效_dkawskawx的博客-CSDN博客
- QImageReader(Writer)支持格式变少的解决方法
首发于我的个人博客:xie-kang.com 博客内有更多文章,欢迎大家访问 原文地址 获取程序支持的图片格式: #include "mainwindow.h" #include ...
- 谷歌翻译不能用解决办法(谷歌翻译关闭后,如何继续使用Chrome浏览器的翻译功能?)
1.查找 IP 虽然谷歌不再提供 translate.google.cn 网页版的服务了,但谷歌翻译的 API 服务还在. 只需要通过 hosts 重定向至国内服务器,即可恢复使用. 1.Ping ...
- 调用搜狐js接口获取客户端IP及省分城市
<!-- 引入,搜狐IP地址查询接口(默认GBK) --> <!-- <script src="http://pv.sohu.com/cityjson"&g ...
- GO语言学习笔记-并发篇 Study for Go ! Chapter seven - Concurrency
持续更新 Go 语言学习进度中 ...... GO语言学习笔记-类型篇 Study for Go! Chapter one - Type - slowlydance2me - 博客园 (cnblogs ...
- webpack原理(1):Webpack热更新实现原理代码分析
热更新,主要就是把前端工程 文件变更,即时编译,然后通知到浏览器端,刷新代码. 服务单与客户端通信方式有:ajax 轮询,EventSource.websockt. 客户端刷新一般分为两种: 整体页面 ...
- 【LeetCode贪心#09】用最少数量的箭引爆气球(涉及区间重叠情况判断)
用最少数量的箭引爆气球 力扣题目链接(opens new window) 在二维空间中有许多球形的气球.对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标.由于它是水平的,所以纵坐标并不重 ...
- Mybatis Plus根据某字段特定值排序
需求 背景:一个审核流程.审核人等级分为市级和省级,管理员升级字段adminlevel,字段含义:1省级,2市级.审核字段audit为int字段,字段含义:1待市级审核,2待省级审核,3通过审核. 需 ...
- Wondershare Recovery - 万兴数据恢复专家,恢复你 Mac 上的重要文件
Wondershare Recoverit 是恢复被删除文件最有效的软件之一.计算机用户面临的一个主要问题是失去机密信息.我们可能是误删除了数据和文件,或者可能是由于病毒袭击.操作系统故障或硬盘故障而 ...