Ngăn chặn cảnh báo khóa máy chủ SSH RSA để thay đổi khóa so với địa chỉ IP


9

Tôi có một mạng được bật DHCP và cũng là một máy tính khởi động hệ điều hành kép và có các khóa SSH khác nhau trên mỗi (và vâng, tôi muốn giữ các khóa khác nhau trên mỗi thay vì sao chép cùng một khóa nhận dạng / khóa riêng cho mỗi). Vì địa chỉ IP không thay đổi giữa các hệ điều hành vì địa chỉ MAC là như nhau, khi kết nối với ssh, ngay cả khi không sử dụng địa chỉ IP mà là tên máy chủ thông qua DNS / mDNS, tôi nhận được cảnh báo:

Warning: the RSA host key for 'hostname' differs from the key for the IP address '192.168.1.172'
Offending key for IP in /Users/user/.ssh/known_hosts:37
Matching host key in /Users/user/.ssh/known_hosts:38
Are you sure you want to continue connecting (yes/no)?

Làm cách nào tôi có thể thay thế cảnh báo khi tên máy chủ khác với địa chỉ IP cho tên máy chủ đó, nhưng vẫn giữ khả năng kiểm tra khóa máy chủ giống nhau cho mỗi tên máy chủ? (mỗi hệ điều hành có một tên máy chủ duy nhất)

Câu trả lời:


19

Đặt CheckHostIP notrong tập tin ~ / .ssh / config của bạn. Tệp cấu hình ví dụ:

Host foo-win.local foo-win
  Hostname foo-win.local
  CheckHostIP no

Host foo-lin.local foo-lin
  Hostname foo-lin.local
  CheckHostIP no

Từ ssh_config (5) :

CheckhostIP

Nếu cờ này được đặt thành "có", ssh (1) sẽ kiểm tra thêm địa chỉ IP máy chủ trong tệp đã biết. Điều này cho phép ssh phát hiện nếu khóa máy chủ thay đổi do giả mạo DNS. Nếu tùy chọn được đặt thành "không", kiểm tra sẽ không được thực hiện. Mặc định là "có".


Làm việc tuyệt vời, ngay lập tức. Cảm ơn câu trả lời rõ ràng nhanh chóng và súc tích.
Adam MW
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.