Câu trả lời:
Bạn có thể xác minh cụm mật khẩu khóa SSH của mình bằng cách tải nó vào tác nhân SSH. Với OpenSSH, điều này được thực hiện thông qua ssh-add
.
Khi bạn đã hoàn tất, hãy nhớ hủy cụm mật khẩu SSH của bạn khỏi thiết bị đầu cuối bằng cách chạy ssh-add -d
.
ssh-add -d
# restorecon -R -v /home/user
Để kiểm tra xem đây có phải là sự cố không (mặc dù lệnh trước không gây ra bất kỳ sự cố nào), bạn có thể sử dụng $ ls -lZR <home_dir>
để kiểm tra ngữ cảnh. Nếu bạn không nhìn thấy user_home_t
trên thư mục chính và ssh_home_t
trên .ssh
thư mục và authorized_keys
tệp, thì hãy sử dụng restorecon
để sửa chúng.
ssh-keygen -y
ssh-keygen -y
sẽ nhắc bạn nhập cụm mật khẩu (nếu có).
Nếu bạn nhập cụm mật khẩu chính xác , nó sẽ hiển thị cho bạn khóa chung được liên kết.
Nếu bạn nhập cụm mật khẩu sai , nó sẽ hiển thị load failed
.
Nếu khóa không có cụm mật khẩu, nó sẽ không nhắc bạn nhập cụm mật khẩu và ngay lập tức sẽ hiển thị cho bạn khóa chung được liên kết.
ví dụ,
Tạo một cặp khóa công khai / riêng tư mới, có hoặc không có cụm mật khẩu:
$ ssh-keygen -f /tmp/my_key
...
Bây giờ hãy xem nếu bạn có thể truy cập cặp khóa:
$ ssh-keygen -y -f /tmp/my_key
Sau đây là một ví dụ mở rộng, hiển thị đầu ra.
Tạo một cặp khóa công khai / riêng tư mới, có hoặc không có cụm mật khẩu:
$ ssh-keygen -f /tmp/my_key
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /tmp/my_key.
Your public key has been saved in /tmp/my_key.pub.
The key fingerprint is:
de:24:1b:64:06:43:ca:76:ba:81:e5:f2:59:3b:81:fe rob@Robs-MacBook-Pro.local
The key's randomart image is:
+--[ RSA 2048]----+
| .+ |
| . . o |
| = . + |
| = + + |
| o = o S . |
| + = + * |
| = o o . |
| . . |
| E |
+-----------------+
Cố gắng truy cập cặp khóa bằng cách nhập cụm mật khẩu chính xác. Lưu ý rằng khóa chung sẽ được hiển thị và trạng thái thoát ( $?
) sẽ 0
cho biết thành công:
$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBJhVYDYxXOvcQw0iJTPY64anbwSyzI58hht6xCGJ2gzGUJDIsr1NDQsclka6s0J9TNhUEBBzKvh9nTAYibXwwhIqBwJ6UwWIfA3HY13WS161CUpuKv2A/PrfK0wLFBDBlwP6WjwJNfi4NwxA21GUS/Vcm/SuMwaFid9bM2Ap4wZIahx2fxyJhmHugGUFF9qYI4yRJchaVj7TxEmquCXgVf4RVWnOSs9/MTH8YvH+wHP4WmUzsDI+uaF1SpCyQ1DpazzPWAQPgZv9R8ihOrItLXC1W6TPJkt1CLr/YFpz6vapdola8cRw6g/jTYms00Yxf2hn0/o8ORpQ9qBpcAjJN
$ echo $?
0
Cố gắng truy cập cặp khóa bằng cách nhập cụm mật khẩu không chính xác. Lưu ý rằng thông báo lỗi "tải không thành công" sẽ được hiển thị (thông báo có thể khác nhau tùy theo hệ điều hành) và trạng thái thoát ( $?
) sẽ 1
chỉ ra lỗi:
$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
load failed
$ echo $?
1
Cố gắng truy cập một cặp khóa không có cụm mật khẩu. Lưu ý rằng không có lời nhắc cho cụm mật khẩu, khóa chung sẽ được hiển thị và trạng thái thoát ( $?
) sẽ 0
cho biết thành công:
$ ssh-keygen -y -f /tmp/my_key_with_no_passphrase
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLinxx9T4HE6Brw2CvFacvFrYcOSoQUmwL4Cld4enpg8vEiN8DB2ygrhFtKVo0qMAiGWyqz9gXweXhdmAIsVXqhOJIQvD8FqddA/SMgqM++2M7GxgH68N+0V+ih7EUqf8Hb2PIeubhkQJQGzB3FjYkvRLZqE/oC1Q5nL4B1L1zDQYPSnQKneaRNG/NGIaoVwsy6gcCZeqKHywsXBOHLF4F5nf/JKqfS6ojStvzajf0eyQcUMDVhdxTN/hIfEN/HdYbOxHtwDoerv+9f6h2OUxZny1vRNivZxTa+9Qzcet4tkZWibgLmqRyFeTcWh+nOJn7K3puFB2kKoJ10q31Tq19
$ echo $?
0
ssh-keygen -y
yêu cầu tệp chính và cung cấp một mặc định khi nhấp trở lại như mong đợi.
ssh-keygen -y
kiểm tra cụm mật khẩu của khóa ssh của mình. Nó hoạt động tốt, ngoại trừ Ubuntu của tôi trở nên chậm đáng kinh ngạc. Hầu hết các chương trình có thể khởi động sau một phút hoặc hơn trong khi mức sử dụng CPU là 100%. Sau khi khởi động lại máy tính xách tay của tôi, tôi có thể đăng nhập hầu như không mất vài phút để xem máy tính để bàn của mình. Cuối cùng tôi đã tìm thấy vấn đề này trên Ask Ubuntu . Tôi đã phải bắt đầu bằng cách gnome-keyring-daemon
giải quyết vấn đề.
Mở rộng giải pháp của @ RobBednark sang kịch bản Windows + PuTTY cụ thể, bạn có thể làm như vậy:
Tạo cặp khóa SSH với PuTTYgen (theo cách thủ công tạo khóa SSH của bạn trong Windows ), lưu nó vào tệp PPK;
Với menu ngữ cảnh trong Windows Explorer, chọn Chỉnh sửa bằng PuTTYgen. Nó sẽ nhắc nhập mật khẩu.
Nếu bạn gõ sai mật khẩu, nó sẽ chỉ nhắc lại.
Lưu ý, nếu bạn muốn nhập, hãy sử dụng lệnh sau trên thư mục chứa tệp PPK : puttygen private-key.ppk -y
.
Nếu cụm mật khẩu của bạn là để mở khóa khóa SSH của bạn và bạn không có ssh-agent
, nhưng đã cài đặt sshd (trình nền SSH) trên máy của bạn, hãy làm:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys;
ssh localhost -i ~/.ssh/id_rsa
Trong trường hợp ~/.ssh/id_rsa.pub
là chìa khóa công cộng, và ~/.ssh/id_rsa
là chìa khóa riêng.
passphrase
, không có mật khẩu;)