Cụm mật khẩu SSH được ghi nhớ trong MacOSX Snow Leopard


8

Tôi đang đối mặt với một tình huống rất kỳ lạ với Snow Leopard. Tôi có một máy chủ Linux, được cấu hình để chấp nhận kết nối ssh chỉ được xác thực thông qua khóa RSA. Không mật khẩu. Trên máy tính xách tay của tôi, tôi đã triển khai chính xác khóa RSA với ssh-keygen và trong khi tôi làm điều đó, tôi đã thêm một cụm mật khẩu. Sau đó tôi đã di chuyển id_rsa.pub trên máy chủ Linux .ssh / ủy quyền.

Càng xa càng tốt. Bây giờ tôi thử từ máy tính xách tay Snow Leopard của mình để đăng nhập vào máy Linux. Tôi nhận được một cửa sổ bật lên yêu cầu tôi cho cụm mật khẩu. Đây là điều đầu tiên làm tôi ngạc nhiên, vì tôi đã mong đợi một yêu cầu mật khẩu vỏ, không phải là một cửa sổ bật lên. Ứng dụng yêu cầu cụm mật khẩu là ssh, theo các chi tiết trong cửa sổ bật lên này. Ngoài ra, có một tùy chọn "nhớ cụm từ trong móc khóa", bị vô hiệu hóa.

Tôi nhập mật khẩu của tôi. Cửa sổ bật lên biến mất và thiết bị đầu cuối đăng nhập chính xác vào máy Linux. Bây giờ nếu tôi đăng xuất và cố gắng ssh một lần nữa, đăng nhập xảy ra mà không có bất kỳ yêu cầu nào của cụm mật khẩu, đó không phải là điều tôi muốn.

Những điều tôi đã kiểm tra:

  • không có gì được lưu vào móc khóa Duyệt trong và không tìm thấy gì.
  • nếu tôi đóng / thoát thiết bị đầu cuối và mở một thiết bị mới, tôi vẫn không được yêu cầu cụm mật khẩu và ssh đăng nhập mà không có bất kỳ yêu cầu nào.
  • nếu tôi đăng xuất khỏi phiên MacOSX và đăng nhập lại, cụm mật khẩu được yêu cầu ở lần thử tiếp theo, một lần nữa với hộp thoại bật lên. Sau đó, nó không được yêu cầu nữa.

Mật khẩu được lưu trữ ở đâu? Điều gì đang xảy ra chính xác và làm cách nào tôi có thể buộc yêu cầu của cụm mật khẩu trong mỗi lần thử ssh?

Câu trả lời:


10

OS X sẽ tự động khởi chạy ssh-agent cho bạn khi cần khóa riêng của bạn. Khóa của bạn sau đó sẽ có sẵn thông qua ssh-agent (không nhập lại cụm mật khẩu của bạn) cho đến khi bạn đăng xuất khỏi OS X hoặc xóa khóa (thông qua ssh-add -dhoặc ssh-add -Dđể xóa tất cả các khóa).

Điều này tương tự như hành vi hệ thống * NIX tiêu chuẩn với ssh-agent và cho phép chức năng hữu ích như chuyển tiếp xác thực tác nhân ( ssh -A) hoạt động để bạn không phải đặt khóa riêng trên toàn mạng.


Nếu bạn muốn tắt ssh-agent (đối với tất cả người dùng máy Mac của bạn), bạn có thể xóa tệp /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist


Một cách khác là dỡ và vô hiệu hóa LaunchAgent:

sudo launchctl -w /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist

Các -wnguyên nhân khiến nó không chỉ dỡ mà còn đánh dấu và ghi nhớ nó là bị vô hiệu hóa.

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.