Введение
Перебор паролей по SSH редко приносит плоды если пароли надежные. Как проверить надежность паролей в эту тему не входит и я думаю для многих интуитивно понятно. Другое дело, что иногда очень неудобно читать логи ssh когда они загрязнены ерундой да и трафик иногда нужно экономить.
Использование фаерволов
SSH устроен так, что после нескольких неверно введенных паролей он закрывает соединение. Соответственно новое соединение будет с флагом SYN. Этим и можно воспользоваться, настраивая правила фаервола.
Что-нибудь типа такого (взято с opennet, хотя сам нечто подобное уже реализовывал):
Про аналогичные блокировки в pf можно почитать здесь:
http://www.opennet.ru/opennews/art.shtml?num=7471
Использование анализаторов лог-файлов
Существует несколько анализаторов
лог-файлов, которые по auth.log могут определить перебор и вызвать блокировку с помощью создания правила iptables. Удобно тем, что он
кросс-платформенно (я имею в виду unix). Лично я (как и многие другие) считаю это решение некрасивым.
Смена порта
Если ходишь по ssh один (или несколько человек) и для вас не критично каждый раз набирать ключик -p, то можно сменить порт с 22 на
какой-нибудь 20002 и от тупых переборщиков это спасет. Спасает это по тому, что вас не направленно сканируют обычно, машина просто перебирает
какую-то подсеть на предмет открытых
22-ых портов. С тех пор как я поменял у своего sshd порт, на меня не было ни одной атаки брутфорсной ;)
Port knocking
Довольно интересная технология. Она позволяет не только защитится от перебора, но и скрыть само по себе наличие
ssh-сервиса. Но стоит отметить, что наверное меньше всего удобства именно в этом способе (удобства в плане простоты входа на сервер).
pam_abl
Есть модуль pam под названием pam_abl. Под Red Hat великолепно собирается, но в ALT
почему-то не работает. Код написан ужасно, но для Red Hat вполне работоспособно.
Заключение
Это просто небольшой обзор не претендующий на
какое-либо полноценное руководство. Оно совсем Вас не избавляет от надобности создавать сложные пароли. Я считаю идеальной аутентификацию по ключам (тоже запароленным), в этом случае помимо пароля необходимо еще иметь и сам ключик.
Готов учесть любые замечания.