Страница 1 из 1
защита доступа к sshd.
Добавлено: 2009-08-03 14:06:05
mastertron
Хотел обойтись без удаленного доступа, но ... Нужна защита от хулиганов.
С линуксом (iptables) вариантов много, крути-верти, а вот с PF так не поиграешь.
Пробовал portsentry, чет не очень хочет работать, под опен ругается, просит запустить только либо -tcp, либо -udp.
Да и не совсем то, что хотелось бы.
Народ, дайте совет, как отсечь аболтусов и роботов. Засунуть IP в таблицу PF не проблема, как его проанализировать.
Хотелось бы - запуск скрипта и передача в него IP после н-ной неудачной попытки залогинится.
Или с одного IP только два новых коннекта в течении часа, ну что-то типа ...
Постоянно сканить лог? Может есть что по толковее?
Re: защита доступа к sshd.
Добавлено: 2009-08-03 18:48:29
Fioktist
тут URL я первый раз с этим познакомился
а тут URL тоже изящно расписано
Очищаем таблицу раз в час, по крону :
59 * * * * root/sbin/pfctl -t BRUTEFORCERS -T expire 86400
а это в крон и время поставь как тебе надо
тут под URL уже есть
# правила для внешнего интерфейса
# аккуратненько открываем ssh снаружи, те кто брутфорсят станут "плохими парнями" и буду занесены в черный список
pass quick inet proto tcp to port ssh tagged in_ext flags S/SA modulate state (max-src-conn 5, max-src-conn-rate 5/60, overload <badhosts> flush)
Re: защита доступа к sshd.
Добавлено: 2009-08-03 20:25:56
paradox
Хотелось бы - запуск скрипта и передача в него IP после н-ной неудачной попытки залогинится.
Или с одного IP только два новых коннекта в течении часа, ну что-то типа ...
ident
или как там он называеться
подскажите кто помнит
Re: защита доступа к sshd.
Добавлено: 2009-08-03 22:01:32
helloworld
Как всё сложно
Посмотрите в сторону denyhosts.
Re: защита доступа к sshd.
Добавлено: 2009-08-04 7:25:32
mastertron
denyhosts? Но у меня нет постоянного IP с которого я должен получять доступ, к томуже он сработает после ответа системы на запрос доступа к сервису, а идея (желание) в том, чтоб резать "пулеметный огонь на подступах".
тут URL я первый раз с этим познакомился
Спасибо, но не увидел желаемого. Как понял, речь идет об отслеживании (логировании), а эрекция на попытку ?
Остальное еще изучаю, спасибо.
Re: защита доступа к sshd.
Добавлено: 2009-08-04 12:37:48
Fioktist
дубль
а тут URL тоже изящно расписано
убери только queue ( qssh, qack ) если файервол без шейпера
# ssh для локальных юзеров
Код: Выделить всё
pass in on $int_if proto tcp from $int_if:network to $int_if port ssh \
queue ( qssh, qack ) synproxy state ( max-src-conn-rate 1/60, \
overload <BRUTEFORCERS> flush global )
# и для пользователей с инета
Код: Выделить всё
pass in on $ext_if proto tcp from any to $ext_if port ssh \
queue ( qssh, qack ) synproxy state ( max-src-conn-rate 1/60, \
overload <BRUTEFORCERS> flush global )
# synproxy защищает наш сервис ssh от DoS атак, благодаря тому, что
# сначала САМ устанавливает соединение
# (не допуская полуоткрытых состояний),
# а потом передает установленное соединение сервису.
# Имеет немного бОльшие накладные расходы по сравнению с keep
# max-src-conn-rate numer/time interval
# позволяет применить определенные действия
# к превысившим ограничение по количеству подключений
# за единицу времени. Здесь я указал максимум 1 подключение
# за 60 секунд. Все превысившие это ограничение заносятся в таблицу
# BRUTEFORCERS и с ними разрываются (flush) установленные
# соединения по всем (global) портам. Обратитие внимание, что
# 1/60 -- очень агрессивная настройка. Не попадитесь под нее сами.
# В Вашем случае 5/300 возможно будет более актуальным.
Очищаем таблицу раз в час, по крону :
Код: Выделить всё
59 * * * * root/sbin/pfctl -t BRUTEFORCERS -T expire 86400
а это в крон и время поставь как тебе надо
поверь все вышеописанное в pf работает как часы, хоть на опенке хоть на фрее
также можно и веб сервер "защищать"
# Правило: пропускаем трафик вебсервера ------------------------------
Код: Выделить всё
pass in on $if inet proto tcp from any to $if port www \
flags S/SA synproxy state \
(source-track rule, max-src-states 96, max-src-conn 48, max-src-conn-rate 48/60, overload <abusive> flush)
Re: защита доступа к sshd.
Добавлено: 2009-08-04 19:04:59
skeletor
Попробуй вот это (каждая софтина хороша по себе)
sshguard-pf
sshit
fail2ban
Re: защита доступа к sshd.
Добавлено: 2009-08-04 19:17:04
mastertron
Fioktist спасибо. Я даже и не подозревал о таких возможностях, я ЗНАЛ

что в опене - все в порядке.
Работает отлично. Знакомился с PF по статье, в которой описано все скудненько, наверняка там есть еще "штучки".
Если есть что для развития, ткните пож.
Даже както неудобно, разжевали и в рот положили
skeletor, спасибо за наводку, пощупаю.
Работой функциональностью PF полностью удовлетворен!!!
Re: защита доступа к sshd.
Добавлено: 2009-08-25 17:38:58
fox_12
Вот еще эту утилитку стоит глянуть:
http://blocksshd.sourceforge.net/
Re: защита доступа к sshd.
Добавлено: 2009-09-05 17:52:02
Anton.M
как всё сложно...
Конечно параноя это хорошо, но в большинстве случаев достаточно перевесить sshd на другой порт и запретить логин для рута по ssh
+ и если хочется задать список логинов, которые могут логиниться по ssh...
Кроме того в самом sshd есть средства защиты от DDOS'a (MaxStartups) и bruteforce (MaxAuthTries)
Хотя для особо тяжелых случаев выше написали кучу примочек
