Điểm:0

SSHD: Dấu vân tay của khóa chung không như mong đợi

lá cờ ua

hai máy trong hình cho vấn đề của tôi:

  • Máy chủ: Chạy Ubuntu Server 20.04.3 LTS, chạy máy chủ ssh
  • Máy khách: Chạy Ubuntu Desktop 20.04.3 LTS, chạy máy khách ssh

Tôi hy vọng cặp khóa ED25519 đã tạo của tôi sẽ được sử dụng. Các phím được lưu trữ như sau:

  • id_ed25519.pub: được đính kèm trong ~/.ssh/authorized_keys trên "máy chủ"
  • id_ed25519: được lưu trữ trong ~/.ssh trên "máy khách"

Cấu hình trên máy chủ trong /etc/ssh/sshd.config:

  • PubkeyAuthentication có
  • AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
  • Mật khẩu Xác thực không

Cấu hình trên máy khách:

  • id_ed25519 được cung cấp qua móc khóa (thực hiện ssh-add cho ssh-agent, yêu cầu đúng cụm mật khẩu)

Bây giờ điều gì khiến tôi đau đầu:

Bước 1: Tôi kết nối từ máy khách đến máy chủ. Khi tôi truy cập lần đầu tiên (trống ~/.ssh/known_hosts trên máy khách), tôi nhận được: Dấu vân tay khóa ECDSA là SHA256: [DefaultKeyFingerprint]. Bạn có chắc chắn muốn tiếp tục kết nối? [DefaultKeyFingerprint] là trình giữ chỗ cho dấu vân tay được hiển thị. Hóa ra đó không phải là dấu vân tay mà tôi mong đợi. Kỳ vọng của tôi là: id_ed25519.pub được máy chủ sử dụng để lấy dấu vân tay. Điều này sẽ dẫn đến một dấu vân tay khác (được kiểm tra qua "ssh-keygen -l -f"). Hãy gọi cái này là [Dấu vân tay dự kiến].

Tôi đã cố gắng hiểu [DefaultKeyFingerprint] đến từ đâu. Kết quả: Nó phù hợp với khóa mặc định ssh_host_ecdsa_key.pub được tạo bởi sshd trong /etc/ssh/

Bước 2: Sau khi chấp nhận cảnh báo được đề cập ở trên, tôi có thể kết nối thành công.

Tôi muốn biết liệu khóa chung đằng sau [DefaultKeyFingerprint] hay [ExpectedFingerprint] đã được sử dụng hay chưa. Hai dấu hiệu cho thấy [Dấu vân tay dự kiến] đã được sử dụng:

  • Chỉ định khóa riêng phía sau [DefaultKeyFingerprint] khi thực thi "ssh" trên máy khách không được "Máy chủ" chấp nhận, ngay cả khi tệp khóa riêng được chỉ định bằng tùy chọn -i. Lỗi là: Quyền bị từ chối (khóa công khai). Điều này phù hợp với mong đợi của tôi vì tôi đã cho phép ở phía máy chủ trong ~/.ssh/authorized_keys chỉ khóa công khai phù hợp với [Dấu vân tay dự kiến]
  • Khi tôi chạy trên "Máy chủ": trạng thái systemctl ssh sau khi đăng nhập thành công, tôi nhận được đầu ra sau:
Dez 22 10:57:42 [my_machine] sshd[3255]: Khóa được chấp nhận ED25519 SHA256:[Dấu vân tay dự kiến] được tìm thấy tại ~/.ssh/authorized_keys:1
Dez 22 10:57:42 [my_machine] sshd[3255]: Khóa công khai được chấp nhận cho [người dùng] từ 192.168.178.35 cổng 50048 ssh2: ED25519 SHA256:[Dấu vân tay dự kiến]
Dez 22 10:57:42 [my_machine] sshd[3255]: pam_unix(sshd:session): phiên mở cho người dùng [người dùng] bởi (uid=0)

Những câu hỏi của tôi:

  • Bạn có thể xác nhận lập luận của tôi ở trên rằng [Dấu vân tay dự kiến] thực sự đã được sử dụng không?
  • Tại sao "Máy chủ" hiển thị dưới dạng dấu vân tay [DefaultKeyFingerprint] chứ không phải [Dấu vân tay dự kiến] và làm cách nào để "Máy chủ" hiển thị [Dấu vân tay mong đợi]?

Nhận xét - không biết nếu nó quan trọng: Khi tôi tạo cặp khóa dẫn đến [Dấu vân tay dự kiến], tôi đã chỉ định một dấu hoa thị trong tên miền *.mydomain.com. Đầu ra của ssh-keygen -l -f cho cả hai khóa chung:

256 SHA256:[Dấu vân tay dự kiến] *.mydomain.com (ED25519)
256 SHA256:[DefaultKeyFingerprint] root@mymachine (ECDSA)

Cảm ơn trước cho những suy nghĩ của bạn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.