Cụm mật khẩu của khóa SSH bảo vệ tệp, không phải tuyến đường
Cụm mật khẩu mã hóa tệp khóa riêng; nó không thu hồi danh tính và không bảo đảm tuyến đường. Lưu trữ riêng, tuổi thọ của tác nhân và sử dụng không giám sát.
Một ổ đĩa sao lưu từ máy tính xách tay cũ vẫn chứa khóa SSH riêng, và ai đó hỏi liệu VPN có bảo vệ nó không. Không, và chưa từng. VPN bảo vệ đường đi giữa hai mạng; cụm mật khẩu bảo vệ tệp; tác nhân bảo vệ một phiên đang chạy. Ba cơ chế khác nhau, ba kiểu hỏng khác nhau, và một bản sao bị đánh cắp chỉ quan tâm đến hai cái đầu.
Cụm mật khẩu thuộc về tệp
Cụm mật khẩu của khóa SSH mã hóa vật liệu khóa riêng khi nằm yên. Nó không phải mật khẩu tài khoản gửi đến máy chủ, và không phải thông tin đăng nhập dùng để tham gia VPN. Nhầm lẫn hai thứ này dẫn đến những thay đổi không giải quyết được việc phơi bày.
Hướng dẫn ssh-keygen của OpenSSH bao gồm việc xử lý cụm mật khẩu, kể cả công tắc -p đặt cụm mật khẩu mới trên khóa đã tồn tại.
Với khóa đã tồn tại, dạng lệnh rất đơn giản, và nó ghi lại tệp:
ssh-keygen -p -f ~/.ssh/id_ed25519
Hãy dùng quy trình bảo trì và phục hồi đã được chủ khóa phê duyệt, vì đây là thao tác ghi, không phải kiểm tra. Đừng công bố tệp riêng và đừng đặt cụm mật khẩu thật trên dòng lệnh dùng chung. Đổi cụm mật khẩu không mã hóa lại một bản sao đã lấy trước đó. Ghi vị trí bản sao cũ vào phiếu để chủ sở hữu quyết định có hủy nó hay không.
Một bản sao sống lâu hơn máy tính xách tay và đường hầm
Khi tệp khóa đã bị sao chép, kết nối VPN đang hoạt động của máy tính xách tay không còn nói gì về nó nữa. Điều quan trọng là bản thân tệp được bảo vệ tốt đến đâu, và máy chủ nào vẫn tin tưởng khóa công khai tương ứng.
Đổi cụm mật khẩu trên tệp hiện tại không chạm vào bản sao, và không xóa cùng khóa công khai đó khỏi authorized_keys trên máy chủ. Thu hồi và mã hóa lại là hai hành động riêng.
Vì vậy hãy coi một khóa riêng bị rò rỉ là sự kiện danh tính, không phải sự kiện mạng. Xóa hoặc thay khóa đã được chấp nhận thông qua các máy chủ và quy trình đăng ký sở hữu nó. Dừng VPN chỉ giới hạn một tuyến đường tại một thời điểm; đó không phải thu hồi.
Mở khóa di chuyển bí mật vào một tác nhân
Tác nhân giữ các danh tính đã giải mã để xác thực sau này, nhờ đó người dùng không phải gõ lại cụm mật khẩu ở mỗi kết nối. Đó là tiện ích có ranh giới bảo mật riêng.
ssh-agent có thể giới hạn thời gian một danh tính được nạp qua tùy chọn -t, và cài đặt cho từng danh tính có thể vượt giới hạn đó. Hãy chọn chính sách cho tác nhân bạn thực sự chạy thay vì cho rằng ngắt VPN sẽ quên mọi khóa đã nạp.
Một tiến trình bị xâm phạm sau khi khóa được mở khóa là vấn đề khác với tệp mã hóa bị đánh cắp. Chuyển tiếp tác nhân sang máy chủ khác ủy thác khả năng xác thực mà không sao chép tệp khóa, nên chỉ bật nó cho nhu cầu đã được phê duyệt.
Liệt kê những gì tác nhân đang giữ trước và sau một thay đổi:
ssh-add -l
Công việc không giám sát cần kế hoạch riêng
Một tác vụ theo lịch không thể trả lời lời nhắc. Nó cần một thỏa thuận thông tin đăng nhập máy đã được phê duyệt, và việc giữ bí mật mở khóa trong cùng thư mục với khóa, đọc được bởi cùng tài khoản, không tạo ra ranh giới thứ hai.
Hãy làm việc với chủ dịch vụ về việc phân phối bí mật được hỗ trợ hoặc vận hành dựa trên phần cứng, và bao gồm gia hạn, sự cố và phục hồi. Mong muốn có người ngồi trước bàn phím làm thay đổi diện mạo của sự cố so với một máy chủ khởi động mà không ai trông coi.
Cũng giữ kiểm tra danh tính máy chủ trên máy chủ và các hạn chế tài khoản của nó. Tuyến VPN cho bạn một đường riêng; nó không chứng minh rằng mọi trình nghe SSH bạn chạm tới là máy chủ bạn định. Ghi trình nghe và dấu vân tay khóa máy chủ vào cùng danh mục với chính khóa.
Xác minh các ranh giới riêng rẽ
Kiểm tra từng ranh giới bằng câu hỏi của chính nó. Tệp có mở được khi không có cụm mật khẩu? Tác nhân có còn giữ danh tính sau khi ngắt kết nối? Máy chủ có còn chấp nhận khóa công khai?
Hai lệnh trả lời câu thứ nhất và thứ ba:
ssh-keygen -y -f ~/.ssh/id_ed25519
ssh -v [email protected]
Ghi việc bảo vệ tệp, việc sử dụng khóa được phép và việc xóa ở phía máy chủ thành ba mục riêng. Đường hầm, cụm mật khẩu và tác nhân mỗi thứ canh giữ một phần khác nhau của mối quan hệ, và chỉ một trong số đó liên quan đến mạng.