Черновой список ПО

130 views
Skip to first unread message

Dmitriy Kruglikov

unread,
Aug 14, 2012, 5:49:34 AM8/14/12
to habr...@googlegroups.com
Для начала обсуждения.

1) Дистрибутив.
Для меня без разницы. Определяется списком того хостинга, который принимаем за эталон.
Желательно, чтобы все компоненты были доступны в основном, стабильном репозитории.
Собирать руками и/или подключать сторонние репозитории считать последним шансом.
Не для бюджетного хостинга с бюджетным админом.

2) Iptables, как штатное средство. Настройки через штатный файл (/etc/sysconfig/iptables) без дополнительных утилит настройки.
Политики DROP, открывать порты явно.
Вероятно, QoS для приоритета SSH, чтоб под DDoS можно было прорваться.

3) Fail2Ban, как штатный парсер логов и средство управления iptables.
Допускаются дополнительные скрипты и cron, не ломающие идеологию Fail2Ban.

4) Collectd для сбора статистики с последующим построением графиков. Отображение: Collection3.
Минимально обеспечивает необходимый функционал. Большего в данной задаче не нужно.

5) HTTP сервер. Минимально достаточный. Если возможно, то без него вообще.

6) Nginx максимально. Что нужно, проксируем, что возможно, отдаем статикой. Кеширование, ограничение, "черно-белые" списки.

7) СУБД, минимально достаточная под задачи CMS.

8) CMS. WordPress, пока не озвучено другое. Не будем холиварить, но разумная альтернатива приветствуется.
Кто в теме, укажите список плагинов WP, обеспечивающих латание дыр безопасности. Читал по диагонали, что их там есть.

9) PHP и модули. Минимально необходимый набор для CMS.

10) Общие принципы.
SSH на нестандартный порт. Авторизация по ключам.
Все порты, которые светят в Сеть, под наблюдением Fail2Ban.
Параноидальный подход к расходованию системных ресурсов.

Дополняйте.

Nagaev Boris

unread,
Aug 14, 2012, 7:05:27 AM8/14/12
to habr...@googlegroups.com
Дополнение:

10) Если уж ssh вешать на нестандартный порт, то на 22 порт нужно
повесить honeypot.

2012/8/14 Dmitriy Kruglikov <dmitriy....@gmail.com>:

> --
> Обсуждение ТЗ для подготовки рекомендаций по настройке тестовой системы к
> сообщению http://habrahabr.ru/post/149486/
> ---
> Вы получили это сообщение, поскольку подписаны на группу habratest.
>
> Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу
> habr...@googlegroups.com.
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу
> habratest+...@googlegroups.com.
>
>

Dmitriy Kruglikov

unread,
Aug 14, 2012, 7:10:00 AM8/14/12
to habr...@googlegroups.com
14 августа 2012 г., 14:05 пользователь Nagaev Boris <bna...@gmail.com> написал:

> Дополнение:
>
> 10) Если уж ssh вешать на нестандартный порт, то на 22 порт нужно
> повесить honeypot.

Аргументируйте.

Я считаю, что отсутствие какого-либо ответа,
а) экономит системные ресурсы.
б) не дает ботам перебирать пароли.

Этого минимально достаточно.
Мне без разницы, кто и сколько раз лбом в стену стукнет. Двери там нет.
Если кто натолкнется на нестандартный порт, то F2B на страже.

Напомню, что хостинг бюджетный, хилый, каждая единица ресурсов на счету.

--
Best regards,
Dmitriy Kruglikov.

Nagaev Boris

unread,
Aug 14, 2012, 7:18:04 AM8/14/12
to habr...@googlegroups.com
Анализируя логи honeypot, можно заблокировать адреса тех, кто "удачно"
зашел в систему, а заодно предугадать цель атакующих. А кто
предупрежден, тот вооружен. Нельзя ведь исключать возможность
проникновения, например, есть ненулевая вероятность кражи ссш-ключа у
одного из админов.

По поводу траты системных ресурсов: если на 22 порт никто не заходит,
то honeypot ресурсов тратить не должен (по крайней мере, процессорных,
а выделенная ему память быстро уйдет в своп, если никто им
пользоваться не будет). Те, кто зашел, будут быстро отправлять в бан,
поэтому их обслуживание много ресурсов тоже не съест.

