Tôi đã tập hợp một hướng dẫn từng bước để có được thiết lập Git cho các cửa sổ bằng ứng dụng Plink của PuTTY để xác thực SSH.
Thực hiện theo bên dưới:
Thiết lập
Cài đặt putty.zip có sẵn tại Trang Tải xuống PuTTY hoặc bạn có thể tải xuống riêng lẻ.
PuTTY: putty.exe (hoặc bằng FTP )
Máy khách SSH và Telnet.
Plink: plink.exe (hoặc bằng FTP )
Giao diện dòng lệnh cho mặt sau PuTTY kết thúc.
Cuộc thi: pageant.exe (hoặc bằng FTP )
Một tác nhân xác thực SSH cho PuTTY, PSCP, PSFTP và Plink.
PuTTYgen: puttygen.exe (hoặc bằng FTP )
Một tiện ích tạo khóa RSA và DSA.
Tạo khóa RSA và PPK
- Sử dụng Git Bash, sử dụng
ssh-keygen
để tạo một cặp khóa công khai / riêng tư RSA. Thông tin thêm về cách thực hiện việc này có thể được tìm thấy trên bài viết chính thức Tạo khóa SSH .
- Trong PuTTYgen, nhập khóa
~/.ssh/id_rsa
(riêng tư) hiện tại của bạn , thông qua Conversions→ Import key.
- Lưu khóa nhập qua Save private keynút như
~/.ssh/id_rsa.ppk
.
Bây giờ bạn sẽ có các khóa sau trong ~/.ssh
thư mục của bạn :
id_rsa
: Khóa RSA riêng tư (OpenSSH)
id_rsa.pub
: Khóa RSA công khai (OpenSSH)
id_rsa.ppk
: Khóa riêng (PuTTY)
Cài đặt Git cho Windows .
Hãy chắc chắn rằng bạn chọn sử dụng Plink.
Lưu ý: Nếu bạn đã cài đặt Git, bạn có thể chạy lại trình cài đặt và đặt Plink làm ứng dụng SSH mặc định của mình.
Đặt đường dẫn Môi trường của bạn.
- Trong Bảng điều khiển , điều hướng đến chế độ xem Hệ thống.
- Chọn cài đặt hệ thống nâng cao .
- Trong cửa sổ Thuộc tính hệ thống , bấm vào tab Nâng cao .
- Nhấn vào đây Environment variables….
Thêm các biến hệ thống sau (nếu chưa được đặt):
GIT_HOME
: C:\Program Files\Git
GIT_SSH
: C:\Program Files (x86)\PuTTY\plink.exe
Nối thư mục nhị phân Git vào đường dẫn hệ thống.
Path
: %Path%;%GIT_HOME%\bin
Mở cuộc thi và tải khóa ppk tại ~/.ssh/id_rsa.ppk
.
Lưu ý: Khi Cuộc thi đã bắt đầu, bạn có thể nhấp vào biểu tượng của nó trong khay hệ thống nằm trên thanh tác vụ, bên cạnh thời gian, bên phải.
Mở Putty và kết nối để kiểm tra kết nối của bạn thông qua SSH và thêm khóa của máy chủ làm máy chủ đã biết.
Ví dụ tên máy chủ:
- GitHub:
git@github.com:22
(hoặc thông qua ssh-agent ssh -Tv git@github.com
)
- BitBucket:
git@bitbucket.org:22
(hoặc thông qua ssh-agent ssh -Tv git@bitbucket.org
)
Bắt đầu Git Bash.
Bạn sẽ có thể đẩy và kéo từ máy chủ từ xa mà không cần nhập mật khẩu mỗi lần.
Đường tắt
Bạn có thể đặt một phím tắt trong thư mục khởi động để tự động tải khóa của bạn mỗi khi bạn đăng nhập vào tài khoản Windows của mình.
Qua tập lệnh hàng loạt
Ý tưởng này được lấy cảm hứng từ một câu trả lời cho câu hỏi này:
Siêu người dùng: Làm thế nào để tạo một lối tắt từ CMD? .
REM |==================================================================|
REM | Pageant Autoload.bat |
REM | |
REM | This script creates a shortcut for auto-loading a PPK (key) in |
REM | Pageant by writing a temporary VB script and executing it. The |
REM | following information below is added to the shortcut. |
REM | |
REM | Filename : Pageant Autoload |
REM | Target : pageant.exe |
REM | Arguments : id_rsa.ppk |
REM | Start in : ~/.ssh |
REM |==================================================================|
@echo off
REM |==================================================================|
REM | Global Values - Do not touch these! |
REM |==================================================================|
SET VBSCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs"
SET STARTUP_DIR=Microsoft\Windows\Start Menu\Programs\Startup
SET STARTUP_USER_DIR=%APPDATA%\%STARTUP_DIR%
SET STARTUP_ALL_USERS_DIR=%PROGRAMDATA%\%STARTUP_DIR% REM Alternative
REM |==================================================================|
REM | Shortcut Values - You can change these to whatever you want. |
REM |==================================================================|
SET FILENAME=Pageant Autoload.lnk
SET TARGET=%PROGRAMFILES(x86)%\PuTTY\pageant.exe
SET ARGUMENTS=id_rsa.ppk
SET START_IN=%%USERPROFILE%%\.ssh
SET DESCRIPTION=Autoload PuTTY key with Pageant on startup (Ctrl+Alt+S)
SET HOTKEY=CTRL+ALT+S
REM |==================================================================|
REM | Write a new VB script, on the fly; execute and delete it. |
REM |==================================================================|
ECHO Set oWS = WScript.CreateObject("WScript.Shell") >> %VBSCRIPT%
ECHO sLinkFile = "%STARTUP_USER_DIR%\%FILENAME%" >> %VBSCRIPT%
ECHO Set oLink = oWS.CreateShortcut(sLinkFile) >> %VBSCRIPT%
ECHO oLink.TargetPath = "%TARGET%" >> %VBSCRIPT%
ECHO oLink.Arguments = "%ARGUMENTS%" >> %VBSCRIPT%
ECHO oLink.WorkingDirectory = "%START_IN%" >> %VBSCRIPT%
ECHO oLink.Description = "%DESCRIPTION%" >> %VBSCRIPT%
ECHO oLink.HotKey = "%HOTKEY%" >> %VBSCRIPT%
ECHO oLink.Save >> %VBSCRIPT%
CScript //Nologo %VBSCRIPT%
DEL %VBSCRIPT% /f /q
Qua Windows Explorer
Điều hướng đến thư mục khởi động trong Windows Explorer.
Thư mục người dùng Startup/
(ưu tiên) được đặt tại:
%AppData%\Microsoft\Windows\Start Menu\Programs\Startup
Tất cả Startup/
thư mục Người dùng được đặt tại:
%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup
Nhấp chuột phải vào thư mục và chọn New→Shortcut
Trong hộp thoại Tạo lối tắt , nhập thông tin sau.
- Vị trí:
"C:\Program Files (x86)\PuTTY\pageant.exe"
- Tên:
Pageant Autoload
Nhấp chuột phải vào phím tắt mới và chọn Propertiestừ menu ngữ cảnh.
Sửa đổi các trường sau trong tab Shortcut :
- Mục tiêu:
"%PROGRAMFILES(x86)%\PuTTY\pageant.exe" id_rsa.ppk
- Bắt đầu vào:
%USERPROFILE%\.ssh
Ghi chú:
Nếu bạn đang sử dụng HĐH Windows 32 bit, bạn nên sử dụng %PROGRAMFILES%
biến môi trường thay vì %PROGRAMFILES(x86)%
.
Nếu bạn đã đặt phím tắt trong thư mục khởi động Tất cả người dùng, hãy đảm bảo rằng người dùng hiện tại có một id_rsa.ppk
khóa trong ~/.ssh
thư mục của họ hoặc khóa sẽ không tự động tải.
Đóng nhận xét
Có bạn có nó. Lần tới khi bạn đăng nhập vào hồ sơ Windows của mình, bạn sẽ được chào đón bằng lời nhắc về Cuộc thi để nhập mật khẩu cho khóa của mình. Nếu bạn không đặt mật khẩu trên khóa của mình, thì khóa của bạn sẽ được tải tự động mà không cần nhắc.
Nếu bạn không chắc chắn liệu khóa của bạn đã tải hay chưa, hãy xem các khóa hiện tại trong Cuộc thi bằng cách chọn Phím Xem từ menu ngữ cảnh cho Cuộc thi trong khay hệ thống.