rsync的自动脚本实现方案(非rsyncd服务)

1、前言

rsyncd的方式笔者认为方便,但会在系统留下一个被攻击的服务点,笔者认为用自动函数+普通用户的方式较安全,故而写下此文备用。

2、实现

2.1、环境

rsyncSer:

ipaddress=10.168.0.100

client:

ipaddress=10.168.0.8

2.2、yum的安装

In rsyncSer & client

1
yum -y  install  rsync

2.3、服务端配置

In rsyncSer:

1
2
3
4
5
mkdir  /files
chmod  700 -R  /files/
useradd  rsuser
echo  rspw |  passwd  --stdin rsuser
setfacl -m u:rsuser:r-x  /files

以上设置可保障资料的安全,避免其他非root用户获取。

2.4、客户端设置

In client:

2.4.1、创建脚本文件夹

1
mkdir  ~ /script

2.4.2、创建脚本

vim编辑~/script/rs.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/bash
souUser=rsuser  #服务端创建的用户名
souPwd=rspw  #服务端创建的密码
souIP=10.168.0.100  #服务端ip address
souDir= /files/ #服务端的路径
desDir= /files  #客户端的路径
auto_rsync () {
     expect -c " set  timeout -1;
                 spawn  rsync  -av --delete $2@$3:$4 $5;
                 expect {
                     *assword:* {send -- $1\r;
                                  expect {
                                     *denied* { exit  2;}
                                     eof
                                  }
                     }
                     eof         { exit  1;}
                 }
                 "
     return  $?
}
auto_rsync $souPwd $souUser $souIP $souDir $desDir

以上相当于手动执行:

1
rsync  -av  --delete rsuser@10.168.0.100: /files/ /files

2.4.3、安全设置

1
chmod  700 -R ~ /script

2.4.4、定时任务

1
crontab  -e

加入内容

1
* /15  * * * * sh ~ /script/rs .sh









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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值