操作系统应用开发(十九)RustDesk 强制认证—东方仙盟金丹期
在 RustDesk 开源服务端的配置中,MUST_LOGIN=Y
是一个环境变量配置项,用于强制客户端必须登录后才能使用远程连接功能。其设置位置和方式取决于服务端的部署方式:
直接运行二进制文件在启动服务端(如
hbbs
或hbbr
)的命令行中临时设置,例如:cmd
# Windows 命令提示符 set MUST_LOGIN=Y && hbbs.exe# Linux/macOS 终端 MUST_LOGIN=Y ./hbbs
系统环境变量长期生效可配置系统环境变量:
- Windows:通过 “控制面板→系统→高级系统设置→环境变量” 添加
MUST_LOGIN
,值设为Y
。 - Linux/macOS:在
/etc/profile
或~/.bashrc
中添加export MUST_LOGIN=Y
,执行source
命令生效。
- Windows:通过 “控制面板→系统→高级系统设置→环境变量” 添加
Docker 部署在
docker run
命令中通过-e
参数指定:bash
docker run -e MUST_LOGIN=Y -p 21115:21115 -p 21116:21116 -p 21117:21117 rustdesk/rustdesk-server
这个配置项在 RustDesk 的开源文档和服务端源码的环境变量说明中会提及,主要用于增强服务端的访问控制,适合需要强制身份验证的场景。
RustDesk 服务端(hbbs、hbbr)的配置参数可通过命令行参数或配置文件(通常为 config.toml
)进行设置,以下是主要配置参数及说明(基于最新开源版本,不同版本可能略有差异):
通用基础参数
参数 | 说明 | 默认值 / 示例 |
---|---|---|
--help | 显示所有参数帮助信息 | - |
--version | 显示服务端版本 | - |
--config <FILE> | 指定自定义配置文件路径(默认读取当前目录 config.toml ) | --config /etc/rustdesk/config.toml |
--log <LEVEL> | 日志级别(trace /debug /info /warn /error ),级别越低日志越详细 | info |
hbbs(ID 服务器)核心参数
参数 | 说明 | 默认值 / 示例 |
---|---|---|
--port <PORT> | 主服务端口(用于客户端注册、ID 映射) | 21115 |
--relay-server <IP:PORT> | 指定 hbbr(中继服务器)地址,格式为 IP:端口 | 若同机部署,默认自动关联本地 hbbr |
--key <KEY> | 自定义加密密钥(用于客户端与服务端通信加密,建议设置复杂字符串) | 自动生成随机密钥 |
--allow-anonymous | 是否允许匿名访问(true /false ),设为 false 则强制登录 | true |
--max-connections | 最大并发连接数 | 1000 |
--db <PATH> | 数据存储路径(用于保存客户端 ID、映射关系等) | 当前目录 db 文件夹 |
hbbr(中继服务器)核心参数
参数 | 说明 | 默认值 / 示例 |
---|---|---|
--port <PORT> | 中继服务端口(用于客户端之间的数据中继转发) | 21116 |
--hbbs-server <IP:PORT> | 指定 hbbs 服务器地址(需与 hbbs 的--port 对应) | 若同机部署,默认 127.0.0.1:21115 |
--key <KEY> | 需与 hbbs 的 --key 保持一致,否则无法与 hbbs 通信 | 同 hbbs 的密钥 |
--max-bandwidth <MBPS> | 最大带宽限制(单位:Mbps),防止中继占用过多网络资源 | 无限制 |
--timeout <SECONDS> | 连接超时时间(秒),超过时间自动断开闲置连接 | 300 |
配置文件(config.toml)示例
若使用配置文件,可将上述参数按以下格式写入 config.toml
,启动时通过 --config
指定路径即可:
toml
# hbbs 配置
[hbbs]
port = 21115
relay_server = "192.168.1.100:21116"
key = "your_custom_secure_key"
allow_anonymous = false
max_connections = 500
db = "/var/rustdesk/db"# hbbr 配置
[hbbr]
port = 21116
hbbs_server = "192.168.1.100:21115"
key = "your_custom_secure_key" # 需与hbbs一致
max_bandwidth = 100 # 限制100Mbps
timeout = 600
注意事项
- 部分参数仅在特定版本支持,建议通过
hbbs --help
或hbbr --help
查看当前版本的详细参数。 - 生产环境中建议设置
--key
并关闭--allow-anonymous
,同时配合防火墙限制端口访问(仅开放 21115、21116 等必要端口)。 - 若部署集群或跨服务器架构,需确保 hbbs 与 hbbr 的
--key
一致,且网络互通
阿雪技术观
让我们积极投身于技术共享的浪潮中,不仅仅是作为受益者,更要成为贡献者。无论是分享自己的代码、撰写技术博客,还是参与开源项目的维护和改进,每一个小小的举动都可能成为推动技术进步的巨大力量
Embrace open source and sharing, witness the miracle of technological progress, and enjoy the happy times of humanity! Let's actively join the wave of technology sharing. Not only as beneficiaries, but also as contributors. Whether sharing our own code, writing technical blogs, or participating in the maintenance and improvement of open source projects, every small action may become a huge force driving technological progrss.