Установить ssmtp:
sudo pacman -S ssmtp
Отредактировать файл конфигурации ssmtp
sudo nano /etc/ssmtp/ssmtp.conf
Удалить все из /etc/ssmtp/ssmtp.conf и вставляем это:
mailhub=smtp.gmail.com:587
UseTLS=YES
UseSTARTTLS=YES
hostname=ubuntu
authuser=******@gmail.com
authpass=***********
FromLineOverride=YES
Debug=YES
где:
smtp.gmail.com:587 - реквизиты SMTP Gmail (не менять, если ящик на Gmail);
UseTLS=YES, UseSTARTTLS=YES, FromLineOverride=YES - должно присутствовать для авторизации на Gmail;
hostname=ubuntu - имя хоста отправителя;
authuser=******@gmail.com - почтовый ящик отправителя;
authpass=*********** - пароль к почтовому ящику отправителя.
Отредактировать файл revaliases
sudo nano /etc/ssmtp/revaliases
Удалить все из /etc/ssmtp/revaliases и вставляем это:
username:mymailbox@gmail.com:smtp.gmail.com:587
где:
username - имя пользователя в системе (изменить на свое значение);
mymailbox@gmail.com - почтовый ящик отправителя на Gmail (изменить на свое значение);
smtp.gmail.com:587 - реквизиты SMTP Gmail (не менять, если ящик на Gmail).
Установить пакет sendmail из AUR.
Смотрим, куда ведет mail
whereis mail
Видим строку следующего вида:
mail: /usr/bin/mail.mailutils /usr/bin/mail /etc/mail /usr/share/man/man1/mail.1.gz
Проверить симлинк:
cd /usr/sbin && ls -l | grep sendmail
Видим что-то вида:
lrwxrwxrwx 1 root root 5 фев 18 2017 sendmail -> ssmtp
Отправка почты из консоли
Синтаксис такой:
echo "Тестовое сообщение" | ssmtp -v -s <получатель>@domain.com
Пример:
echo "Это тестовое письмо из консоли" | ssmtp -v -s mymail@inbox.ru
Вывод консоли примерно такой:
[<-] 220 smtp.gmail.com ESMTP p128sm754712lfb.32 - gsmtp
[->] EHLO ubuntu
[<-] 250 SMTPUTF8
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
[->] EHLO ubuntu
[<-] 250 SMTPUTF8
[->] AUTH LOGIN
[<-] 334 VXBlcm5hbXU6
[->] bXkuYjB0Y2tiYHhAZ21haWwuY29t
[<-] 334 UGFzc3vvcmQ6
[<-] 235 2.7.0 Accepted
[->] MAIL FROM:<my.mail@gmail.com>
[<-] 250 2.1.0 OK p128sm754712lfb.32 - gsmtp
[->] RCPT TO:<mymail@inbox.ru>
[<-] 250 2.1.5 OK p128sm754712lfb.32 - gsmtp
[->] RCPT TO:</home/box/file@ubuntu>
[<-] 250 2.1.5 OK p128sm754712lfb.32 - gsmtp
[->] DATA
[<-] 354 Go ahead p128sm754712lfb.32 - gsmtp
[->] Received: by ubuntu (sSMTP sendmail emulation); Fri, 12 Aug 2016 03:34:46 -0500
[->] From: "box" <my.mail@gmail.com>
[->] Date: Fri, 12 Aug 2016 03:34:46 -0500
[->] Это тестовое письмо из консоли
[->]
[->] .
[<-] 250 2.0.0 OK 1470990888 p128sm754712lfb.32 - gsmtp
[->] QUIT
[<-] 221 2.0.0 closing connection p128sm754712lfb.32 - gsmtp
Отправляем текстовое сообщение из файла
Создаем файл и пишем в него текст сообщения
echo "Тестовое сообщение" > /home/<имя пользователя>/message
Отправляем текст из файла
ssmtp <получатель>@domain.com < /home/<имя пользователя>/message
Установим планировщик cronie:
sudo pacman -S cronie
Запустить и добавить в автозагрузку:
sudo systemctl start cronie.service
sudo systemctl enable cronie.service
Создать символьную ссылку
ln /etc/systemd/system/multi-user.target.wants/cronie.service -> /usr/lib/systemd/system/cronie.service.
Поправить crontab:
crontab -e
Проверить crontab:
crontab -l
Памятка для crontab
.---------------- минута (0 - 59)
| .-------------- час (0 - 23)
| | .------------ день месяца (1 - 31)
| | | .---------- месяц (1 - 12) ИЛИ jan,feb,mar ...
| | | | .-------- день недели (0 - 6) (Воскресенье=0 или 7) ИЛИ sun,mon,tue ...
| | | | |
* * * * * команда для выполнения
Самые распространенные примеры расписаний cron заданий:
* * * * * «Запуск каждую минуту»
*/5 * * * * «Запуск каждые 5 минут»
*/30 * * * * «Запуск каждые 30 минут»
0 * * * * «Запуск каждый час»
0 */3 * * * «Запуск каждые 3 часа»
0 13 * * * «Запуск каждый день в 13:00»
30 2 * * * «Запуск каждый день в 2:30»
0 0 * * * «Запуск каждый день в полночь»
0 0 * * 0 «Запуск каждое Воскресенье»
0 0 * * 1 «Запуск каждый Понедельник»
0 0 1 * * «Запуск в первый день каждого месяца»
0 0 1 1 * «Запуск каждый год первого Января»
Команды для создания и отправки текста из файла
Создаем файл и пишем в него текст сообщения
echo "Тестовое сообщение" > /home/<имя пользователя>/message
Отправляем текст из файла
ssmtp <получатель>@domain.com < /home/<имя пользователя>/message
Комментариев нет:
Отправить комментарий