FreeBSD rsync 同步服务

发布于 2024-11-10 02:42:14 字数 3215 浏览 4 评论 0

环境介绍

服务器 A、服务器 B 均为 FreeBSD-12.2-RELEASE-amd64

  • 服务器 A(发起端): 192.168.100.10/24
  • 服务器 B(同步源): 192.168.100.20/24

需求 :实现服务器 B 的数据同步到服务器 A 上

服务器 B(同步源)配置

安装 rsync 软件包

# pkg install -y rsync

查询已安装 rsync 软件包的信息

# pkg info | grep rsync 
rsync-3.2.3

新建需要备份的文件夹 test ,并且设置其属主为 root ,以及在其内部新建测试文件

# mkdir test
# chown root /home/test/
# touch txt001 /home/test/

编辑 rsyncd.conf 文件

# ee /usr/local/etc/rsync/rsyncd.conf

uid = root  //服务端操作系统的用户
gid = wheel  //服务端操作系统的用户的组
use chroot = yes  //禁锢在源目录
address = 192.168.100.20  //监听地址
port 873   //用于通信的 TCP 端口,缺省是 873
log file = /var/log/rsyncd.log     //日志文件位置
pid file = /var/run/rsyncd.pid     //存档进程 ID 的文件位置
hosts allow = 192.168.100.0/24     //允许访问的客户机地址

[testcom]      //共享模块名称,自定义的名称,不一定要与同步目录相同
path = /home/test         //同步的目录名,必须是  uid 参数指定的用户和 gid 参数指定的组
comment = testcombackup   //模块说明文字     
read only = yes      //是否为只读
dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2   //同步时不再压缩的文件类型

auth users = root    //授权账户
secrets file = /etc/rsyncd_users.db          //定义 rsync 客户端用户认证的密码文件

创建授权备份账户认证的密码文件

# ee /etc/rsyncd_users.db

root:12345678          //格式:授权账户用户名:密码

修改数据文件权限

# chmod 600 /etc/rsyncd_users.db

rsync 的服务名是 rsyncd,启动 rsync 服务程序

# rsync --daemon    //启动服务

# sysnc rsyncd_enable="YES"  //设置开机自启动

# /usr/local/etc/rc.d/rsyncd start //启动服务

查看 rsync 运行端口号

# sockstat | grep rsync
root     rsync      1185  4  dgram  -> /var/run/logpriv
root     rsync      1185  5  tcp4   192.168.100.20:873    *:*

防火墙放行 rsync 服务

# ee /etc/ipfw.rules 

IPF="ipfw -q add"
ipfw -q -f flush

#loopback 
$IPF 10 allow all from any to any via lo0
$IPF 20 deny all from any to 127.0.0.0/8
$IPF 30 deny all from 127.0.0.0/8 to any
$IPF 40 deny tcp from any to any frag

# statefull
$IPF 50 check-state
$IPF 60 allow tcp from any to any established
$IPF 70 allow all from any to any out keep-state
$IPF 80 allow icmp from any to any

# open port for ssh
$IPF 110 allow tcp from any to any 22 out
$IPF 120 allow tcp from any to any 22 in

# open port for rsync
$IPF 130 allow tcp from any to any 873 in  

# deny and log everything 
$IPF 500 deny log all from any to any

服务器 A(发起端)配置

创建本地文件夹 /home/testBackUp/ 并设置好相关权限

# mkdir testBackUp
# chown root:root testBackUp

发起端访问同步源,将文件下载到本地 /home/testBackUp/ 下载目录下,需要人机交互手动输入密码

# rsync -avz root@192.168.100.20::testcom /home/testBackUp

查看同步情况

# ls -l /home/testBackUp/
total 0
-rw-r--r-- 1 root root 0 Feb  2 22:27 txt001

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

0 文章
0 评论
24 人气
更多

推荐作者

qq_E2Iff7

文章 0 评论 0

Archangel

文章 0 评论 0

freedog

文章 0 评论 0

Hunk

文章 0 评论 0

18819270189

文章 0 评论 0

wenkai

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文