Различия
Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
wiki:отравка_почты_для_root_на_внешний_ящик [2015/08/21 17:18] |
wiki:отравка_почты_для_root_на_внешний_ящик [2015/09/04 14:16] (текущий) [postfix] |
||
|---|---|---|---|
| Строка 2: | Строка 2: | ||
| Задался вопросом а как отслеживать события на подконтрольных серверах, вроде отвалившегося раздела из RAID-массива. По умолчанию система отправляет системные сообщения на почту root, т.е. в файл /var/mail/root. Нам же нужно, чтобы почту уходила не внешний ящик, информацию на котором мы сразу увидим. | Задался вопросом а как отслеживать события на подконтрольных серверах, вроде отвалившегося раздела из RAID-массива. По умолчанию система отправляет системные сообщения на почту root, т.е. в файл /var/mail/root. Нам же нужно, чтобы почту уходила не внешний ящик, информацию на котором мы сразу увидим. | ||
| + | Решить вопрос можно двумя (как минимум) путями: | ||
| + | |||
| + | ===== postfix ===== | ||
| Задача разбивается на 2 части: | Задача разбивается на 2 части: | ||
| Строка 11: | Строка 14: | ||
| <code> | <code> | ||
| sudo su | sudo su | ||
| - | echo "root: my@email.ru" > /etc/aliases | + | echo "root: my@email.ru" >> /etc/aliases |
| newaliases</code> | newaliases</code> | ||
| Вот и все, почта для root будет падать на наш внешний почтовый ящик. Проверил на ВМ, имитацией отказа одного из разделов в RAID1. | Вот и все, почта для root будет падать на наш внешний почтовый ящик. Проверил на ВМ, имитацией отказа одного из разделов в RAID1. | ||
| + | ===== ssmtp ===== | ||
| Также, вместо postfix, можно воспользоваться утилитой ssmtp. | Также, вместо postfix, можно воспользоваться утилитой ssmtp. | ||
| - | ===== Установка ===== | + | ==== Установка ==== |
| - | ''sudo apt-get install ssmtp'' | + | <code> |
| + | sudo apt-get install ssmtp | ||
| + | </code> | ||
| ==== Настройка ==== | ==== Настройка ==== | ||
| Редактируем файл **/etc/ssmtp/ssmtp.conf** | Редактируем файл **/etc/ssmtp/ssmtp.conf** | ||
| - | ''root= | + | <code> |
| + | root= | ||
| mailhub=smtp.yandex.ru:465 # SMTP-сервер яндекса | mailhub=smtp.yandex.ru:465 # SMTP-сервер яндекса | ||
| UseTLS=Yes | UseTLS=Yes | ||
| Строка 31: | Строка 38: | ||
| AuthPass=pass # Пароль | AuthPass=pass # Пароль | ||
| hostname=localhost | hostname=localhost | ||
| - | FromLineOverride=YES'' | + | FromLineOverride=YES |
| + | </code> | ||
| + | |||
| + | Настраиваем отправителей писем: | ||
| - | Настраиваем отправителей писем | ||
| Редактируем файл **/etc/ssmtp/revaliases** | Редактируем файл **/etc/ssmtp/revaliases** | ||
| - | ''root:почта@с_которой_отсылаем:smtp.yandex.ru:465 | + | <code> |
| - | user:почта@с_которой_отсылаем:smtp.yandex.ru:465'' | + | root:почта@с_которой_отсылаем:smtp.yandex.ru:465 |
| + | user:почта@с_которой_отсылаем:smtp.yandex.ru:465 | ||
| + | </code> | ||
| - | Измените user на пользователя, который | + | Измените user на пользователя, который заведен в вашей системе. |
| Проверим настройки, отправив тестовое письмо | Проверим настройки, отправив тестовое письмо | ||
| - | ''echo test | sendmail -v почта@куда_отсылаем'' | + | <code> |
| + | echo test | sendmail -v почта@куда_отсылаем | ||
| + | </code> | ||
| Теперь вы можете отправлять почту из консоли и скриптов. | Теперь вы можете отправлять почту из консоли и скриптов. | ||
| Строка 48: | Строка 61: | ||
| Чтобы заставить ssmtp работать и с системной почтой, выполним следующие действия: | Чтобы заставить ssmtp работать и с системной почтой, выполним следующие действия: | ||
| - | ''sudo rm /usr/sbin/sendmail'' | + | <code> |
| - | ''sudo nano /usr/sbin/sendmail'' | + | sudo rm /usr/sbin/sendmail |
| + | </code> | ||
| + | <code> | ||
| + | sudo nano /usr/sbin/sendmail | ||
| + | </code> | ||
| Пишем следующее: | Пишем следующее: | ||
| - | '' | + | <code> |
| #!/bin/sh | #!/bin/sh | ||
| sed -r \ | sed -r \ | ||
| -e 's/^From: .*$/From: Server <почта@с_которой_отсылаем>/' \ | -e 's/^From: .*$/From: Server <почта@с_которой_отсылаем>/' \ | ||
| -e 's/^To: .*$/To: почта@куда_отсылаем/' \ | -e 's/^To: .*$/To: почта@куда_отсылаем/' \ | ||
| - | | /usr/sbin/ssmtp 'почта@куда_отсылаем' '' | + | | /usr/sbin/ssmtp 'почта@куда_отсылаем' |
| + | </code> | ||
| Даём права на исполнение | Даём права на исполнение | ||
| - | ''sudo chmod +x /usr/sbin/sendmail '' | + | <code> |
| + | sudo chmod +x /usr/sbin/sendmail | ||
| + | </code> | ||
| <note warning>Обратите внимание, теперь почта будет отправляться только на адрес, который указали в /usr/sbin/sendmail, | <note warning>Обратите внимание, теперь почта будет отправляться только на адрес, который указали в /usr/sbin/sendmail, | ||
| Строка 65: | Строка 85: | ||
| </note> | </note> | ||
| - | {{tag>отправка_почты_для_root_на_внешний_ящик}} | + | {{tag>отправка_почты_для_root_на_внешний_ящик ssmtp}} |