Машины Linux могут потребовать административного вмешательства бесчисленными способами, но без входа в них вручную, как бы вы узнали об этом? Вот как настроить электронную почту, чтобы получать уведомления, когда ваши машины хотят нежной любви и внимания.
Конечно, эта техника предназначена для реальных серверов, но если у вас дома стоит Linux-система, работающая как домашний сервер, вы также можете использовать ее там. На самом деле, поскольку многие домашние интернет-провайдеры блокируют обычную исходящую электронную почту, вы можете найти эту технику отличным способом гарантировать, что вы по-прежнему получаете административные электронные письма, даже с ваших домашних серверов.
обзор
Конфигурирование возможности отправки электронной почты для машины сразу дает нам результат, что многие проблемы администрирования системы и критические предупреждения будут автоматически отправлены назначенному администратору этой системы. Наиболее примечательным примером является то, что ошибки выполнения заданий cron попадают в эту категорию и поэтому уведомят администратора о том, что возникла проблема с запланированными заданиями, такими как резервное копирование, как только они возникнут, включая вывод стандартной ошибки (stderr) в отчете. Мы также сможем включить электронную почту из сценариев bash.
Не волнуйтесь — обычно это не рассылает вам слишком много информации, и вы можете просто отменить ее настройку, если она станет раздражающей.
В системах на основе Debian, кроме многих очень универсальных программ, связанных с электронной почтой, есть также пакет ssmtp , который хорошо подходит, если все, что вам нужно, — это иметь агента для отправки электронной почты с использованием другого почтового сервера (MTA), без необходимости Для этого настройте всю конфигурацию postfix или sendmail.
Предпосылки и предположения
Прежде чем мы начнем, вы должны убедиться, что все эти условия выполнены:
- У вас есть SMTP-сервер, который может получать сообщения электронной почты с ваших компьютеров и отправлять их получателю (т.е. вашему корпоративному обмену или Gmail).
- У вас есть учетные данные для пользователя, который может отправлять электронную почту на этом сервере (например, почтовый ящик или учетная запись Gmail).
- Эта процедура использовалась и тестировалась на системах * Debian (Lenny, Ubuntu & Mint), поэтому, если вы не участвуете в одном из этих дистрибутивов, ваш пробег может отличаться.
- Вы увидите, что я использую VIM в качестве программы-редактора, просто потому, что я к этому привык… вы можете использовать любой другой редактор, который вам нравится.
* Он также используется и тестируется на DD-WRT , но будет рассмотрен только в будущей статье (обновление: разве не в будущем?) Из-за изменений в настройках и конфигурации, необходимых для такой встроенной платформы .
Настроить
Чтобы установить пакет ssmtp (Simple SMTP), используйте следующую команду:
sudo aptitude install ssmtp
Затем отредактируйте файл конфигурации:
sudo vim /etc/ssmtp/ssmtp.conf
Отрегулируйте и добавьте при необходимости следующие параметры:
-
root=username@gmail.com
Измените его с администратора почты на электронную почту администратора машины.
-
mailhub=smtp.gmail.com:587
Ваш почтовый сервер в нашем случае это Gmail, поэтому мы должны указать порт 587, для обычных SMTP-серверов это обычно не требуется.
-
hostname=username@gmail.com
Обычно имя машины автоматически заполняется при настройке пакета, если на машине есть почтовый ящик, это должно подойти, но если его нет, или имя не совпадает с настройкой почтового ящика соответственно.
-
UseSTARTTLS=YES
Включить TLS для безопасного сеанса связи.
-
AuthUser=username
Имя пользователя отправляющего почтового ящика.
-
AuthPass=password
Пароль отправляющего почтового ящика.
-
FromLineOverride=yes
Посылает имя хоста вместо root [root@hostname.FQDN].
Чтобы поле по умолчанию (root) «from» стало именем сервера, отредактируйте файл / etc / ssmtp / revaliases :
sudo vim /etc/ssmtp/revaliases
И добавьте в него желаемый перевод, который в нашем примере Gmail будет следующим:
root:machine-name@some-domain.com:smtp.gmail.com
Невероятно, это все, что вам нужно сделать, чтобы включить способность. Отныне, машина будет отправлять вам электронные письма, когда что-то происходит.
Подтверждение настройки
Давайте проверим правильность настройки ssmtp, отправив электронное письмо:
echo "Test message from Linux server using ssmtp" | sudo ssmtp -vvv your-email@some-domain.com
«-Vvv» включает вывод многословия, так что не пугайтесь… на тот случай, если у вас возникнут какие-либо проблемы, у вас будет какой-то вывод в Google.
Если все идет хорошо, вы должны получить письмо через пару секунд.
Мы будем показывать скриптовые примеры этой установки в следующих статьях.
Пусть ваши электронные письма не будут прыгать 🙂