博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
搭建backup服务器rsyncdaemon服务模式之一rsync服务端配置
阅读量:6844 次
发布时间:2019-06-26

本文共 4521 字,大约阅读时间需要 15 分钟。

daemon方式就是先搭建一个服务器,这个服务器上面跑一个rsync服务,服务就称为daemon(daemon就是实时运行的程序),rsync监听端口是873,然后在客户端上面使用rsync命令,实现和服务器之间推拉动作。(推拉都是在客户端执行rsync命令)

本文中rsync服务端有两个网卡:网卡1连接外网,ip地址和掩码为10.0.0.41/24;网卡2连接内网,ip地址和掩码为172.16.1.41/24

 1. 统一版本:

[root@backup ~]# uname -m

x86_64
[root@backup ~]# uname -r
2.6.32-642.el6.x86_64
[root@backup ~]# rsync --version
rsync  version 3.0.6  protocol version 30
Copyright (C) 1996-2009 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, ACLs, xattrs, iconv, symtimes

rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you

are welcome to redistribute it under certain conditions.  See the GNU
General Public Licence for details.

查看rsync程序是否存在

[root@backup ~]# rpm -qa rsync

rsync-3.0.6-12.el6.x86_64

如果没有 rsync就用yum install rsync -y 安装。

2.rsync服务器搭建在备份服务器上面,然后在所有服务器上面通过命令就是推拉了。

[root@backup ~]# ll /etc/rsyncd.conf

ls: cannot access /etc/rsyncd.conf: No such file or directory

配置文件rsyncd.conf默认是不存在的

[root@backup ~]# vim /etc/rsyncd.conf

 中插入如下信息:

#rsync_config__________start
##rsyncd.conf start##
uid=rsync
gid=rsync
use chroot=no
max connections=200
timeout=300
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
log file=/var/log/rsyncd.log
[backup]
path=/backup
ignore errors
read only=false
list=false
hosts allow=172.16.1.0/24
#hosts deny=0.0.0.0/32
auth users=rsync_backup
secrets file=/etc/rsync.password
#rsync_config________end

/etc/rsyncd.conf配置信息解释

##rsyncd.conf start##

uid=rsync  #虚拟用户,文件和进程都要满足属组要求,进程对应的用户(远端的命令使用rsync访问共享目录)
gid=rsync #进程对应的用户组
use chroot=no ##安全相关
max connections=200 #最大连接数
timeout=300 #超时参数
pid file=/var/run/rsyncd.pid #进程对应的进程号文件
lock file=/var/run/rsync.lock #锁文件,防止文件不一致
log file=/var/log/rsyncd.log  #日志文件 出错
[backup] #模块名称
path=/backup #服务器提供访问的目录
ignore errors #忽略错误
read only=false #可写
list=false #不能列表
hosts allow=172.16.1.0/24 ##允许那些机器过来连接
#hosts deny=0.0.0.0/32 ##拒绝哪些机器过来连接(0.0.0.0/32表示谁都可以过来,此处hosts deny前面要用#注释,如果不用#注释,任何ip都可以过来)
auth users=rsync_backup #虚拟用户,独立于系统账号之外的虚拟用户
secrets file=/etc/rsync.password #虚拟账号对应的用户和密码
#rsync_config________end

检查是否存在账号rsync,如果不存在就新建。 -s代表 不需要登录,-M代表不需要家目录

[root@backup ~]# id rsync

id: rsync: No such user
[root@backup ~]# useradd rsync -s /sbin/nologin -M

用tail -l查看刚刚建好的账号

[root@backup ~]# tail -1 /etc/passwd

rsync:x:501:501::/home/rsync:/sbin/nologin

启动服务:

[root@backup ~]# rsync --daemon

查看服务是否启动:

[root@backup ~]# ps -ef|grep rsync|grep -v grep
root       1344      1  0 23:54 ?        00:00:00 rsync --daemon

创建backup目录

[root@backup ~]# mkdir /backup

用户连接过来无法访问backup,需要修改/backup属组为rsync虚拟用户

