Upstart, fork и daemon

У Upstart есть одна известная ошибка: неверное использование expect fork/expect daemon может подвесить initctl, после чего всякие start/stop/restart/reload <service> просто перестанут работать. Для полноты картины отмечу, что такой подвисший сервис не получится остановить и через /usr/sbin/service или /etc/init.d. Весёлая ошибка, но это еще не всё.

Есть еще одна тонкость: если программа использует fork(), то в конфигурационном файле upstart должна присутствовать строка expect fork. По аналогии можно подумать, что если программа использует daemon(), то в конфигурационном файле upstart должна присутствовать строка expect daemon. А вот и нет! Далее »

Автор: Vladimir, опубликовано в: Linux, комментариев: 1
24
Апр
2010

Scope Guard средствами C++0x: часть 1

Scope Guard — одно из средств автоматического освобождения ресурсов при выходе за пределы видимости переменной, с ними связанной. предоставляет базовую гарантию безопасности исключений. Авторами этой идеи (по-видимому) являются Andrei Alexandrescu и Petru Marginean. Если вы с этой статьёй еще не знакомы, то очень рекомендую к прочтению.

Реализация довольно простая, но из-за того, что C++ не поддерживал шаблоны с переменным количеством параметров, приходилось создавать несколько шаблонов — в зависимости от того, сколько аргументов принимает функция, выполняющая освобождение ресурсов. Далее »

Автор: Vladimir, опубликовано в: C/C++, комментариев: 2
23
Апр
2010

Борьба с ботами-взломщиками средствами rsyslogd

В предыдущих частях статей цикла «Скажи «Нет!» взломщику» со взломщиками мы боролись при помощи связки swatch + : swatch проводил анализ системного журнала сообщений, использовался для блокировки непрошеных гостей.

Тем не менее, используя swatch на нескольких серверах, я не могу сказать, что я полностью им доволен: слишком уж он хрупок. Завершение дочернего tail приводит к тихой гибели самого swatch, в системе могут оставаться зомби и т.п.

Одна из альтернатив — использование . Далее »

Автор: Vladimir, опубликовано в: Администрирование, Безопасность, комментариев: 5
21
Апр
2010

О компьютерных вирусах

I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We’ve created life in our own image.

– Stephen Hawking

Перевод:

Я думаю, что компьютерные вирусы должны считаться жизнью. Полагаю, что это говорит что-то о человеческой природе — единственная форма жизни, которую мы до сих пор создали, весьма разрушительна. Мы создали жизнь по своему подобию.
Автор: Vladimir, опубликовано в: Всё подряд, комментариев: 4
10
Апр
2010

ProFTPd, FTPS и iptables

Ситуация: есть сервер, на котором крутится , а настроен так, чтобы не разрешать лишних соединений (политика по умолчанию — DROP). При этом есть желание, чтобы -сервер работал по протоколу FTPS и поддерживал пассивные соединения. Далее »

Автор: Vladimir, опубликовано в: Linux, комментариев: 1
10
Апр
2010