Янв 31 2010

Nginx. Ограничение нагрузки на сайт. limit_zone и limit_req.

Nginx — вебсервер разработка которого направлена на работу с высокими нагрузками. Но не зависимо от возможностей nginx, когда нужно ограничить нагрузку на сайт/сервер. Соображения тут могут быть разные, во первых это препятствие любителям скачать весь сайт, а потом выложить его под другим именем, слабая конечно защита от этого, во вторых бывают пиковые, кратковременные нагрузки, ради которых расширять аппаратную часть сервера нет смысла.
В nginx есть два модуля ngx_http_limit_zone_module — предназначенный ограничивать число одновременных соединений с сервером и ngx_http_limit_req_module — он нужен для ограничения числа запросов за единицу времени.
Read more »

Янв 28 2010

Бекап система rdiff-backup.

Одна из моих любимых тем — это создание систем резервного копирования. Так уж сложилось, что я искренне верю, что при правильно настроенном бекапе, жизнь сисадмина намного упрощается. rdiff-backup — система позволяющая сохранять изменения и получить состояние любого сохраненного файла на любое время в которое делался бекап. Из самого названия rdiff-backup видно, что система эта построена на по принципам rdiff. А сам rdiff-backup сохраняет историю изменений, так что бы можно было откатится на любой момент. Ну и основное достоинство — это то что rdiff-backup позволяет бекапиться на удаленный сервер.
В общем rdiff-backup достаточно простая система, нет никаких заумностей и в то же время функциональна.
Строить будем систему удаленного бекапа, а именно server1 будем бекапить на server2.
Read more »

Янв 24 2010

Logrotate. Установка и настройка.

В базововй поставке FreeBSD присутствует утилита дла ротейта логов newsyslog. Естественно в большинстве случаев для работы достаточно ее. Но я стараюсь найти утилиту которая позволит мне выполнять как можно меньше рутинной работы, а добавление каждого логфайла на ротейт, по моему глубокому убеждению, ничем иным от рутины и не назовешь. Особенно, если присутствует большое число виртуальных серверов апача или nginx и особенно если они постоянно добавляются. Так вот logrotate позволяет настраивать ротейт для групп файлов по маске. Что сразу снимает проблему по настроке персонального ротейта для каждого виртуального хоста.
Read more »

Янв 23 2010

Обновление dovecot до версии 1.2.Х

Недавно дошли руки до обновления dovecot в связке с постфикс. То, установку которого я описывал в статье Строим почтовую систему(postfix, dovecot, postfixadmin) – часть третья, установка dovecot и все сломалось. Не то, что бы я не ожидал этого, о том, что авторы dovecot изменили синтаксис я знал. Так вот, какие изменения нужно внести.
1. Опция ssl_disable = yes изменилась на ssl = no
2. login_greeting_capability = yes больше нет. Нужно удалять
3. Изменилась адресация директорий. Для этого в файле dovecot-sql.conf нужно внести изменения в запрос user_query.
Он теперь будет выглядеть так:

user_query = SELECT CONCAT('/usr/mail/',LCASE(`domain`),'/',LCASE(`maildir`)), 65534 AS uid, 65534 AS gid FROM mailbox WHERE username = '%u'

Собственно и все. Изменения небольшие, но так раздражает, когда меняется синтаксис.

Янв 22 2010

sshit. Защита sshd от брутофорса.

Статью по защите от брутофорса(подбора пароля) с помощью bruteblockerа я уже писал. И вот недавно я настраивал sshit. Это тоже блокировщик брутефорса, он работает по тем же принципам, что и большинство подобных систем. Достоинство sshit заключается в том, что он работает с IPFW, IPFW2 и pf. То есть получается более универсальная система. В моем случае настрока проводилась под IPFW2 и под pf. У клиента несколько серверов с разными файерволами. Как говорится, так исторически сложилось.
Read more »

Янв 19 2010

Subversion. Установка и настройка.

Subversion система контроля версий. На сегодняшний день она практически вытеснила cvs, по крайней мере за последние полгода настраивать cvs мне не приходилось. Subversion так же называют svn. Поскольку последнее время мне все чаще приходится ставить nginx без apache, то и в этом случае svn мы будем ставить без всяких апачей.

cd /usr/ports/devel/subversion
make install clean

Read more »

Янв 16 2010

Мониторинг GEOM. geomWatch.

Одним из самых тонких мест серверов являются диски. Для многих апаратных рейд контролеров есть утилиты мониторинга. Есть такая утилита и для GEOM. Относительно недавно она появилась в портах FreeBSD. Она предназначена для проверки состояния компонентов GEOM и в случае отказа или потери каких либо компонент — уведомления сисадмина по электронной почте.
Ставим geomWatch из портов:

cd /usr/ports/sysutils/geomWatch/
make install clean

Read more »