Просмотрено
Рубрика: Shell

Поиск в логах Exim

Поиск в логах Exim

Часто бывает, что кто-то просит найти письмо такого-то пользователя, которое было отправлено позавчера, например. Можно перерывать логи руками, а можно воспользоваться скриптом, который любезно прислал один из читателей: #!/bin/sh to_grep=»$*» if [ ${#to_grep} = 0 ] then echo » STOP: Where is search string? » > /dev/stderr exit 1 fi tmp_major_filename=»/tmp/searchmajortmp$$» rm -f «${tmp_major_filename}» # Мониторим Ctrl+C чтобы не оставлять хвостов из временных файлов. trap ‘rm -f ${tmp_major_filename} ;echo ; exit 13’ TERM INT exlog_log=»/var/log/exim/mainlog» if [ ! -r «${exlog_log}»…

Читать далее Читать далее

Exim: автоблокировка спам-хостов

Exim: автоблокировка спам-хостов

Несмотря на то, что моя конфигурация Exim вышла довольно удачной, некоторое количество спама через нее все же проходит. Как правило, сыпется он с одних и тех же спам-серверов, которые можно блокировать. Однако, каждый раз ходить на сервер через некоторое время становится лениво, потому автоматизируем процесс: #!/bin/sh for file in `find /var/mail/yourdomain.com/spamreport/new -type f` do cat $file | grep «Subject: block=» | sed ‘s/Subject: block=//’ >> /usr/local/etc/exim/spam-hosts done rm -f /var/mail/yourdomain.com/spamreport/new/* Осталось внести изменения в конфигурацию Exim. Добавляем в /usr/local/etc/exim/100.main.conf: hostlist…

Читать далее Читать далее

Exim: чистим базу грейлистинга

Exim: чистим базу грейлистинга

После публикации статьи про экзим принялись мне знакомые, отстроившие по ней сервера, говорить, мол грейлистовая база растет и конца-края ей нету. На самом деле ее вполне реально поддерживать в компактном и актуальном состоянии, в этом нам поможет простой скрипт, расположим его в каталоге /root/scripts и назовем exim-clear-greylist.sh: #!/bin/sh echo «DELETE FROM exim_greylist WHERE record_expires < now();» | /usr/local/bin/mysql -u<имя sql-пользователя> -p<пароль sql-пользователя> <название БД экзима> Теперь присвоим скрипту исполняемый бит: # chmod 700 /root/scripts/exim-clear-greylist.sh и добавим его запуск в /etc/crontab:…

Читать далее Читать далее

Мониторинг и рестарт процессов

Мониторинг и рестарт процессов

Иногда случается, что какая-то софтина ведет себя непредсказуемо и периодически падает. А т.к. часто это бывает достаточно далеко и не всегда под рукой есть Интернет (да и не всегда можно на нужную машину достучаться снаружи), приходится изобретать велосипед. Можно городить какие-либо системы мониторинга а-ля Zabbix, например, но он достаточно громоздкий и смысл в нем не всегда есть, особенно на маленьких халтурках типа офисного гейтвея у небольшой конторы. Есть у меня несколько таких гейтвеев, на одном из них периодически падает squid…

Читать далее Читать далее