воскресенье, 12 января 2014 г.

Ротация логов с помощью logrotate в Debian / Ubuntu

Утилита позволяет в автоматическом режиме архивировать, удалять, очищать и отправлять на e-mail лог-файлы. Этот процесс обычно называется ротацией лог файлов.
Logrotate может быть настроен на ежедневную, еженедельную или ежемесячную ротацию. Кроме того, можно задать размер файла, по достижении которого файл будет ротирован. Обычно logrotate выполняется в качестве каждодневного задания (cron).
Установка Logrotate
$ sudo aptitude install logrotate


Краткое описание файла настроек Logrotate

Описание того, каким образом Logrotate будет работать с тем или иным лог файлом находится в специальном конфигурационном файле. Как правило, они располагаются в директории /etc/logrotate.d/. Например, файл конфигурации для apache2 выглядит следующим образом:

суббота, 11 января 2014 г.

Замена текста в множестве файлов через терминал OS X, Linux, Unix,



Если вы хотите найти и заменить любое слово, текст, URL, в куче файлов, это может оказаться очень монотонной задачей. Если у вас в расспоряжении Mac OS X, Linux, или любая Unix-based  ОС, вы можете использовать терминал (командную строку) и сохранить кучу времени и нервов.

Все что вам нужно это простая команда на основе PERL:

# perl -pi -w -e 's/SEARCH_FOR/REPLACE_WITH/g;' *.txt

Она заменят  SEARCH_FOR на REPLACE_WITH во всех *.txt файлах текущей папки. 

Рабочий пример:
# perl -pi -w -e 's/stupid/awesome/g;' ~/Desktop/*.txt
Не забывайте что SEARCH_FOR это строка которая интерпретируется как регуярное выражение, а значит что в ней нужно прослешивать точки, слеши и т.п. но также и можно использовать все прелести регулярок.

четверг, 9 января 2014 г.

Настраиваем Iptables для защиты веб сервера на базе debian или ubuntu


1. Первым делом очистим существующую таблицу правил:

# iptables -F

2. Нам нужно разрешить SSH доступ чтобы при блокировании всего, мы не потеряли контроль над сервером. Стндартным решением (по мнению авторов большинства подобных статей) для этого была бы команда:

-A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT

Но разрешая доступ на SSH в самом начале, мы потом не сможем наложить на SSH правила по его защите от перебора паролей (Bruteforce). Почему? потому, что правила в iptables применяются последовательно! И все другие ограничения которые бы мы наложили на 22 порт ниже текущего правила, уже не имели бы своей силы.
Итак, сначала защита самого SSH потом его доступ, потом остальная конфигурация.

2.1 Для качественой защиты от брутфорса, будем использовать дополнительный модуль который можно установить и сконфигурировать так:

# aptitude install module-assistant xtables-addons-source
# module-assistant prepare
# module-assistant auto-install xtables-addons-source
# depmod -a