Làm thế nào để tắt lời nhắc mật khẩu từ phía khách hàng ssh?


9

Tôi có một tập lệnh dựa trên xác thực ssh khóa công khai / riêng tư. Vấn đề là một số hệ thống bị cấu hình sai và không có sự tin cậy khóa công khai / riêng tư ssh được thiết lập. Khi điều đó xảy ra, sshhãy hỏi tôi mật khẩu chặn việc thực thi tập lệnh. Tôi đã thử lệnh này:

sudo ssh -o "PasswordAuthentication=no" -o "ChallengeResponseAuthentication=no" root@last-call

Nhưng tôi vẫn nhận được nhắc nhập mật khẩu root.


Sau khi dùng thử và lỗi tôi tìm thấy tùy chọn tôi cần. "PreferredAuthentications=publickey"
Dế đỏ

Là tốt hơn so với giải pháp đề xuất? (BatchMode)
knocte

Câu trả lời:


9

Cách chính tắc để làm điều này là với BatchModetùy chọn:

ssh -o BatchMode=yes …

Theo hướng dẫn :

Nếu được đặt thành mật khẩu, thì mật khẩu / truy vấn mật khẩu sẽ bị vô hiệu hóa. Tùy chọn này hữu ích trong các tập lệnh và các công việc hàng loạt khác mà không có người dùng nào có mặt để cung cấp mật khẩu.

Tôi đã mong đợi sự kết hợp PasswordAuthentication=noChallengeResponseAuthentication=nolà đủ mặc dù. ssh -vvcó thể mang lại một manh mối.


Điều đó cũng làm việc! $ sudo ssh last-call-2 Password: $ sudo ssh -o "BatchMode=yes" last-call-2 Permission denied (gssapi-keyex,gssapi-with-mic,publickey,password,keyboard-interactive).
Dế đỏ
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.