如何配置rsyncd服务?

RHEL-Like

1 前言

一个问题,一篇文章,一出故事。
由于笔者想实现文件通过rsync自动传输,但是又不想使用openSSH的公钥认证导致机器之间可以相互访问,于是便整理此服务的实现。

2 最佳实践

2.1 环境信息

Host Name = rsyncd.cmdschool.org
OS = RHEL 8.x x86_64
IP Address = 10.168.0.250

Host Name = client.cmdschool.org
OS = RHEL 8.x x86_64
IP Address = 10.168.0.8

2.2 配置Rsync服务端

In rsyncd,

2.2.1 安装软件包

dnf install -y rsync-daemon

2.2.2 定义服务配置文件

vim /etc/rsyncd.conf

加入如下配置,

address = 0.0.0.0
port = 873
pid file = /var/run/rsyncd.pid
uid = root
gid = root
hosts allow = 10.168.0.8
ignore errors = yes
ignore nonreadable = yes
log file = /var/log/rsyncd.log
lock file = /var/run/rsyncd.lock
transfer logging = yes
numeric ids = no
forward lookup = no
reverse lookup = no
use chroot = yes
max connections = 4
timeout = 900
exclude = lost+found/
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2

[sftp]
        path = /data/sftp
        read only = no
        comment = sftp export area

2.2.3 修改服务启动脚本

vim /usr/lib/systemd/system/rsyncd.service

配置修改如下,

[Unit]
Description=fast remote file copy program daemon
ConditionPathExists=/etc/rsyncd.conf
Wants=network-online.target
After=network-online.target

[Service]
Environment=TZ='CST-8'
EnvironmentFile=/etc/sysconfig/rsyncd
ExecStart=/usr/bin/rsync --daemon --no-detach "$OPTIONS"

[Install]
WantedBy=multi-user.target

注:加粗部分配置可以解决输出的日志与系统时区不一致问题

2.2.4 启动服务并设置服务自启动

systemctl start rsyncd.service
systemctl enable rsyncd.service
systemctl status rsyncd.service

服务启动后,你可以使用如下命令查看服务的进程,

pgrep -u root rsync -a

可见如下显示,

7089 /usr/bin/rsync --daemon --no-detach

服务启动后,你可以使用如下命令查看服务的倾听,

ss -antp | grep rsync

可见如下显示,

LISTEN 0      5            0.0.0.0:873        0.0.0.0:*     users:(("rsync",pid=7089,fd=4))  

2.2.5 配置防火墙

firewall-cmd --permanent --add-service rsyncd
firewall-cmd --reload
firewall-cmd --list-all

2.3 测试Rsync服务端

In client,

rsync -avz /etc/redhat-release rsyncd.cmdschool.org::sftp/

参阅文档
====================

配置文件说明
—————-
https://download.samba.org/pub/rsync/rsyncd.conf.5

国内配置范例
——————-
https://www.cnblogs.com/lemon-le/p/8395438.html

没有评论

发表回复

RHEL-Like
如何用pam_google_authenticator认证模块实现SSH 2FA?

1 前言 一个问题,一篇文章,一出故事。 笔者想开启2FA以便增强SSH服务的安全性,于是便整理此文 …

RHEL-Like
如何升级RHEL clamav杀毒?

1 前言 一个问题,一篇文章,一出故事。 笔者需要卸载旧的病毒软件,然后更新rpm包的病毒软件,于是 …

RHEL-Like
如何部署RHEL clamav?

1 前言 一个问题,一篇文章,一出故事。 最近黑客攻击猖獗,笔者需要更新服务器上的杀毒软件。于是整理 …