Openssh
如何從 ssh 客戶端禁用密碼提示?
我有一個依賴於公鑰/私鑰 ssh 身份驗證的腳本。問題是某些系統配置錯誤並且沒有設置正確的 ssh 公鑰/私鑰信任。發生這種情況時,
ssh
向我詢問阻止腳本執行的密碼。我試過這個命令:sudo ssh -o "PasswordAuthentication=no" -o "ChallengeResponseAuthentication=no" root@last-call
但我仍然收到提示輸入 root 密碼。
執行此操作的規範方法是使用以下
BatchMode
選項:ssh -o BatchMode=yes …
根據手冊:
如果設置為“yes”,密碼片語/密碼查詢將被禁用。此選項在沒有使用者提供密碼的腳本和其他批處理作業中很有用。
我本來預計 和 的組合
PasswordAuthentication=no
就ChallengeResponseAuthentication=no
足夠了。ssh -vv
可能會提供線索。