如果我使用 Ubuntu 11.04 中的 pubkey auth,如何将 ssh 客户端设置为仅对服务器使用密码身份验证? (只是因为在服务器上测试密码而需要,我默认使用密钥登录)
我找到了一个方法:
mv ~/.ssh/id_rsa ~/.ssh/id_rsa.backup
mv ~/.ssh/id_rsa.pub ~/.ssh/id_rsa.pub.backup
现在系统提示我输入密码,但是有什么官方方法吗?
答案1
答案2
我发现了实现此目的的捷径:
ssh user:@example.com
请注意冒号 ( :
) 及其后面的空密码。
答案3
除了 scoopr 发布的方法之外,您还可以在 ssh 客户端配置文件中设置每个主机选项。
在您的.ssh
目录中,创建一个名为config
(如果尚不存在)的文件并将权限设置为600
,然后您可以创建以
host <some hostname or pattern>
然后设置每个主机选项,例如,
host bob.specific.foo
user fred
host *.home.example
user billy
port 9191
所以你可以有
host server.to.test
PubkeyAuthentication no
在该文件中,然后简单地
ssh server.to.test
并且该选项将被选中。
答案4
我尝试了其中一些答案,但ssh -v
不断显示我的公钥被从我的主目录中拉出。然而,指定虚假身份文件为我做了这个伎俩:
ssh -i /dev/null host
我必须永久执行此操作(以解决 APC 机架式 PDU 中损坏的 SSH 服务器 — 留下来远的如果您关心安全性,请远离这些事情),所以我最终将该选项放入我的配置文件中:
Host apc1 apc2
KexAlgorithms +diffie-hellman-group1-sha1
IdentityFile /dev/null