Смена порта с 25 на 2525 Postfix

Добавьте в файл /etc/postfix/master.cf
следующую запись:
smtp_new inet    n       -       -       -       -       smtpd
А так же в файл /etc/services:
smtp_new 2525/tcp

и перезапустить Postfix

Монтируем /tmp noexec

После покупки/аренды сервера с установленной операционной системой как правило можно обнаружить что директория /tmp никак не защищена. Можно искать уязвимости, заливать в /tmp rootkit и пользоваться им как душа пожелает. Давайте попробуем исправить эту ситуацию.

Для начала создадим файл который будем использовать для монтирования /tmp.

cd /dev

Создайте файл размером 100Мб для директории /tmp, если Вам нужен темп большего объема, создайте с таким размером, который Вам нужен

Read the full post »

Установка mod_security в Debian Lenny

оригинал статьи тут

Данная статья содержит краткую инструкцию по установке mod_security на apache2 под управлением Debian Lenny.
Для начала нужно загрузить и установить два пакета libapache-mod-security_2.5.9-1_i386.deb mod-security-common_2.5.9-1_all.deb (они есть в unstable ветке), я предлагаю их скачать использую ссылочку, указанную на официальном сайте mod_security.

Read the full post »

парсинг конфигов bind по MX

появилась задача: выкладывать на фтп список доменов для антиспам-сервиса, которые назначили себе их MX-ы, что бы те в свою очередь его забирали и подгружали в свой сервис.

Простой скрипт (запуск по крону)  парсит конфиги bind (ось Debian) и выкладывает в хоумдир юзеру:

#!/bin/bash
tempFileName=list_for_antispamus         #имя файла со списком доменов
home_dir=/home/user    #home dir пользователя ftp
cp /dev/null /$home_dir/$tempFileName   #обнуляем предыдущий
cat /etc/bind/* | grep r1.antispamus.ru > /tmp/$tempFileName
export LINE
(
read LINE
while [ -n "$LINE" ]
do
set $LINE
read LINE
echo $1 | sed 's/.$//' >> /$home_dir/$tempFileName
done
)< /tmp/$tempFileName
chown user:user /$home_dir/$tempFileName

на выходе имеем файл со списком доменов:
Read the full post »

перезапуск сервиса при достижение порога LA

в продолжение темы

на примере nginx:

#!/bin/bash

triggerValue=15 # if the CPU use is above 90% send an email. DO NOT USE a DOT or COMMA!
tempFileName=tmp-la # some name of the temp file for the ps, grep data

uptime | sed -e ‘s/.* load average: \(.*\), \(.*\), \(.*\)/\1 \2 \3/’ | grep -v grep > /tmp/$tempFileName
export LINE
(
read LINE
while [ -n "$LINE" ]
do
set $LINE
read LINE
if [ $(echo "$1" | sed -e 's/\.[0-9]*//g’) -gt $triggerValue ]; then
/etc/init.d/nginx stop
sleep 20
/etc/init.d/nginx start
fi
done
)< /tmp/$tempFileName