Tại sao khóa công khai SSH nằm trên máy chủ mà không phải với máy khách?


12

Tôi hoàn toàn không hiểu lý thuyết đằng sau việc giữ các khóa công khai trên máy chủ. Trong hộp khóa tương tự khóa công khai / khóa riêng, để mở khóa hộp của Alice, Alice giữ khóa riêng trong khi khóa chung được phân phối cho Bob. Có vẻ như máy chủ đóng vai trò của lockbox, vậy tại sao nó lại giữ khóa chung?

Câu trả lời:


20

Hãy nhớ rằng máy chủ DOES có khóa riêng và khóa chung tách biệt hoàn toàn với khóa mà bạn tạo khi là người dùng. Khóa riêng cho máy chủ thường được lưu trữ với cấu hình máy chủ và khóa chung được máy chủ truyền đi khi bạn cố gắng kết nối. Máy khách của bạn so sánh khóa chung của máy chủ với tệp know_hosts của bạn. Nếu được sử dụng đúng cách, điều này ngăn chặn các cuộc tấn công MITM.

Bạn có khóa riêng cho tài khoản cá nhân của bạn. Máy chủ cần khóa công khai của bạn để có thể xác minh rằng khóa riêng của bạn cho tài khoản bạn đang cố sử dụng có được phép hay không.

Vì vậy, sử dụng ví dụ của bạn. Cả Bob và Alice đều có khóa riêng và khóa chung. Các khóa công khai đã được chia sẻ trước khi sử dụng hoặc là một phần của kết nối được sử dụng để xác minh dữ liệu được mã hóa bởi các khóa riêng là hợp pháp. Nếu khách hàng không có khóa chung hoặc có khóa chung khác, bạn sẽ nhận được cảnh báo đáng sợ. Nếu máy chủ không có khóa công khai của máy khách, bạn sẽ không được phép vào.


1
Aha! Điều đó có lý hơn. Tôi biết có một phương pháp để bảo vệ chống lại các cuộc tấn công của MITM, nhưng tôi không biết có một sự cố nào khác :) Cảm ơn vì sự giúp đỡ!
Connor Glosser

5

Bạn với tư cách là người dùng cung cấp thông tin chính là bạn khi bạn đăng nhập. Vì vậy, để được ủy quyền, bạn cần có khóa riêng vì máy chủ sẽ yêu cầu bất kỳ ai giả vờ là bạn (cố gắng đăng nhập bằng tên) để chứng minh điều đó.

Cách thức hoạt động là máy chủ gửi cho bạn một chút văn bản, yêu cầu bạn mã hóa nó và giải mã nó bằng khóa chung của bạn. Chỉ người có khóa riêng của bạn có thể làm điều này.


1

Nó giữ khóa công khai cho thuận tiện. Nếu không, bạn phải tạo PKI - một cái gì đó tương tự như SSL CA.

Ý tưởng sẽ là kiểm tra dấu vân tay của khóa công khai khi máy khách ssh yêu cầu bạn chấp nhận khóa máy chủ từ xa.


1

Tôi có thể nói rằng một sự tương tự tốt hơn là khóa chung của máy chủ là hộp khóa mở có chốt mà bạn có thể đóng (nhưng không mở), chỉ máy chủ mới có thể mở được. Câu hỏi thực sự là liệu bạn có tin tưởng khóa công khai (đó có thực sự Hộp của Alice không?), Bất cứ nơi nào bạn nhận được nó từ công khai theo định nghĩa, và đó là những gì PKI nói về.


1

Khóa công khai là một số rất lớn, có nguồn gốc toán học từ khóa riêng của bạn.

Nó có nguồn gốc theo cách hai số được liên kết với nhau,

nhưng do đó, những người chỉ biết khóa công khai không thể phát hiện ra khóa riêng. Khóa công khai là những gì bạn gửi cho các bên khác, người mà bạn muốn xác thực chính mình hoặc người bạn muốn gửi tin nhắn được mã hóa. Khóa công khai không nhạy cảm và không cần bảo vệ. Nó có thể được phổ biến công khai. babudilli98 @ gmail


1
Tôi không cảm thấy có gì mới trong câu trả lời này so với các câu trả lời khác đã được cung cấp năm năm trước.
kasperd
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.