阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

rsync 系统用户/虚拟用户 备份web服务器数据及无交互定时推送备份

213次阅读
没有评论

共计 3518 个字符,预计需要花费 9 分钟才能阅读完成。

rsync 系统用户 / 虚拟用户 备份 web 服务器数据及无交互定时推送备份

一、服务环境

(1),WEBserver(192.168.10.130);BACKserver(192.168.10.129)

(2),BACKserver 服务器部署,安装所需软件,并启动

rsync 系统用户 / 虚拟用户 备份 web 服务器数据及无交互定时推送备份

rsync 系统用户 / 虚拟用户 备份 web 服务器数据及无交互定时推送备份

rsync 系统用户 / 虚拟用户 备份 web 服务器数据及无交互定时推送备份

(3),建立系统备份用户 backup(web 服务器与备份服务器均建立用户)

[root@backsever ~]# useradd backup; echo backup:123456 |chpasswd
[root@backsever ~]# id backup
uid=1001(backup) gid=1001(backup) groups=1001(backup)

[root@backsever ~]# useradd backup; echo backup:123456 |chpasswd
[root@backsever ~]# id backup
uid=1001(backup) gid=1001(backup) groups=1001(backup)

(4),开放 web 服务器备份目录权限让 backup 用户操作:

[root@webserver ~]# setfacl -R -m default:backup:rwx /var/www/html/
[root@webserver ~]# setfacl -R -m user:backup:rwx /var/www/html/
[root@webserver ~]# getfacl /var/www/html/
getfacl: Removing leading ‘/’ from absolute path names
# file: var/www/html/
# owner: root
# group: root
user::rwx
user:backup:rwx
group::r-x

mask::rwx

other::r-x
default:user::rwx
default:user:backup:rwx
default:group::r-x
default:mask::rwx
default:other::r-x

(5),建立存储服务存放目录 /web-back/,并开放权限给备份用户使用

[root@backsever ~]# mkdir /web-back/
[root@backsever ~]# chown backup:backup /web-back/

(6)复制 web 服务器 /boot/ 目录下所有文件到 /var/www/html/ 目录下进行推送测试

rsync 系统用户 / 虚拟用户 备份 web 服务器数据及无交互定时推送备份

(7),rsync -avz –delete /var/www/html/ backup@192.168.10.129:/web-back/ 命令推送测试

rsync 系统用户 / 虚拟用户 备份 web 服务器数据及无交互定时推送备份

二,在备份服务器上建立虚拟用户,并建立用户和密码文件进行定时推送备份。

(1)修改 /etc/rsyncd.conf 配置文件,末尾添加以下内容:

uid = root                   # 运行进程的身份    

gid = root                 #运行进程的组            

address =192.168.10.129       # 监听 IP(备份服务器)

port =873      # 监听端口                        

hosts allow =192.168.10.0/24                # 允许同步客户端的 IP 地址,可以是网段,或者用 * 表示所有    

use chroot = yes       # 是否囚牢,锁定家目录,rsync 被黑之后,黑客无法再 rsync 运行的家目录之外创建文件,选项设置为 yes

max connections =5             # 最大连接数

pid file =/var/run/rsyncd.pid      # 进程 PID,自动生成

lock file =/var/run/rsyncd.lock     # 指 max connectios 参数的锁文件

log file =/var/log/rsyncd.log          # 日志文件位置

motd file =/etc/rsyncd.motd         # 客户端登陆之后弹出的消息

[wwwroot]       # 共享模块名称                    

path =/web-back/       # 备份路径      

comment = used for web-data root    # 描述

read only = false        # 设置服务端文件读写权限            

list = yes        # 是否允许查看模块信息                            

auth users = rsyncuser            #备份的用户,和系统用户无关,建立的虚拟备份用户              

secrets file = /etc/rsync.passwd       # 存放用户的密码文件,格式是  用户名:密码

rsync 系统用户 / 虚拟用户 备份 web 服务器数据及无交互定时推送备份

(2), 创建提示文件和用户密码

[root@backsever ~]# echo “Welcome to Backup Server” > /etc/motd
[root@backsever ~]# vim /etc/rsync.passwd

rsyncuser:password123

[root@backsever ~]# chmod 600 /etc/rsync.passwd      #密码文件权限必须是 600 或 700

(3)启动服务

[root@backsever ~]# systemctl start xinetd.service
[root@backsever ~]# systemctl enable xinetd
[root@backsever ~]# rsync –daemon –config=/etc/rsyncd.conf           #让 rsync 服务从配置文件启动
[root@backsever ~]# ps aux | grep rsync
root 1926 0.0 0.0 114652 316 ? Ss 07:02 0:00 rsync –daemon
root 2920 0.0 0.0 112660 972 pts/0 R+ 07:46 0:00 grep –color=auto rsyn

[root@backsever ~]# kill -9 1926 #杀掉 rsync 服务进程
[root@backsever ~]# ps aux | grep rsync
root 2922 0.0 0.0 112660 968 pts/0 R+ 07:48 0:00 grep –color=auto rsyn
[root@backsever ~]# rsync –daemon –config=/etc/rsyncd.conf #重新从配置文件读取启动
[root@backsever ~]# ps aux | grep rsync #查看已启动的 rsync 进程
root 2924 0.0 0.0 114652 504 ? Ss 07:48 0:00 rsync –daemon –config=/etc/rsyncd.conf
root 2926 0.0 0.0 112660 968 pts/0 R+ 07:48 0:00 grep –color=auto rsyn

(4),在 web 服务器上建立备份用户密码文件,使推送备份无需输入密码运行

[root@webserver ~]# vim /etc/rsync.passwd
[root@webserver ~]# cat !$
cat /etc/rsync.passwd
password123

[root@webserver ~]# chmod 600 /etc/rsync.passwd #密码文件权限必须改为 600 或 700 不然无法读取

(5)web 服务器运行命令:rsync -avz –delete  /var/www/html rsyncuser@192.168.10.129::wwwroot –password-file=/etc/rsync.passwd 进行推送备份测试

rsync 系统用户 / 虚拟用户 备份 web 服务器数据及无交互定时推送备份

(6),测试成功,说明配置没问题,写入定时任务自动执行

[root@webserver ~]# vim autobackup.sh
[root@webserver ~]# cat !$
cat autobackup.sh
#!/bin/bash
rsync -avz –delete /var/www/html rsyncuser@192.168.10.129::wwwroot –password-file=/etc/rsync.passwd         #–password-file 必须要指定 web 服务器密码文件绝对路径,否则无法读取!!!!

echo “0 2 * * * sh /root/autoback.sh &” >> /var/spool/cron/root #制定定时任务,定时执行推送备份脚本

本文永久更新链接地址 :https://www.linuxidc.com/Linux/2018-05/152369.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3518字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中