rsync全网备份项目
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,系统版本: CentOS 7内核版本: 3.10.0-957假设领导给你一个rsync全网备份项目1、基本备份要求已知3台服务器主机名分别为web01、backup 、nfs01,主机信息见下表:服务
千家信息网最后更新 2024年11月26日rsync全网备份项目
系统版本: CentOS 7
内核版本: 3.10.0-957
假设领导给你一个rsync全网备份项目
1、基本备份要求
已知3台服务器主机名分别为web01、backup 、nfs01,主机信息见下表:
服务器说明 | IP(NAT) | 内网IP(NAT_LAN) | 主机名称 |
---|---|---|---|
nginx web服务器 | 10.0.0.7/24 | 172.16.1.7/24 | web01 |
NFS存储服务器 | 10.0.0.31/24 | 172.16.1.31/24 | nfs01 |
rsync备份服务器 | 10.0.0.41/24 | 172.16.1.41/24 | backup |
要求:每天晚上00点整在Web服务器上打包备份系统配置文件、网站程序目录及访问日志并通过rsync命令推送备份服务器backup上备份保留。
- 思考分析该项目的作用
- 做一个简短的实施方案
- 跟领导对接核实方案
- 和需要对接的部门开会沟通
实施方案流程
- 创建服务器的备份目录 ==/backup==
要备份的系统配置文件
- 定时任务的配置文件 ==(/var/spool/cron/root)==
- 开机自启动配置文件 ==(/etc/rc.local)==
- 防火墙iptables配置文件 ==(/etc/sysconfig/iptables)==
- 日常脚本的目录 ==(/server/scripts)==
- web服务器站点目录 ==(/var/html/www)==
- web服务器访问日志 ==(/app/logs)==
- 非备份服务器保留打包后的7天内数据
- 备份服务器保留周 1 及180以内的数据
- 确保备份数据尽量完整正确,在本机创建校验包,服务器上校验数据完整性.
- 把备份数据结果通过==email==发送给系统管理员邮箱中
配置服务端
第一步:查看rsync服务 查看rsync服务有没有安装 rpm -qa rsync 没有rsync服务就安装一下 yum install -y rsync 创建备份目录 mkdir /backup第二部:编辑服务配置文件uid = rsync # 虚拟用户 --安全性gid = rsyncport = 873 # 端口号fake super # 伪装超级用户 -- 管理员use chroot = no # 安全有关参数max connections = 200 # 最大连接数量timeout = 300 # 等待用户时间pid file = /var/run/rsyncd.pid # 服务运行状态的进程号lock file = /var/run/rsync.lock # 结合 max connections 控制最大链接数log file = /var/log/rsyncd.log # 服务运行日志信息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 # 认证用户密码文件[backup] # 模块信息 (标识一个目录)comment = "welcome to backup" # 模块注释说明path = /backup # 模块指向目录所在第三部:根据配置文件需求创建所需1. useradd -M -s /sbin/nologin rsync # 创建虚拟用户2. echo "rsync_backup:oldboy123" >/etc/rsync.password #创建认证用户密码3. chmod 600 /etc/rsync.password # 密码文件设置安全权限 ★4. mkdir /backup # 创建备份数据目录5. chown rsync.rsync /backup/ # 修改文件属主属组为配置文件指定用户6. systemctl start rsyncd # 启动服务程序7. systemctl enable rsyncd # 设置服务程序开机自动启动 第四步: 配置邮件服务1. yum install -y mailx2. vim /etc/mail.rc # 添加下面的内容.随便位置set from=QQ号码@qq.com # 邮箱随意.以QQ为例set smtp=smtp.qq.comset smtp-auth-user=QQ号码@qq.comset smtp-auth-password=QQ设置里的第三方授权码set smtp-auth=login3. systemctl restart postfix.service # 重启邮件服务4. echo "hello" | mailx -s "test" qq号@qq.com
配置客户端
第一步: 进行备份数据测试rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup第二部: 实现免交互备份数据echo oldboy123 >/etc/rsync.password # 创建认证用户密码文件chmod 600 /etc/rsync.password # 为密码文件设置一个安全权限rsync -avz /oldboy/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password # 实现免交互传输
编写脚本
web网站服务器
web客户端脚本编写:mkdir -p /server/scripts mkdir /etc/sysconfig/iptablesmkdir -p /var/html/www mkdir /app/logs # 环境准备cd /server/scriptsvim web_backup.sh#!/bin/baship=$(hostname -i)name=$(hostname)date=$(date +%F_%w -d "-1 day")mkdir -p /backup/$ip# 打包配置文件tar zcnPf /backup/$ip/${name}_config_${date}.tar.gz /var/spool/cron/root /etc/rc.local /server/scripts &>/dev/null# 打包站点目录tar zcnPf /backup/$ip/${name}_www_${date}.tar.gz /var/html/www &>/dev/null# 打包网站访问日志tar zcnPf /backup/$ip/${name}_log_${date}.tar.gz /app/logs &>/dev/null# 创建数据检验信息md5sum $(find /backup/$ip -type f -mmin -15) >/backup/md5_${name}.log# 上传数据到备份服务器rsync -avz /backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password# 删除本体超过7天的数据包find /backup -type f -mtime +7 -delete &> /dev/nullchmod 700 /server/scripts/web_backup.shcrontab -e # 加入定时任务里0 0 * * * /bin/bash /server/scripts/web_backup.sh
nfs存储服务器
nfs客户单脚本编写:mkdir -p /server/scripts mkdir /etc/sysconfig/iptablescd /server/scriptsvim nfs_backup.sh#!/bin/baship=$(hostname -i)name=$(hostname)date=$(date +%F_%w -d "-1 day")mkdir -p /backup/$ip# 打包配置文件tar zcnPf /backup/$ip/${name}_config_${date}.tar.gz /var/spool/cron/root /etc/rc.local /server/scripts &>/dev/null# 创建数据检验信息md5sum $(find /backup/$ip -type f -mmin -15) >/backup/md5_${name}.log# 上传数据到备份服务器rsync -avz /backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password# 删除本体超过7天的数据包find /backup -type f -mtime +7 -delete &> /dev/nullchmod 700 /server/scripts/nfs_backup.shcrontab -e # 加入定时任务里0 0 * * * /bin/bash /server/scripts/nfs_backup.sh
backup备份服务器
backup服务端脚本编写mkdir -p /server/scriptsvim /server/scripts/delete.sh#!/bin/bashdate=$(date +%F)mkdir -p /backup# 校验数据完整性md5sum $(find /backup -type f -name "*.log") -c >/tmp/check_md5.txt# 邮件告知管理员mailx -s "$date 校验信息" qq号@qq.com
服务
备份
服务器
数据
文件
配置
信息
目录
用户
密码
脚本
安全
任务
日志
模块
系统
认证
主机
客户
方案
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
昌平区多功能网络技术哪里好
联想服务器加硬盘不能识别
谈谈你对大数据库技术的认识
大学生网络技术是干什么的
村内网络安全宣传
五年级手抄报网络安全
科技金融互联网金融服务
如何上传网络安全训练营
数据库字段插入
湖南服务器电源哪个品牌好
软件开发岗位招聘需求
胶州平台软件开发推荐
excel 服务器版
利他互联网科技有限公司
幼儿园网络安全小组名单及职责
access数据库注释
战地1哪个服务器
手机版方舟服务器价格
二次安防数据库
php分片数据库
无锡 网络安全
塑胶材料性能数据库
4.29首都网络安全日安全知识
为什么苹果一直连接服务器失败
大话手游服务器等级
数据库数据高级查询的实验报告
http请求服务器返回500
网络安全教育团课心得体会
恒大富士电梯服务器密码
php分片数据库