[root@backup ~]# chown rsync.rsync /backup

[root@backup ~]# ls -ld /backup/
drwxr-xr-x 2 rsync rsync 4096 Aug  2 23:57 /backup/

vim rsync.password输入内容rsync_backup:oldboy 其中rsync_backup为用户名,oldboy为密码

[root@backup ~]# vim /etc/rsync.password

[root@backup ~]# cat /etc/rsync.password 

rsync_backup:oldboy

因为/etc/rsync.password有用户和密码,所以不够安全。所以需要修改rsync.password的其他组的权限。

[root@backup ~]# ll /etc/rsync.password    

-rw-r--r-- 1 root root 20 Aug  3 00:07 /etc/rsync.password
[root@backup ~]# chmod 600 /etc/rsync.password

[root@backup ~]# ll /etc/rsync.password 

-rw------- 1 root root 20 Aug  3 00:07 /etc/rsync.password

服务器端配置完成了

已知端口查看服务:

[root@backup ~]# lsof -i :873

COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
rsync   1344 root    4u  IPv4  11151      0t0  TCP *:rsync (LISTEN)
rsync   1344 root    5u  IPv6  11152      0t0  TCP *:rsync (LISTEN)

[root@backup ~]# netstat -lntup|grep 873

tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN      1344/rsync          
tcp        0      0 :::873                      :::*                        LISTEN      1344/rsync

加入开机自启动:

[root@backup ~]# echo "/usr/bin/rsync --daemon" >>/etc/rc.local

[root@backup ~]# tail -1 /etc/rc.local
/usr/bin/rsync --daemon

总结rsync服务器配置过程:

1.查看rsync安装包

rpm -qa rsync

2.添加rsync服务的用户,管理本地目录的

useradd -s /sbin/nologin -M rsync

id rsync

3.生成rsyncd.conf配置文件

vi /etc/rsyncd.conf 放入事先准备的配置。man rsync.con去查相关参数。

4.根据rsyncd.conf的auth users配置账户,远程连接的,并根据secrets file参数生成密码文件

echo "rsync_backup:oldboy">/etc/rsync.password

cat /etc/rsync.password

5.为密码文件配置全新

chmod 600 /etc/rsync.password

ls -l /etc/rsync.password

6.创建共享的目录,并授权rsync服务管理

mkdir /backup -p

chown -R rsync.rsync /backup

如果没有/backup目录,就会chdir failed

7.启动rsync服务并检查

rsync --daemon

ps -ef|grep rsync|grep -v grep

lsof -i :873

8.加入开机自启动

echo "/usr/bin/rsync --daemon" >>/etc/rc.local

tail -1 /etc/rc.local

(over)

排错:

1.输出

2.日志tail /var/log/rsync.log

本文转自sandshell博客51CTO博客,原文链接http://blog.51cto.com/sandshell/1952198如需转载请自行联系原作者

sandshell

你可能感兴趣的文章
员工的不幸?还是公司的悲哀?
查看>>
python 常用的模块 optparse与ConfigParser
查看>>
C++ 对象的内存布局(下)
查看>>
P2P系统仿真: oversim+INET+omnetPP
查看>>
[Unity3d]小地图的制作
查看>>
频繁变化的表无效索引造成的热点块争用
查看>>
Exchange2003 反垃圾邮件之一
查看>>
The page cannot be displayed
查看>>
三层交换VLAN配置
查看>>
监控运维系统实施方案--监控对象信息收集阶段
查看>>
WINDOWS和LINUX下带时间的PING包监控脚本
查看>>
RHEL6入门系列之九,常用命令2
查看>>
Exchange数据保护最佳实践
查看>>
突破360防黑加固添加用户
查看>>
数据仓库建模方法初步
查看>>
Active Directory 回收站配置篇
查看>>
ubuntu 11.10 体验
查看>>
MS UC 2013-0-虚拟机-标准化-部署-2-模板机-制作-5
查看>>
隐藏nginx、apache与php版本号
查看>>
【STM32 .Net MF开发板学习-08】远程PLC读写控制
查看>>