Archive

Archive for October, 2006

Сохранение POST-запросов в apache

October 24th, 2006 No comments

В некоторые моменты чувствую себя очень неуютно из-за того, что нет возможности посмотреть, что конкретно делают с моим сервером некоторые персоны. Я долго искал возможность логгировать все, в том числе и POST запросы клиентов и нашел способ – через mod_security.

Устанавливается он элементарно apxs -cia mod_security.c (см документацию, правда, для его работы в наиболее удобном, “Concurrent”, режиме логгирования, нужен модуль unique_id. После установи модуля следует добавить следующую секцию в httpd.conf:


ltIfModule mod_security.cgt
SecAuditEngine On
# У mod_security есть два механизма логгирования, Concurrent - более быстрый и продвинутый.
SecAuditLogType Concurrent
# Здесь будет храниться индекс - файл, по структуре похожий на access_log + идентификаторы, по которым можно найти полную информацию в StorageDir
SecAuditLog /var/log/www/audit/index
# Тут хранятся все данные запросов. Каждый запрос в отдельном файле. Запросы разнесены по каталогам (вместе все запросы одной транзакции, вместе все транзакции одного дня)
SecAuditLogStorageDir /var/log/www/audit/data/
# Наиболее полное логгирование (man)
SecAuditLogParts ABCDEFGHZ
# Добавить обработку POST данных.
SecFilterScanPOST On
SecFilterEngine On
# Следующие строки нужны для сохранения загруженных на сервер файлов:
SecUploadDir /var/log/www/audit/upload
SecUploadKeepFiles On
</IfModule>

Включать это имеет смысл при подозрении, что кто-то пытается использовать вашу систему не по назначению, теперь любой шаг проходимца будет записан.

p.s. Работоспособность конфига проверялась в apache 1.3.37, mod_security 1.9.4, но работать должно и в 2.0/2.0

Categories: UNIX Tags: , , ,

KOI8-R локаль в [K]Ubuntu

October 8th, 2006 No comments

Russian Linux
“А по улицам там ходят медведи с балалайками и разговаривают на KOI8-R” (почти BOR). Так вот, я и есть такой медведь. И когда мне дают дистрибутив с локалью UTF8 по умолчанию, я буду все переделывать. Для других таких же медведей есть у меня инструкция (тестировалось на Kubuntu 7.04)

а) Все начинается с генерации локали ru_RU-KOI8-R, делается это командой locale-gen. Список локалей, которые она будет генерировать, находится в файле /var/lib/locales/supported.d/local. Нужно привести его к такому виду:

#cat /var/lib/locales/supported.d/local
ru_RU.UTF-8 UTF-8
ru_UA.UTF-8 UTF-8
ru_RU.KOI8-R KOI8-R

Затем, собственно, сгенерировать:
#sudo locale-gen
Generating locales...
ru_RU.KOI8-R... done
Generation complete.

б) Далее, обновляем переменные окружения. За это отвечает файл /etc/default/locale. В нем пишем: LANG="ru_RU.KOI8-R"
LANGUAGE="ru_RU:ru:en_GB:en"

Иксы уже сейчас будут работать с богомерзской KOI8-R, а чтобы заставить работать консоль, нужно сделать еще несколько телодвижений:
apt-get install console-cyrillic

В файл .profile добавляем:
loadkeys /usr/share/console-cyrillic/ru-koi8-r.kmap
consolechars -f /usr/share/console-cyrillic/UniCyr_8x14.psf -m /usr/share/console-cyrillic/koi8-r.acm.gz

Готово.

p.s. Только не спрашивайте, зачем кому-то в 21-м веке понадобилась KOI8-R. Иногда бывает, что с ней живется проще.

Categories: UNIX, tips Tags: , , ,