Похоже, что один из моих серверов подвергается изощренной словарной атаке на ssh, в которой я вижу, что на моих серверах в алфавитном порядке пробуются имена пользователей с ошибками пароля.
Вот что необычно в этом:
Вы можете помочь мне понять как это можно сделать с разных IP-адресов, можно ли эффективно заблокировать? и означает ли медленное продолжение атаки (вероятно, потребуется несколько месяцев, чтобы пройти по алфавиту) что-нибудь конкретное?
Мне также было бы интересно узнать, наблюдает ли кто-нибудь еще в настоящее время на своих общедоступных ssh-серверах (т.е. являемся ли мы конкретной целью или злоумышленник закрывает тысячи ssh-серверов этой атакой?)
Кроме того, могу ли я раскрыть какие пароли (или даже хэши) проверяются? Я заметил, что каждое имя используется только один или два раза. я предполагать они пробуют "пароль" или имя пользователя, но могу я это проверить?
Легкий ответ на это не используйте пароли !!!
Ты можешь:
Если вам необходимо использовать пароли, разрешайте их только из подсетей, которым вы доверяете, а не для всего Интернета. Кроме того, это помогает запустить демон ssh на каком-либо порту, отличном от 22. Обычно я не предлагаю такие вещи, но если это уменьшит количество наблюдаемых атак, тем лучше.
В ответах на ваши конкретные вопросы:
Лучший ответ - ничего с этим не делать. Пока у ваших пользователей есть надежные пароли из 8 или более символов, при такой скорости, скорее всего, потребуется около 3000 миллионов лет, чтобы подобрать его!
Вот некоторые обсуждения и анализ атаки ботнета "медленными переборами", которая началась в 2008 году: Финальный обзор медленных скотов
Другое обсуждение того же периода в этот сайт предлагает
Fail2ban - всего лишь один из инструментов повышения безопасности сервера. Конечно, первым делом следует избегать использования паролей и вместо этого использовать аутентификацию по ключу сервера. Кроме того, ограничьте разрешенный трафик для определенных IP-адресов, запретите диапазоны IP-адресов, используйте IP-таблицы, используйте черные списки, такие как rsync-mirrors.uceprotect.net, для обновления ваших iptables для известных источников хакеров SSH и исходных сетей. Подробную информацию о трех уровнях черных списков см. На uceprotect.net.
Другие элементы, которые я видел, связанные с такого рода попытками, рекомендуют отслеживать неудачные попытки и блокировать исходные IP-адреса - в конечном итоге тот же IP-адрес будет использоваться для другого зонда, поэтому путем обнаружения и внесения в черный список после попыток входа в систему с несуществующей учетной записью вы постепенно уменьшаете угрозу за счет увеличения обработки правил брандмауэра. Кроме того, может быть лучше не блокировать после только одной попытки подключения - опечатки случаются.
Я не уверен в вашей реальной реализации, но вот несколько общих советов:
Проверьте свои пароли (с помощью John the ripper или аналогичного) и посмотрите, можете ли вы увеличить тайм-аут для входа в систему.
Установите denyhosts или fail2ban - после определенного количества атак он будет блокироваться по IP. denyhosts работает с /etc/hosts.deny, и я считаю, что fail2ban работает по правилам iptables.