Так что, если я использую SSH с открытыми / закрытыми ключами для подключения к Unix-боксу, а срок действия пароля для моей учетной записи в этом ящике истекает, смогу ли я подключиться?
3 ответа
Да, вы можете "подключиться", но вам потребуется сменить пароль, по крайней мере, в дистрибутивах Ubuntu. Некоторые серверы будут вести себя по-разному.
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred gssapi-keyex,gssapi-with-mic,gssapi,publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /home/testsftpuser/.ssh/id_rsa
debug1: read PEM private key done: type RSA
debug3: sign_and_send_pubkey
debug2: we sent a publickey packet, wait for reply
debug3: Wrote 656 bytes for a total of 1799
debug1: Authentication succeeded (publickey).
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
Доступ не будет предоставлен, пока ваш пароль не будет изменен:
You are required to change your password immediately (password aged)
Linux devftp01 2.6.66-38-server #43-Ubuntu SMP Thu Sep 16 16:05:42 UTC 2010 x86_64 GNU/Linux
Ubuntu 12.04.4 LTS
WARNING: Your password has expired.
You must change your password now and login again!
Changing password for testsftpuser.
(current) UNIX password:
Да, вы все равно сможете подключиться.
Когда пароль заблокирован или просрочен, root ставит! подпишите перед паролем и когда пользователь пытается войти. Его хешированный пароль не совпадает с паролем, потому что! перед паролем не совпадает.
При разблокировке root пользователь удаляет! перед паролем войдите в систему, чтобы совпадать с паролями и пользователь мог войти в систему.
Теперь рассмотрим вашу ситуацию.
- Пользователь заблокирован или просрочен
- Пользователь пытается войти через терминал и заблокирован, потому что предоставленный пароль не совпадает с базой данных паролей.
- Когда он пытается войти в систему с помощью ssh-ключей. Это логи им.
<snip> debug3: authmethod_lookup publickey debug3: remaining preferred: keyboard-interactive,password debug3: authmethod_is_enabled publickey debug1: Next authentication method: publickey debug1: Offering public key: atolani@atolani.csb debug3: send_pubkey_test debug2: we sent a publickey packet, wait for reply debug3: Wrote 528 bytes for a total of 1637 debug1: Authentications that can continue: publickey,gssapi-with-mic,password debug1: Trying private key: /home/atolani/.ssh/identity debug3: no such identity: /home/atolani/.ssh/identity debug1: Trying private key: /home/atolani/.ssh/id_rsa debug3: no such identity: /home/atolani/.ssh/id_rsa debug1: Trying private key: /home/atolani/.ssh/id_dsa debug3: no such identity: /home/atolani/.ssh/id_dsa debug2: we did not send a packet, disable method debug3: authmethod_lookup password debug3: remaining preferred: ,password debug3: authmethod_is_enabled password debug1: Next authentication method: password </snip>
Дан подробный вывод логина ssh.
Таким образом, мы видим, что при входе в систему через ssh сначала пытаются проверить личность закрытых ключей и перейти к интерактивному паролю, если указанное выше недоступно. Это показывает, что при входе в систему с использованием ssh-ключей пользователь не проверяет пароль и не может проверить, заблокирован пароль или нет.
Так что да, если ваш пароль истек или заблокирован, вы сможете войти, если ключи пароля настроены.