rsync配置为守护进程需四步:安装并启用daemon支持、编写/etc/rsyncd.conf(含uid/gid、max connections、模块path及auth users等)、创建600权限的/secrets文件与对应共享目录、systemctl启动后用ss和rsync命令验证873端口监听及认证访问。

要把 rsync 配置成后台守护进程(daemon mode),搭建一个稳定、可控的企业内网文件同步服务器,核心是让它以独立服务形式运行,监听 873 端口,用虚拟用户认证,不依赖 SSH。整个过程分四步:安装与准备、配置服务参数、设置认证与权限、启动并验证。
安装 rsync 并启用守护进程支持
多数 Linux 发行版已预装 rsync,但需确认版本并启用 daemon 模式支持:
- 执行 sudo apt update && sudo apt install rsync -y(Debian/Ubuntu)或 sudo yum install rsync -y(CentOS/RHEL)
- 检查是否就绪:rsync --version,确保版本 ≥ 3.1.0
- 启用系统级守护服务:编辑 /etc/default/rsync(Ubuntu/Debian)或确保 systemd 能直接管理;将 RSYNC_ENABLE=true(如存在该配置项)
编写 /etc/rsyncd.conf 主配置文件
这个文件不存在时需手动创建,它是守护进程的行为总控。关键项要明确指定用户身份、连接限制、日志路径和模块定义:
-
uid/gid 设为 root 或专用低权限用户(如
rsync),后者更安全;若设为非系统用户,需先 useradd -s /sbin/nologin rsync - use chroot = no —— 避免路径越界风险,尤其共享目录含符号链接时
- max connections 建议设为 50–200,根据并发需求调整
- 每个共享模块(如
[docs])必须包含:path(绝对路径,如/srv/rsync/docs)、read only = no(允许写入)、auth users(如dept_a)、secrets file(指向密码文件)、hosts allow(限定网段,如192.168.10.0/24)
创建认证文件与共享目录
认证走独立密码机制,不复用系统账户,便于权限隔离:
- 新建 /etc/rsyncd.secrets,内容格式为 用户名:密码(例如
dept_a:SecurePass2026!) - 立即执行 sudo chmod 600 /etc/rsyncd.secrets —— 权限不是可选项,否则服务拒绝启动
- 创建共享目录,如 sudo mkdir -p /srv/rsync/docs,再按配置中
uid/gid设置属主:sudo chown rsync:rsync /srv/rsync/docs - 确保目录有读写执行权限:sudo chmod 755 /srv/rsync/docs
启动服务并测试连通性
启动后不是“完成”,而是进入可观测、可维护状态:
- 用 systemd 启动:sudo systemctl start rsync;设开机自启:sudo systemctl enable rsync
- 检查端口监听:sudo ss -tln | grep :873 或 sudo netstat -tuln | grep :873
- 查看日志定位问题:sudo tail -f /var/log/rsyncd.log(若配置了 log file)
- 从客户端测试:rsync rsync://dept_a@192.168.10.100/docs,输入密码后应列出目录内容;成功后再加 -avz 推送文件











