Я пытаюсь расшифровать все мои журналы ssh (чтобы дать им разумные теги с logstash). Но я нашел один случай, которого не совсем понимаю:
Oct 23 07:43:47 sshd[59830]: Connection from 74.194.6.5 port 60126 on 213.67.100.148 port 22
Oct 23 07:43:51 sshd[59830]: error: maximum authentication attempts exceeded for root from 74.194.6.5 port 60126 ssh2 [preauth]
Oct 23 07:43:51 sshd[59830]: Disconnecting authenticating user root 74.194.6.5 port 60126: Too many authentication failures [preauth]
Как он может достичь максимального количества попыток аутентификации, не подавая никаких признаков попытки аутентификации?
Обычно я получаю что-то подобное до появления строки «максимальная аутентификация ...».
Oct 23 08:54:06 sshd[62392]: Failed keyboard-interactive/pam for [...]
Oct 23 08:52:41 sshd[49690]: Failed publickey for [...]
Но не всегда.
Обратите внимание, у меня нет проблем со входом в систему ..
Согласно странице руководства sshd config
MaxAuthTries
Задает максимальное количество попыток аутентификации, разрешенных на одно соединение. Когда количество отказов достигает половины этого значения, регистрируются дополнительные отказы. По умолчанию - 6.
Как видите, ограничение действует для каждого соединения, и не все попытки регистрируются. Вы также можете выбрать, сколько информации вы хотите в журналы.
LogLevel
Указывает уровень детализации, который используется при регистрации сообщений от sshd (8). Возможные значения: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2 и DEBUG3. По умолчанию - ИНФОРМАЦИЯ. DEBUG и DEBUG1 эквивалентны. DEBUG2 и DEBUG3 определяют более высокие уровни вывода отладки. Ведение журнала с уровнем DEBUG нарушает конфиденциальность пользователей и не рекомендуется.
В OpenSSH / Регистрация и устранение неполадок вы можете увидеть примеры журналов, в которых вы можете видеть, что отклоняющая часть похожа на ту, которую вы показали:
...
Mar 19 11:11:10 server sshd[54798]: Failed password for root from 122.121.51.193 port 59928 ssh2
Mar 19 11:11:10 server sshd[54798]: error: maximum authentication attempts exceeded for root from 122.121.51.193 port 59928 ssh2 [preauth]
Mar 19 11:11:10 server sshd[54798]: Disconnecting authenticating user root 122.121.51.193 port 59928: Too many authentication failures [preauth]
Подводя итог,неудачные попытки аутентификации не всегда отправляются в журналы. Предпочтение может быть настроено в файле conf для httpd.
А теперь, исходя из моего не очень удачного опыта использования ssh в Интернете, позвольте мне дать некоторые общие рекомендации:
Это сообщение об ошибке выдается, среди прочего, когда ssh-клиент пытается выполнить вход на основе ключа и предлагает более MaxAuthTries
недопустимых ключей. После этого сервер SSH разорвет соединение. Это может быть вызвано либо (злонамеренным) клиентом, у которого вообще нет действительных ключей, или действительными пользователями, у которых просто много разных пар ключей и число MaxAuthTries
достигается до того, как можно будет обменять действительный ключ. . Когда это произойдет, соединение будет разорвано и даже не достигнет стадии, когда предлагаются / предпринимаются попытки альтернативных методов входа.
(На уровне журнала по умолчанию) ssh-сервер не записывает неудачные ключи, происходит обмен, и поэтому появляется сообщение об ошибке « ошибка: превышено максимальное количество попыток аутентификации для ... ssh2 [preauth]
» кажется, что в файле журнала не было никаких предыдущих попыток аутентификации.
Вы можете легко смоделировать это с помощью:
for n in $(seq 1 10 ) ; do ssh-keygen -b 2048 -t rsa -f /tmp/sshkey-$n -q -N "" ; done
ssh -v -i /tmp/sshkey-1 -i /tmp/sshkey-2 -i /tmp/sshkey-3 ... user@host
debug1: Следующий метод аутентификации: publickey
debug1: Предлагаем открытый ключ RSA: / tmp / sshkey- 1
debug2: мы отправили пакет открытого ключа, ждем ответа
debug1: аутентификация, которая может продолжаться: publickey, gssapi-keyex, gssapi-with-mic
debug1: Предлагаем открытый ключ RSA: / tmp / sshkey- 2
debug2: мы отправили пакет открытого ключа, ждем ответа
debug1: аутентификация, которая может продолжаться: publickey, gssapi-keyex, gssapi-with-mic
debug1: Предлагается открытый ключ RSA: / tmp / sshkey- 3
debug2: мы отправили пакет открытого ключа, ждем ответа
debug1: аутентификация, которая может продолжаться: publickey, gssapi-keyex, gssapi-with-mic
debug1: Предлагается открытый ключ RSA: / tmp / sshkey- 4
debug2: мы отправили пакет открытого ключа, ждем ответа
debug1: аутентификация, которая может продолжаться: publickey, gssapi-keyex, gssapi-with-mic
debug1: Предлагаем открытый ключ RSA: / tmp / sshkey- 5
debug2: мы отправили пакет открытого ключа, ждем ответа
debug1: аутентификация, которая может продолжаться: publickey,gssapi-keyex, gssapi-с микрофоном
debug1: Предлагается открытый ключ RSA: / tmp / sshkey- 6
debug2: мы отправили пакет открытого ключа, ждем ответа
Получено отключение от порта хоста 22: 2: Слишком много ошибок аутентификации
Ошибка аутентификации
Значение по умолчанию для MaxAuthTries
- 6 .
sshd [19032]: ошибка: превышено максимальное количество попыток аутентификации для входа с 10.9.8.7 порта 54956 ssh2 [preauth]
sshd [19032]: Отключение: слишком много ошибок аутентификации [preauth]
Увеличение sshd_config LogLevel
до VERBOSE
приведет к появлению дополнительных событий журнала, которые имеют немного больше смысла:
sshd [19271]: соединение с порта 10.9.8.7 58823 на порт 10.9.8.8 22
sshd [19271]: сбой публичного ключа для входа из порта 10.9.8.7 58823 ssh2: RSA SHA256: QGnu ... fpY
sshd [19271]: сбой публичного ключа для входа из порта 10.9.8.7 58823 ssh2: RSA SHA256: cjje ... dDo
sshd [19271]: сбой публичного ключа для входа из порта 10.9.8.7 58823 ssh2: RSA SHA256: IIWe ... d1M
sshd [19271]: сбой публичного ключа для входа из порта 10.9.8.7 58823 ssh2: RSA SHA256: xrQs ... Et0
sshd [19271]: сбой публичного ключа для входа из порта 10.9.8.7 58823 ssh2: RSA SHA256: 0Zln ... UI4
sshd [19271]: сбой публичного ключа для входа из порта 10.9.8.7 58823 ssh2: RSA SHA256: hhsj ... 7Q4
sshd [19271]: ошибка: превышено максимальное количество попыток аутентификации для входа с 10.9.8.7 порта 58823 ssh2 [preauth]
sshd [19271]: Отключение: слишком много ошибок аутентификации [preauth]
Другое дело, если вы хотите войти в систему под пользователем root с помощью ssh, используя пароль, и ваша конфигурация установлена на PermitRootLogin prohibit-password
, это закончится с ошибкой error: maximum Превышено количество попыток аутентификации для root из порта 10.0.12.12 58656 ssh2 [preauth]