Thiết lập khóa SSH do PuTTY tạo trong GitLab

Oct 06 2020

Tôi đã tạo khóa công khai và khóa riêng tư bằng PuTTYgen và thêm khóa công khai vào tài khoản GitLab của mình, nhưng khi tôi cố gắng sao chép kho lưu trữ, nó vẫn muốn có mật khẩu.

Tôi đã đọc các hướng dẫn sau từ trang web này

  1. Cài đặt Putty và các tiện ích liên quan

  2. Đặt biến môi trường hệ thống trong Windows (Control Panel \ System and Security \ System -> và nhấp vào "Cài đặt hệ thống nâng cao" ở khung bên trái. Sau đó nhấp vào "Biến môi trường") GIT_SSH =% path_to_plink.exe% (Lưu ý plink. exe đi vào bất cứ nơi nào bạn cài đặt Putty)

  3. Tạo khóa ssh bằng puttygen.exe (ssh2-rsa, 4096, comment = GitLab và đặt mật khẩu)

  4. Thêm khóa vào pageant.exe và khóa công khai vào hồ sơ GitLab của bạn

  5. Đảm bảo bạn bắt đầu một trình bao lệnh mới để git nhận ra giá trị GIT_SSH

  6. Hãy thử hai lệnh này để kiểm tra kết nối trước. Điều này sẽ cung cấp cho bạn một cửa sổ bật lên xác thực kết nối

  7. đặt Git putty [email protected]:% user% /% repo.git%

Sử dụng:

  1. Bắt đầu pagent.exe từ thư mục Putty
  2. Thêm khóa vào pageant.exe

Tôi vẫn không hiểu bước 5 và trong bước 6 tôi không thấy lệnh shell nào để thực hiện kiểm tra.

Có ai giúp được không?

Cập nhật:

Vấn đề là tôi không khởi động lại cmd của mình. Nhưng bây giờ tôi nhận được thông báo này: Khóa máy chủ của máy chủ không được lưu trong bộ đệm ẩn trong sổ đăng ký. Bạn không có gì đảm bảo rằng máy chủ là máy tính mà bạn nghĩ. Tệp tham chiếu khóa ssh-ed25519 của máy chủ là: ssh-ed25519 255 d7: 0d: ca: f2: c1: 01: 46: 80: 68: 4c: 5d: e6: d4: 52: f9: 16 Nếu bạn tin cậy máy chủ này, nhập "y" để thêm khóa vào bộ nhớ cache của PuTTY và tiếp tục kết nối. Nếu bạn muốn tiếp tục kết nối chỉ một lần mà không cần thêm khóa vào bộ nhớ đệm, hãy nhập "n". Nếu bạn không tin tưởng máy chủ này, hãy nhấn Quay lại để hủy kết nối. Lưu khóa trong bộ nhớ đệm? (y / n)

Và nó không cho phép tôi gõ bất cứ thứ gì ở đó.

Trả lời

1 VonC Oct 06 2020 at 11:31

Đảm bảo bạn bắt đầu một trình bao lệnh mới để git nhận ra giá trị GIT_SSH

Nhập git bash, sau đó nhập " set|grep GIT_SSH"

Nếu kết quả trống, phiên CMD mà bạn đã mở phiên của mình không kế thừa biến môi trường Người dùng Windows của bạn. Mở CMD mới.

Nhưng tôi không khuyên bạn nên sử dụng Putty. Git cho Windows đi kèm với openssh và như vậy là đủ, trong một phiên git bash

ssh-keygen -t rsa 
<enter a passphrase>

Xem thêm tại GitHub (cũng sẽ áp dụng cho GitLab) " Tạo khóa SSH mới và thêm nó vào ssh-agent "

Các OP Petar Yakov báo cáo phải đăng ký mật khẩu của tài khoản GitLab của họ trong Credential Manager.
Sau đó, quyền truy cập SSH hoạt động.