SSH 인증을 위해 PuTTY의 Plink 응용 프로그램을 사용하여 Windows 용 Git 설정을 얻는 단계별 가이드를 작성했습니다.
아래를 따르십시오 :
설정
PuTTY 다운로드 페이지 에서 제공되는 putty.zip 을 설치 하거나 개별적으로 다운로드 할 수 있습니다.
RSA 및 PPK 키 생성
- Git Bash를 사용
ssh-keygen
하여 RSA 공개 / 개인 키 쌍을 생성하는 데 사용하십시오 . 이 작업을 수행하는 방법에 대한 자세한 내용은 공식 SSH 키 생성 기사를 참조하십시오.
- PuTTYgen에서 →
~/.ssh/id_rsa
를 통해 기존 (개인) 키를 가져옵니다 .ConversionsImport key
- 가져온 키를 Save private key버튼을 통해로 저장하십시오
~/.ssh/id_rsa.ppk
.
이제 ~/.ssh
디렉토리에 다음 키가 있어야합니다 .
id_rsa
: 개인 (OpenSSH) RSA 키
id_rsa.pub
: 공개 (OpenSSH) RSA 키
id_rsa.ppk
: 개인 (PuTTY) 키
Windows 용 Git을 설치 하십시오 .
Plink를 사용하도록 선택하십시오.
참고 : 이미 Git을 설치 한 경우 설치 프로그램을 다시 실행하고 Plink를 기본 SSH 애플리케이션으로 설정할 수 있습니다.
환경 경로를 설정하십시오.
- 에서 제어판 , 시스템보기로 이동합니다.
- 고급 시스템 설정을 선택하십시오 .
- 에서 시스템 등록 정보 창에서 클릭 고급 탭을 선택합니다.
- 를 클릭하십시오 Environment variables….
다음 시스템 변수를 추가하십시오 (아직 설정되지 않은 경우).
GIT_HOME
: C:\Program Files\Git
GIT_SSH
: C:\Program Files (x86)\PuTTY\plink.exe
Git 바이너리 디렉토리를 시스템 경로에 추가하십시오.
Path
: %Path%;%GIT_HOME%\bin
Pageant를 열고에 위치한 ppk 키를로드하십시오 ~/.ssh/id_rsa.ppk
.
참고 : Pageant가 시작되면 오른쪽의 시간 옆에있는 작업 표시 줄에있는 시스템 트레이에서 해당 아이콘을 클릭 할 수 있습니다.
Putty를 열고 연결하여 SSH를 통해 연결을 테스트하고 서버 키를 알려진 호스트로 추가하십시오.
호스트 이름 예 :
- GitHub :
git@github.com:22
(또는 ssh-agent를 통해 ssh -Tv git@github.com
)
- BitBucket :
git@bitbucket.org:22
(또는 ssh-agent를 통해 ssh -Tv git@bitbucket.org
)
Git Bash를 시작하십시오.
매번 암호를 입력하지 않고도 원격 호스트에서 밀고 당길 수 있어야합니다.
지름길
시작 디렉토리에 바로 가기를 배치하여 Windows 계정에 로그인 할 때마다 키를 자동로드 할 수 있습니다.
배치 스크립트를 통해
이 아이디어는이 질문에 대한 답변에서 영감을 얻었습니다.
슈퍼 유저 : 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
Windows 탐색기를 통해
Windows 탐색기에서 시작 디렉토리로 이동하십시오.
사용자 Startup/
디렉토리 (선호)는 다음 위치에 있습니다.
%AppData%\Microsoft\Windows\Start Menu\Programs\Startup
모든 사용자 Startup/
디렉토리는 다음 위치에 있습니다.
%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup
폴더 내부를 마우스 오른쪽 버튼으로 클릭하고 New→Shortcut
에서 바로 가기 만들기 대화 상자에서 다음 정보를 입력합니다.
- 위치:
"C:\Program Files (x86)\PuTTY\pageant.exe"
- 이름:
Pageant Autoload
새 바로 가기를 마우스 오른쪽 버튼으로 클릭 Properties하고 상황에 맞는 메뉴에서 선택하십시오 .
바로 가기 탭 에서 다음 필드를 수정 하십시오.
- 표적:
"%PROGRAMFILES(x86)%\PuTTY\pageant.exe" id_rsa.ppk
- 에서 시작:
%USERPROFILE%\.ssh
노트:
32 비트 Windows OS를 사용하는 %PROGRAMFILES%
경우 대신 환경 변수를 사용해야합니다 %PROGRAMFILES(x86)%
.
모든 사용자 시작 디렉토리에 바로 가기를 배치 한 경우 현재 사용자가 디렉토리에 id_rsa.ppk
키를 가지고 있는지 확인하십시오 ~/.ssh
. 그렇지 않으면 키가 자동로드되지 않습니다.
맺음말
거기 있어요 다음에 Windows 프로필에 로그인하면 호출기 암호를 입력하여 키의 암호를 입력하라는 메시지가 나타납니다. 키에 비밀번호를 설정하지 않은 경우 프롬프트없이 키가 자동으로로드되어야합니다.
키가로드되었는지 확실하지 않은 경우 시스템 트레이의 Pageant 컨텍스트 메뉴에서 View Keys 를 선택하여 Pageant의 현재 키를 봅니다 .