2012/8/14 Dmitriy Kruglikov <dmitriy....@gmail.com>:

Dmitriy Kruglikov

unread,
Aug 14, 2012, 7:34:41 AM8/14/12
to habr...@googlegroups.com
14 августа 2012 г., 14:18 пользователь Nagaev Boris написал:

> Нельзя ведь исключать возможность
> проникновения, например, есть ненулевая вероятность кражи ссш-ключа у
> одного из админов.
Думаю, это не тот проект, где будет толпа админов.

>
> По поводу траты системных ресурсов: если на 22 порт никто не заходит,
> то honeypot ресурсов тратить не должен (по крайней мере, процессорных,
> а выделенная ему память быстро уйдет в своп, если никто им
> пользоваться не будет). Те, кто зашел, будут быстро отправлять в бан,
> поэтому их обслуживание много ресурсов тоже не съест.
>

Пока не выглядит обязательным.
Но в качестве рекомендации дополнительного уровня можно оставить.
Готовьте описание.

Nagaev Boris

unread,
Aug 14, 2012, 2:43:17 PM8/14/12
to habr...@googlegroups.com
Согласен, ловушка должна быть рекомендацией, а не обязательным условием.

В качестве софта предлагаю использовать kippo. Есть другие большие
пакеты, имитирующие многочисленные уязвимости windows. Мне они кажутся
слишком тяжеловесными и сложными для такой простой задачи, как
ssh-ловушка.

Сам автор kippo признает (http://code.google.com/p/kippo/wiki/FAQ),
что не проводилось аудитов безопасности и что программа уязвима к DoS,
поэтому в случае подозрения о начале DDoS нужно перекрывать порт, на
котором работает программа (22 и 2222).

Сразу скажу, что эта программа освоена мной лишь сегодня и никакого
опыта её использования вне дома нет.

Инструкции по установке:

1. Установить зависимости (для дебиана: установить пакет python-twisted).
2. Создать отдельного пользователя. Чем меньше у него будет прав, тем лучше.
3. Зайти в нового пользователя.
4. Скачать и распаковать программу с сайта http://code.google.com/p/kippo/wiki
5. Запустить скрипт ./start.sh из папки с программой.

После этого программа начинает слушать на порту 2222. Порт 22 нужно
пробросить на 2222. Настоящий ssh сервер будет на другом порту.

Заходить нужно в пользователя root с паролем 123456 (можно поменять).

Чтобы программа запускалась сама, сгодится правило в crontab нового
пользователя (самый простой способ).

Запись сессий будет вестись в файл log/kippo.log. Оттуда достается список IP.
Файлы, загруженные атакующим при помощи wget, помещаются в папку dl.

Имеет смысл поменять hostname в файле kippo.cfg.

2012/8/14 Dmitriy Kruglikov <dmitriy....@gmail.com>:

Антон Пацев

unread,
Aug 15, 2012, 12:26:46 AM8/15/12
to habr...@googlegroups.com
вторник, 14 августа 2012 г., 16:49:34 UTC+7 пользователь Dmitriy Kruglikov написал:
4) Collectd для сбора статистики с последующим построением графиков. Отображение: Collection3.
Минимально обеспечивает необходимый функционал. Большего в данной задаче не нужно.
Как Collectd по сравнению с Munin? 

Dmitriy Kruglikov

unread,
Aug 15, 2012, 2:24:57 AM8/15/12
to habr...@googlegroups.com
15 августа 2012 г., 7:26 пользователь Антон Пацев написал:

> Как Collectd по сравнению с Munin?

Не сравнивал. На одном из моих серверов собирает десяток параметров и
по сети еще с группы серверов принимает.
Его даже и не видно в top...
Если этого будет недостаточно, посмотрим на munin.

Dmitriy Kruglikov

unread,
Aug 15, 2012, 2:27:38 AM8/15/12
to habr...@googlegroups.com
14 августа 2012 г., 21:43 пользователь Nagaev Boris написал:

[скип]
> Инструкции по установке:
[скип]


> 4. Скачать и распаковать программу с сайта http://code.google.com/p/kippo/wiki

На этом рассмотрение кандидата прекращаем.

А если сам автор сообщает о возможной пожверженности DDoS, то можно
было и не предлагать.

Reply all
Reply to author
Forward
0 new messages