如何从 ssh 客户端禁用密码提示?

Red*_*ket 9 openssh

我有一个依赖公钥/私钥 ssh 身份验证的脚本。问题在于某些系统配置错误,并且没有设置正确的 ssh 公钥/私钥信任。发生这种情况时,ssh请向我询问阻止脚本执行的密码。我试过这个命令:

sudo ssh -o "PasswordAuthentication=no" -o "ChallengeResponseAuthentication=no" root@last-call
Run Code Online (Sandbox Code Playgroud)

但我仍然被提示输入 root 密码。

Gil*_*il' 9

执行此操作的规范方法是使用以下BatchMode选项:

ssh -o BatchMode=yes …
Run Code Online (Sandbox Code Playgroud)

根据手册

如果设置为“是”,将禁用密码/密码查询。此选项在没有用户提供密码的脚本和其他批处理作业中很有用。

我本来期望的组合PasswordAuthentication=noChallengeResponseAuthentication=no足够虽然。ssh -vv可能会产生线索。