Отправка сообщений Syslog на почту |
[исправить] |
Возникла необходимость рассылать некоторые уведомления из Syslog-a на почту. К
сожалению такой функциональности по умолчанию в systlg не было. Порывшись в
интернете нашел два способа решения проблемы.
замена Syslog на Rsyslog с использованием модуля ommail
Написание скрипта для крона, который будет отслеживать изменения в логах с
дальнейшей отправкой.
Ни один из методов не показался интересным, поэтому вернулся к руководству.
В руководстве наткнулся на следующее:
The action field of each line specifies the action to be taken when the
selector field selects a message. There are five forms:
A vertical bar ("|"), followed by a command to pipe the selected messages to.
То есть, "можно перенаправить сообщение на команду".
В связи с чем появилась первая попытка
console.* |mail -s "info" "user@mail.net"
Закончившаяся фиаско, так как сообщения накапливались в буфере и отправка
происходила только после рестарта самого сислога.
После чего было решено использовать простой скрипт
console.* /var/log/console.log
console.* |/home/user/toor/sysmail.sh
где сам sysmail.sh
#!/usr/local/bin/bash
read data
echo $data | mail -s "info" "user@mail.net"
В итоге получаем следующее.
События записываются в файл на системе и отсылаются на почту user@mail.net с темой info.
|
|
|
|
Раздел: Корень / Администратору / Система / Syslog, ведение логов |
1.1, NA (?), 11:31, 22/08/2013 [ответить]
| +/– |
#!/usr/local/bin/bash
Сколько бздешников не учи все они полные пути пишут. Универсальные способы работающие везде не знают:
#!/usr/bin/env bash
| |
|
2.5, Аноним (-), 00:11, 27/08/2013 [^] [^^] [^^^] [ответить]
| +/– |
Это от того, что ты сам не особо в теме, а других учишь. Выглядит это довольно глупо. Вот поэтому люди тебя и не слушают. Прошерсти современные дистрибутивы линукс на предмет использования env и поучи дистростроителей жить. О результатах не забудь написать сюда.
| |
|
1.4, Michael Shigorin (ok), 01:34, 26/08/2013 [ответить]
| +/– |
Субъективно при возникновении подобных хотелок действительно лучше сразу смотреть на rsyslog.
На линуксе с не сильно древними coreutils для подкрутки буфера до строчного можно воспользоваться запуском mail(1) из-под stdbuf(1).
| |
1.6, pavlinux (ok), 15:21, 28/08/2013 [ответить]
| +/– |
Не, сислог уже отстой, rsyslog рулит!
cat /etc/rsyslog.d/sshd.conf
$ModLoad ommail
$ActionMailSMTPServer 127.0.0.1
$ActionMailFrom syslog@ibm.com
$ActionMailTo pavlinux@ibm.com
$template mailSubject,"SSH Login: %hostname%"
$template mailBody,"RSYSLOG Achtung!!!\r\n'%msg%'"
$ActionMailSubject mailSubject
$ActionExecOnlyOnceEveryInterval 60
if $programname == 'sshd' then :ommail:;mailBody
#### Или в отдельный файл.
# if $programname == 'sshd' then /var/log/sshd.log
| |
|
2.8, Гость (?), 01:13, 21/09/2013 [^] [^^] [^^^] [ответить]
| +/– |
Под фрей не вариант:
R-deps: eventlog-0.2.12 gettext-0.18.3 glib-2.36.3 libffi-3.0.13 libiconv-1.14_1 openssl-1.0.1_8 pcre-8.33 perl-5.14.4 python-2.7_1,2 python2-2_1 python27-2.7.5_3
Нравится идея ставить питон и перл на каждого хоста/гостя?
| |
|
|