前言

网站经常备份好处就是遇到问题以后可以迅速的恢复,不那么被动,防止信息丢失,操作性很大。虽然搭建一个网站非常容易,但为了应对网络上各种各样的意外情况,避免自己的网站付诸东流,做好网站备份是非常有必要的。

现在邮箱接收都支持附件文件,将网站文件和数据库文件备份到我们自己的邮箱也是一种很好地备份方式,也防止备份文件丢失。

邮箱接收附件文件大小,取决于使用的邮箱服务。一般来说个人博客网站源文件,数据库文件不大,常见邮箱服务都是可以使用的。

下面开始教程,宝塔安装教程可去宝塔官网查看安装教程。

系统环境:CentOS 7.9.2009 x86_64(其他系统可参考方式,命令安装自行解决)

宝塔面板:7.9.0

安装 mailx

浏览器登录进入宝塔面板,左侧-》终端。首次使用宝塔终端,需要登录服务器,填写 root 用户密码后登录。

13-1.webp

在终端中输入以下 mailx 安装命令,回车安装。

yum install -y mailx

13-2.webp

编辑配置文件

安装完成后,编辑邮箱服务的相关配置文件。 在终端输入以下命令,然后回车进入编辑文件界面。

vim /etc/mail.rc

13-3.webp

使用键盘上下键,找到大约 69 行位置,按‘i’键输入,添加以下配置。

set from=发件人@qq.com #发送邮件后显示的邮件发送方 需要修改
set smtp=smtps://smtp.qq.com:465 #SMTP服务器的网址及端口 需要修改
set smtp-auth-user=发件人@qq.com #发送邮箱 需要修改
set smtp-auth-password=邮箱密码/SMTP授权码 #设置的邮箱密码,SMTP授权密码 需要修改
set smtp-auth=login #动作、登录 无需修改
set ssl-verify=ignore #ssl验证忽略 无需修改
set nss-config-dir=/etc/pki/nssdb #证书存放目录 无需修改

请将配置按要求修改为自己所使用的邮箱服务配置。服务器需要开启 465 端口。

13-4.webp

13-5.webp

配置修改完成后,按 Esc 键,输入:wq回车保存退出编辑界面。

测试发送邮件

在终端输入发送测试邮件命令,需要修改收件人邮箱,回车执行。

echo "这是一封测试邮件" | mail -s "邮件主题" 收件人@qq.com

13-6.webp

查看邮箱是否收到测试邮件。

13-7.webp

如果发现终端报以下错误(但没有影响收件),没有错误请跳过。

Error in certificate: Peer's certificate issuer has been marked as not trusted by the.

13-8.webp

Ctrl+C结束命令后,修改邮箱服务配置文件,将set ssl-verify=ignore修改为set ssl-verify=strict后保存退出(编辑方法同上)。

13-9.webp

修改完成后在终端输入以下命令。

获取邮件服务器证书

echo   -n " " |  openssl s_client -connect smtp.qq.com:465 | sed -ne  '/-BEGIN CERTIFICATE-/,/-END CERTIFIICATE-/p'  >  /etc/pki/nssdb/qq.crt

把证书添加到受信任表

certutil    -A    -n   'yeah'    -t    "P,P,P"    -d    /etc/pki/nssdb    -i    /etc/pki/nssdb/qq.crt

注:如果是 163 或者其他邮箱服务器请将smtp.qq.com改为smtp.163.comqq.crt改为163.crt 以此类推。

命令执行完成后,重新执行发送测试邮件命令,不在报错。

13-10.webp

宝塔定时任务

左侧-》计划任务

首先按自己需求(计划任务执行时间,保留文件数量等)添加网站和数据库源文件备份任务。

13-11.webp

然后添加shell脚本任务,在脚本内容中添加以下脚本命令,修改收件人为自己的邮箱。

#!/bin/bash
cd /www/backup/site
for file in $(ls *)
do
  str="${str} -a ${file}"
done
echo "主人,今天的网站备份又到了哦,请注意查收!" | mail -s "网站备份" $str 2502393029@qq.com

13-12.webp

执行时间可按需求,晚于网站,数据库备份任务执行时间。

数据库备份和网站备份一样需要再添加一次计划任务,将cd /www/backup/site 修改为cd /www/backup/database数据库备份文件所在目录即可,参考改一下邮件主题,和内容信息。

计划任务添加完成后,可先执行网站,数据库源文件备份任务,再执行网站,数据库邮箱shell脚本备份任务,然后前往邮箱查看文件是否收到,文件过大,邮件会有延迟。

13-13.webp

13-14.webp

注:如果有报错或收不到邮件情况,请仔细检查命令,配置文件是否有误,或者查看脚本执行日志进行排查。

转载自梦繁星博客:https://blog.emoao.com/13.html

如果问题请在评论区留言。