FMO 3.0语音服务器搭建教程

旧版本教程,目前搭建服务器可以参考,一段时间后会去除:点击访问旧版服务器教程

FMO是由BG5ESN开发的模拟转网络盒子,其不使用中心服务器,而是各爱好者自行搭建服务器,通过APRS网关广播。阅读FMO (NFM Over Internet) 语音服务器搭建指南 :: 大船地下室了解到,其使用MQTT Broker作为服务器载体。此处给出基于EMQX相对详细但仍简易的教程。

软件:EMQX开源版(注意一定要用开源版本!)

搭建环境:Linux(博主使用Ubuntu24.04),教程第二章也基于此。

网络需求:公网IP或内网穿透,访问固定端口,默认通信端口为1883,管理面板端口为18083,注意服务器防火墙设置,尤其是使用宝塔等有管理面板的云服务器,不仅要在云服务器安全策略放通,还要在面板的安全策略或防火墙也放通。(不然就会像博主一样遇到很诡异的问题,参考FMO洛凯集群服务器失效事故分析 - LiKai Blog

服务器硬件需求:需要完整的服务器或主机。

目前有两种EMQX安装方式,您可以使用由BI1THT制作的脚本一键安装(感谢BI1THT大佬!),更加方便快捷,也会将文件集中便于删改,若您不放心该脚本,也可以使用手动安装。

一 FMO服务器密钥获取

3.0的FMO服务器使用更加安全的JWT验证。

FMO注册好并开机后,按下菜单键,旋动旋钮找到“凭证”并短按旋钮进入,按照提示长按旋钮会显示凭证,保持在该页面:

确保FMO与电脑/手机等设备在同一网络,访问fmo.local或FMO的IP打开FMO网页后台,点击“参数配置”:

往下滑动,找到“服务器密钥”

根据提示,短按一下FMO的旋钮,这里就会显示密钥了:

点击一键复制即可获得JWT密钥,注意一定不要泄露!为方便后续配置可以将它放到一个安全的位置存储。

二 服务器安装

A 使用一键安装脚本安装

一键安装脚本适用于Ubuntu系统,也适用于docker安装。

1 Linux系统直接安装

打开终端,依次运行以下命令:

下载文件:

wget tylk.cc/fmo_file/fmo-emqx-5.8.9-opensource.zip

解压文件:

unzip fmo-emqx-5.8.9-opensource.zip

切换目录:

cd fmo-emqx

对于大部分服务器,使用默认1883端口即可(将“第一步获得的JWT密钥”替换为第一步获得的32位密钥):

sudo bash install.sh -k 第一步获得的JWT密钥

根据提示进行确认。如果不出意外,等一会会提示安装完成。请直接看第三部分。

如果安装失败或提示不支持,请使用docker方式安装。

若想使用其它端口,则使用:(注意防火墙规则)

sudo bash install.sh -k 第一步获得的JWT密钥 -P 自定义端口

2 Docker安装

打开终端,依次运行以下命令:

下载文件:

wget tylk.cc/fmo_file/fmo-emqx-5.8.9-opensource-docker.zip

解压文件:

unzip fmo-emqx-5.8.9-opensource-docker.zip

切换目录:

cd fmo-emqx

对于大部分服务器,使用默认1883端口即可(将“第一步获得的JWT密钥”替换为第一步获得的32位密钥):

sudo bash install.sh -k 第一步获得的JWT密钥

根据提示进行确认。如果不出意外,等一会会提示安装完成。请直接看第三部分。

若想使用其它端口,则使用:(注意防火墙规则)

sudo bash install.sh -k 第一步获得的JWT密钥 -P 自定义端口

若为Windows系统使用docker运行服务器,请访问tylk.cc/fmo_file/fmo-emqx-5.8.9-opensource-docker.zip下载并解压文件,使用powershell运行fmo-emqx-install.ps1文件。

B 手动安装配置

等待后续更新,手动安装是为了更好理解过程,并不建议使用手动安装。

三 FMO配置

确保FMO与电脑/手机等设备在同一网络,访问fmo.local或FMO的IP打开FMO网页后台,点击“参数配置”:

下拉页面找到“自定义服务器”栏目,依次填写地址、端口、名称等,测试服务器范围可以填小一些以便于控制。每设置完一项可以点击右边的“设置”,若成功写入FMO,会变成“设置成功”字样。若在设置名称或公告时提示“设置失败”,可以检查有没有使用中文标点,目前不能使用。

随后上翻到“APRS网络设置”栏目,填写APRS PASSCORD(基于呼号计算,点这里跳转到在线计算器)并点击“设置”保存参数,其余信息按需填写。

然后点击下方“重启服务”。

返回FMO控制面板主页,点击“远程控制”,选择自己的中继:

页面上会提示当前已接入台站,FMO本体上也会显示信息。

此时就完成了FMO服务器开服。