Резервное копирование на электронную почту

    Это скрипт создаст резервную копию каталога /etc/astra и файла /usr/bin/astra и отправит их по электронной почте.

    Установим sendEmail

    Send Email-это маленькая программа доставки электронной почты через SMTP

    Centos:
    yum install sendemail
    Ubuntu:
    sudo apt-get install sendemail

    Создадим скрипт резервного копирования:

    #!/bin/bash
    MAILTO="my-email@gmail.com"
    FROM="astra@server.com"
    SMTPSERVER="smtp.gmail.com:587"
    SMTPLOGIN="my-email"
    SMTPPASS="password"
    
    NOW=$(date +%Y%m%d)
    BACKUP="/tmp/astra-$NOW.tar.gz"
    tar -zcf $BACKUP /etc/astra /usr/bin/astra
    
    SUBJ="$FROM backup"
    BODY="The backup was successfully completed. The backup files are attached in this email"
    
    /usr/bin/sendEmail \
        -f $FROM -t $MAILTO \
        -o message-charset=utf-8 \
        -u $SUBJ -m $BODY -a $BACKUP \
        -s $SMTPSERVER -o tls=yes -xu $SMTPLOGIN -xp $SMTPPASS
    rm -f $BACKUP

    MAILTO="куда отправляем"
    FROM="от кого (можно не менять)"
    SMTPSERVER="smtp сервер"
    SMTPLOGIN="логин"
    SMTPPASS="пароль"

    Данный скрипт сохраним под именем backup.sh в каталог /opt

    Если у вас включена 2х факторная авторизация, вам нужно создать “пароль приложения”, а затем использовать его вместо обычного пароля.

    Настроим cron (планировщик задач Linux)

    Вызовем его командой:

    sudo crontab -u root -e

    и в открывшемся файле добавим строку:

    40 2 * * * sh /opt/backup.sh > /dev/null

    не забудьте поставить в конце строки Enter (перенос строки!)

    Сохраните файл. Теперь в 2 часа 40 минут (ночью) у Вас будет создаватся резервная копия Astra которая будет отправлена на вашу электронну. почту.