Назад | Перейти на главную страницу

служба pam (sshd) игнорирует максимальное количество попыток

У меня есть vps, который я использую для запуска веб-сервера, в настоящее время он запускает сервер ubuntu 12.04. В течение нескольких недель я получаю много ошибок в консоли ssh.

2014 Apr 11 08:41:18 vps847 PAM service(sshd) ignoring max retries; 6 > 3
2014 Apr 11 08:41:21 vps847 PAM service(sshd) ignoring max retries; 6 > 3
2014 Apr 11 08:41:24 vps847 PAM service(sshd) ignoring max retries; 6 > 3
2014 Apr 11 08:41:25 vps847 PAM service(sshd) ignoring max retries; 6 > 3
2014 Apr 11 08:41:26 vps847 PAM service(sshd) ignoring max retries; 6 > 3
2014 Apr 11 08:41:29 vps847 PAM service(sshd) ignoring max retries; 6 > 3
2014 Apr 11 08:41:29 vps847 PAM service(sshd) ignoring max retries; 6 > 3

Не мог бы кто-нибудь сказать мне, что означают эти ошибки. Или хотя бы подскажите, как эти ошибки отключить. Это действительно раздражает, когда я работаю над ssh, и эти ошибки продолжают появляться на моем экране.

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

Вы получаете эти сообщения, потому что в вашей системе много неудачных попыток входа в систему через ssh. Возможно, кто-то пытается взломать ваш ящик (это было в случае, когда я получал такие же сообщения в своей системе). Прочтите ваш var/log/auth.log для исследования ...

Если это так, вам следует подумать об установке такого инструмента, как 'fail2ban' (sudo apt-get install fail2ban в Ubuntu). Он автоматически считывает файлы журнала вашей системы, ищет несколько неудачных попыток входа в систему и блокирует вредоносных клиентов на настраиваемое время через iptables ...

PAM сообщает вам, что он настроен с "retry = 3" и будет игнорировать любые дальнейшие запросы аутентификации от sshd в том же сеансе. SSH однако будет продолжать попытки до тех пор, пока не будет исчерпан параметр MaxAuthTries (по умолчанию 6).

Вероятно, вам следует установить оба этих параметра (SSH и PAM) на одно и то же значение для максимального количества попыток аутентификации.

Обновлено

Чтобы изменить это поведение:

Для sshd вы редактируете /etc/ssh/sshd_config и установить MaxAuthTries 3. Также перезапустите SSH-сервер, чтобы настройки вступили в силу.

Для PAM, вам нужно искать конфигурацию в /etc/pam.d каталог (я думаю, что это common-password файл в Ubuntu), вам нужно изменить retry= стоимость.

Примечание: Я настоятельно рекомендую также проверить ответ Питера Хоммеля относительно причины этих запросов, поскольку, возможно, ваш SSH подвергается грубой силе.

Представляется, что приведенный выше анализ не совсем верен. Похоже, что для аутентификации pam нет опции retry = (я нашел ее для pam_cracklib, но это касается только изменения пароля в разделе «пароль», а не аутентификации в разделе «auth» в pam). Вместо этого pam_unix содержит встроенное максимальное количество попыток, равное 3. После 3 попыток pam возвращает код ошибки PAM_MAXRETRIES, чтобы сообщить об этом sshd.

В этом случае sshd действительно должен прекратить попытки, независимо от его собственных MaxAuthTries. Это не так, что я считаю ошибкой (которую я только что сообщил с помощью openssh).

Пока эта ошибка не будет исправлена, кажется, что установка MaxAuthTries на <= 3 - единственный способ предотвратить появление этого сообщения.

Клиент ssh может попытаться аутентифицироваться с помощью одного или нескольких ключей. Любые ключи, не перечисленные в authorized_keys, завершатся ошибкой, потребляя одну из повторных попыток sshd. Клиент будет пробовать каждый имеющийся у него ключ ssh, пока один из них не сработает или все не сработают, поэтому хорошо, что sshd позволяет вам попробовать несколько.

Если ключи не совпадают, sshd может позволить вам попробовать пароль. Каждая из этих попыток также потребляет одну из разрешенных повторных попыток sshd. Но он также потребляет одну из разрешенных повторных попыток PAM.

Итак, комбинация из 6 попыток аутентификации ssh и 3 попыток аутентификации pam - это хорошо: это означает, что ssh разрешит всего 6 попыток аутентификации (ключ или пароль), но только 3 попытки пароля.

Как говорили другие, если вы часто видите это в своих журналах, кто-то пытается проникнуть в вашу систему с помощью грубой силы. Рассмотрите возможность использования fail2ban для полной блокировки пакетов с IP-адресов, с которых исходят эти попытки.

После обновления с Debian 6 до Debian 7 я столкнулся с теми же проблемами. Внезапно в моей консоли возникли эти ошибки sshd.

2014 Oct 15 13:50:12 vps456 PAM service(sshd) ignoring max retries; 6 > 3
2014 Oct 15 13:50:17 vps456 PAM service(sshd) ignoring max retries; 6 > 3
2014 Oct 15 13:50:18 vps456 PAM service(sshd) ignoring max retries; 6 > 3

В моем случае проблема заключалась в том, что rsyslog после обновления Debian больше не устанавливался.

После установки rsyslog эти ошибки исчезли с моей консоли: apt-get install rsyslog

Конечно, получение этих уведомлений на вашей консоли может раздражать, но когда я вижу в своих файлах журнала, что вчера у меня было 987 неудачных попыток входа в систему с IP-адреса в Китае, или 2670 из какой-то облачной службы в Калифорнии, или ... многих другие, я не волнуюсь. Пользователь root вообще не имеет права входить в систему на моей машине. Сколько ни старайся.

Если бы они начали пробовать имена пользователей, которые могут входить в систему, это было бы другое дело, но если у кого-то есть хорошие пароли, я тоже не вижу в этом риска. Пароли входа (в отличие от ключей шифрования) можно попробовать только так быстро.

Использование чего-то вроде fail2ban кажется ненужной сложностью, которая ничего не покупает (если у вас хорошие пароли), а сложность плохо сказывается на безопасности. Попытки регулирования - это то, что должен реализовать sshd, а не то, что требует дополнительных надстроек ... и sshd делает попытки дросселирования. Хорошо.

-kb, Кент, который использует только надежные пароли и никогда не повторно используется между разными сайтами.