这是有关 Linux、MacOSX 和 FreeBSD 上的 OpenSSH 客户端的问题。
通常,我使用我的 SSH 密钥登录系统。
有时,我希望 SSH 客户端忽略我的 SSH 密钥并使用密码。如果我输入“ssh hostname”,我的客户端会提示我输入 SSH 密钥的密码,这很烦人。相反,我希望客户端直接忽略我的 SSH 密钥,这样服务器就会要求我输入密码。
我尝试了以下操作,但系统仍提示我输入 SSH 密钥的密码。此后,系统又提示我输入密码。
ssh -o PreferredAuthentications=password host.example.org
我想在客户端执行此操作,而不对远程主机进行任何修改。
答案1
尝试ssh -o PasswordAuthentication=yes -o PreferredAuthentications=keyboard-interactive,password -o PubkeyAuthentication=no host.example.org
在 ssh v2 中,keyboard-interactive
是“密码”的另一种说法。该-o PubkeyAuthentication=no
选项指示客户端不要尝试密钥对身份验证。
此外,该PasswordAuthentication=yes
选项还可以覆盖任何可能已禁用它的先前配置的 ssh 选项。