Я работаю в операционной системе RHEL 6. Я вижу неудачную попытку входа в систему (сбои пароля) в моем /var/log/secure
файл. Однако я не вижу попыток подключения к серверу по ssh, если ключ неверен. Например, если я отправлю запрос ssh:
ssh -o BatchMode=yes -i ./id_rsa uname@10.70.22.99
Он возвращается с:
Permission denied (publickey,password,keyboard-interactive).
Однако этот сбой, похоже, не вошел в систему /var/log/secure
. Любые идеи? У меня даже есть LogLevel VERBOSE
установлен в файле sshd_config.
Чтобы полностью понять, что происходит, аутентификация с открытым ключом работает в два этапа. Один просто информативен, а другой проверяет всю пару ключей.
просто проверяет, совпадает ли предложенный открытый ключ с некоторыми ключами, доступными на серверах authorized_keys
файл и не регистрируется как ошибка на уровне журнала по умолчанию, потому что многие люди просто хранят свои ключи в агенте или где-то еще и предлагают их всем серверам. Обычно это возвращается к аутентификации по паролю. Если вы настроили уровень журнала VERBOSE, вы также должны увидеть это сообщение в /var/log/secure
(по крайней мере, с недавним rhel6 openssh
пакет).
проверяет владение частной частью и выполняет настоящую асимметричную криптографию, и если это не удается, ее следует регистрировать, потому что это больше похоже на неудачную попытку аутентификации.
Смысл отсутствия регистрации попыток аутентификации с открытым ключом также заключается в том, что это в основном не может быть целью для какой-либо атаки методом перебора, поскольку пространство состояний слишком велико (например, ключ 1024b) по сравнению с паролями, где вы можете попробуйте все 8-символьные пароли (около 64 байт или макс. энтропия, но обычно намного меньше, поскольку вы можете использовать множество эвристик - словарь, только алфавит и т. д.). В клавишах у вас всего одно большое число.
В RHEL / CentOS / Fedora вы можете использовать продвижение audit
, который также содержит эти неудачные попытки аутентификации. Вы можете найти их в /var/log/audit/audit.log
так как USER_AUTH
мероприятия с res=failed
Надеюсь, это вам немного поможет.
В агенте SSH может быть несколько ключей. Все эти ключи будут проверены на наличие ssh-соединения, даже если разрешен только один. По этой причине клиент ssh не считает отказавший ключ проблемой аутентификации. Только когда все методы аутентификации не работают, он вернет ошибку.