Windows에서 Git 및 ssh-agent와 함께 SSH를 사용하는 방법

2520 단어 windowsssh
최근 프로젝트를 위해 Windows(wsl 없음)에서 기본적으로 git을 실행해야 했습니다. 암호와 함께 ssh 인증서를 사용하여 git 공급자를 인증합니다.

SSH는 연결을 사용할 때마다 인증서 암호를 요구합니다. git 명령을 사용할 때 이 암호를 터미널에 입력하는 것은 성가신 일입니다.

문제



대부분의 *nix 시스템에는 ssh와 함께 Git을 사용할 때 암호를 입력할 필요가 없도록 암호를 저장하는 ssh-agent가 설치되어 있습니다.

일부 기본 설정 및 경로가 *nix 시스템과 다르기 때문에 Ssh-agent는 Windows에서 구성하기가 더 어렵습니다.

GitBash를 사용하기 때문에 Git for Windows를 사용하고 싶지 않았습니다. git이 Windows의 모든 터미널에서 작동하기를 원했기 때문에 WSL을 사용할 수 없었습니다.

다음은 내장된 Windows ssh-agent와 함께 Windows에서 Git을 사용하기 위해 조사해야 했던 단계입니다.

참고: 필요한 작업을 수행하려면 관리자여야 합니다.

Windows에서 SSL 열기



Windows 10 이상을 사용하는 경우 기본 제공 openssl 인스턴스가 있습니다. 선택적 기능 설정 창에서 켤 수 있습니다.

Microsoft는 여기에서 추가 지침을 제공합니다. https://learn.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse?tabs=gui

없는 경우 지침에 따라 설치하십시오.

인증서에 대한 참고 사항



사용 가능한 ssh 인증서가 있고 모든 ssh 별칭이 구성 파일에 설정되어 있다고 가정합니다.

Windows에서 구성 파일의 기본 위치는 다음과 같습니다.

$HOME\.ssh\config


ssh 별칭이 필요한 경우 해당 파일을 만들어야 합니다. 이에 대한 자세한 내용은 git 계정용 ssh에 대한 내 기사https://www.darraghoriordan.com/2021/05/04/configure-multiple-github-accounts-one-computer/에서 읽을 수 있습니다.

SSH 에이전트 활성화



powershell 터미널을 관리자 권한으로 열고 다음을 실행하여 ssh-agent를 사용할 수 있도록 합니다.

# Have ssh agent start automatically
Get-Service ssh-agent | Set-Service -StartupType Automatic

# Start ssh agent now
Start-Service ssh-agent

# Should work successfully
Get-Service ssh-agent


Windows ssh를 사용하도록 git 구성




# tell git to use ssh.exe
git config --global core.sshCommand "'C:\Windows\System32\OpenSSH\ssh.exe'"



ssh 에이전트에 키 로드



ssh-agent가 액세스할 수 있는 폴더에 키를 복사합니다. $HOME/.ssh의 아무 곳이나 괜찮을 것입니다.

그런 다음 ssh-agent에 키를 추가합니다. 암호를 묻는 메시지가 표시되면 ssh 에이전트가 암호를 기억합니다.

ssh-add "C:\Users\darragh\.ssh\authorized_keys\darraghPersonalGithub"

좋은 웹페이지 즐겨찾기