SSH 키-여전히 비밀번호 및 비밀번호 문구 요청


495

리포지토리를 복제 할 때 항상 사용자 이름과 비밀번호를 묻는 Github을 사용하여 다소 '퍼팅'했습니다. 이 단계는 워크 플로 내에서 성가 시므로이 단계를 무시하고 싶습니다.

이 안내서를 사용하여 SSH 키 (성공적으로 설정)를 설정하려고했습니다. https://help.github.com/articles/generating-ssh-keys 그리고 나는 성공했습니다.

내 문제는 저장소를 복제 할 때 (SSH를 사용하여) 여전히 github 비밀번호와 암호 문구를 묻는 것입니다. 이 SSH 키를 설정 한 후에는 더 이상 그렇게 할 필요가 없다는 것을 이해했습니다.

무엇을 물어볼 지 잘 모르겠으므로 목표를 말씀 드리겠습니다.

항상 Github 정보를 입력하지 않고도 리포지토리를 복제 할 수 있기를 원합니다 .

SSH 키에서 무엇을 놓치고 있습니까? 누군가가 어떤 지침이나 리소스를 제공 할 수 있다면 GitHub의 SSH 인증과 관련하여 항상 약간의 손실을 느꼈기 때문에 감사하겠습니다.

내 지식으로, 이것은 제대로 작동하는지 테스트하는 명령입니다. 다음은 내 콘솔의 출력입니다.

~ $ ssh -T git@github.com
Saving password to keychain failed
Enter passphrase for key '/Users/MYNAME/.ssh/id_rsa':
Hi MYNAME! You've successfully authenticated, but GitHub does not provide shell access.

비밀번호를 입력 할 때 먼저 실패해야합니까? 그런 다음 암호를 입력하면 통과합니다.


1
당신은 어느 OS에 있습니까? 최신 Linux Desktop은 암호문을 키링 관리자에 저장하도록 제안합니다. Mac OS X와 ​​동일합니다. Windows에서는의 pageant일부인을 사용할 수 있습니다 putty. 이 모든 목표는 동일합니다. PC를 시작한 후 암호 문구를 한 번만 입력하면, 키 관리자 에이전트는 재부팅 할 때까지 이후 사용시이를 ssh로 전달합니다.
janos


2
나는 파티에 조금 늦었지만 github의 작은 클론 탭 / 버튼에는 "SSH 사용"이라는 링크가 있습니다. 당신은 그렇게하고 싶습니다. 복제 링크를 "git @ github : username / project.git"와 같은 것으로 변경합니다. SSH 키를 github에 추가하고 ssh-agent에서 로컬로 실행하는 경우 사용자 이름 또는 비밀번호를 입력하지 않고 푸시 할 수 있어야합니다.
Logan Kitchen

답변:


201

당신이 작업하는 경우 HTTPsURL을 항상 사용자 이름 / 암호를 요청할 것입니다.

SSH리모컨을 복제 / 설정할 때 올바르게 사용하는 경우 그런 다음 비밀번호를 기억할 ssh 에이전트가 있는지 확인하십시오. 이렇게하면 터미널 세션에서 암호를 한 번만 입력 할 수 있습니다.

여전히 성가신 경우 암호없이 ssh 키를 설정하십시오.


2
답변 주셔서 감사합니다. 난 항상 HTTP를 사용했습니다. SSH 인증을 시도 중이며 SSH 인증을 설정했다고 생각했습니다. ssh-agent가 설치 해야하는 자식 외부에 있습니까? 감사합니다
HelloWorld

1
@ R11G, 그렇지 않으면 암호가 안전하지 않습니다 ... 새 암호를 다시 생성하십시오.
Simon Boudrias

50
암호 문구는 개인 키를 암호화하는 데 사용되므로 암호를 사용 하지 않으면 컴퓨터에서 개인 키가 암호화되지 않습니다. 컴퓨터의 텍스트 파일에 암호를 두는 것과 같습니다.

2
재밌게도, HTTPS 저장소는 절대 암호를 요구하지 않으며 SSH 저장소는 항상 암호를 요구하지 않습니다.
Adam

33
원격의 URL을 https에서 ssh로 변환하려면 이 github 문서참조하십시오 . remote의 URL이 ssh 또는 https인지 확인하려면을 사용하십시오 git remote -v. https에서 ssh로 전환하려면 :git remote set-url origin git@github.com:USERNAME/REPOSITORY.git
Manavalan Gajapathy

824

키 체인없이 아이덴티티 추가

암호문을 키 체인에 저장하고 싶지 않지만 암호문을 반복해서 입력하지 않아도되는 경우가 있습니다.

다음과 같이 할 수 있습니다.

ssh-add ~/.ssh/id_rsa 

암호문을 입력하고 입력 한 후 다시 시작할 때까지 다시 묻지 않습니다.

키 체인을 사용하여 아이디 추가

@dennis가 주석에서 지적했듯이 암호를 키 체인에 저장하여 재시작을 통해 암호문을 유지하려면 다음과 같이 ID를 추가 할 때 -K( -k우분투 용) 옵션을 사용할 수 있습니다 .

ssh-add -K ~/.ssh/id_rsa

다시 한번, 이것은 암호문을 요구하고, 입력하면 이번에는 다시이 신분을 요구하지 않을 것입니다.


178
다시 시작할 때 ID가 유지되지 않습니다. -K옵션을 사용하여 암호를 추가 할 때 키 체인에 암호를 저장할 수 있습니다 ( 예 :ssh-add -K ~/.ssh/id_rsa
Dennis

29
-k나를위한 소문자 ... (Linux Mint / Ubuntu 14.04 base) 그렇습니다! 마지막으로이 ... 분류
루이 매덕스

8
"ssh-add"명령을 실행하고 비밀번호를 한 번만 입력하면 명령 행에서 비밀번호를 다시 묻지 않습니다.
AVINASH SHRIMALI

14
당신은 어떤 주장도 필요하지 않습니다. 그냥 실행 ssh-add하면 자동으로 ~/.ssh/id_rsa(다른 파일들 사이에) 추가됩니다 . 그리고 출력을 보낼 이유가 없습니다 /dev/null; 그것이 한 일에 대한 보고서를 보는 것이 훨씬 낫습니다.
Ted Hopp

6
왜 "인증 에이전트에 대한 연결을 열 수 없습니다"라는 메시지가 나타 납니까?
dokaspar

251

Mac OSX에서는 다음 명령을 사용하여 개인 키를 키 체인에 추가 할 수 있습니다.

ssh-add -K /path/to/private_key

개인 키가 ~ / .ssh에 저장되고 이름이 id_rsa 인 경우 :

ssh-add -K ~/.ssh/id_rsa

그런 다음 암호를 입력하라는 메시지가 표시되며 키 체인에 저장됩니다.

편집-핸들 재시작

다시 시작한 후에도 비밀번호를 입력하지 않으려면 ssh 구성 파일 (일반적으로 ~ / .ssh / config에 있음)에 다음을 추가하십시오.

Host *
  UseKeychain yes
  AddKeysToAgent yes
  IdentityFile ~/.ssh/id_rsa

7
필자의 경우 다시 시작한 후에도 여전히 암호 문구를 묻는 메시지가 표시됩니다 (macOS Sierrra 10.12.2). 이 문제를 해결하는 방법에 대한 아이디어가 있습니까?
inigo333

9
걱정하지 마십시오. 방금 문제를 발견했습니다. Mac OS X 10.12의 버그 (기능?)로, ssh-agent가 시작 중에 키 체인에 암호를 자동으로로드하지 않습니다. github.com/lionheart/openradar-mirror/issues/15361
inigo333

2
@ inigo333 흥미로운. 나는 방금 업데이트하고 이것을 직접 보았다!
Groot

1
@Groot, BTW, 다른 답변에서 제안한 것처럼 "~ / .ssh / config"에 "Host * UseKeychain yes"를 추가하면 문제가 해결됩니다.
inigo333

1
이것이 정답입니다. 특별히 구성 파일~/.ssh
Xavi

186

나는 여기에 모든 대답을 시도했지만 이 답변들 중 아무것도 효과가 없었습니다 ! 암호는 Mac의 세션 / 레스토랑간에 유지되지 않습니다.

내가 읽고 발견 이 OpenRadar이 트위터 논의하는 것이 었습니다 애플이 의도적으로 동작을 변경하지 이상 자동으로 이전 SSH 키를로드 no로 맥 OS 10.12 시에라 ssh를-에이전트. El Cap과 동일한 동작을 유지하기 위해 다음을 수행했습니다.

  1. ssh-add -K ~/.ssh/id_rsa
    참고 : id_rsa 키가있는 경로를 변경하십시오.
  2. ssh-add -A
  3. 다음 ~/.ssh/config파일을 작성하거나 존재하는 경우 편집 하십시오.

    Host *
      UseKeychain yes
      AddKeysToAgent yes
      IdentityFile ~/.ssh/id_rsa
    

그리고 이제 내 컴퓨터를 재시동 할 때마다 암호가 기억됩니다!


2
이것은 github 또는 osx 문서 페이지 에 추가하는 데 유용 할 수 있습니다 . 내 Mac이 10.11을 실행하는 이유와 다른 10.12가 다르게 작동하는 이유를 알아내는 것이 가장 힘들었습니다.
Grr

5
(내 생각 덕분에, OSX에 업그레이드 한 후 나에게 일어난 ssh-add -A당신이에 하나의 키가있을 경우 필요하지 않습니다 ~/.ssh/id_rsa)
도리안

1
이것은 매우 유용한 답변입니다. 고마워, 당신은 내 하루를했다.
Jan Nash

2
2017 년 10 월 기준으로이 답변은 macOS 10.12 이상을 사용하는 경우 원하는 것입니다.
brogrammer

3
그리고 이것은 지금 github 문서에 있습니다 : help.github.com/articles/…
Todd Price

35

키의 암호를 제거 할 수 있습니다

$ ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]

또는 당신은 실행할 수 있습니다

$ ssh-keygen -p

키 파일에 대한 프롬프트가 표시됩니다. 기본적으로 ~/.ssh/id_rsaEnter 키를 누릅니다

현재 암호 문구를 입력하라는 메시지가 표시됩니다.

그런 다음 새 암호 문구를 입력하라는 메시지가 표시되면 Enter 키를 누릅니다


이것은 암호문을 키 체인에 추가하는 거의 동일한 답변보다 많을 것입니다. 공개 키를 관리자에게 제공해야했으며 암호를 입력하면 매번 입력하기가 번거로워졌습니다. 이것은 당신이 컴퓨터를 통해 많은 제어 (없는 깨끗한 솔루션입니다 -K, -k, -A나를 위해 작동하지 않았다).
gwg

1
이것은 다시 시작하는 동안 나를 위해 일한 유일한 것 입니다. 모든 ssh-add -K, -k 등 명령은 나를 위해 일하지 않았습니다.
Amalgovinus

28

다음 명령을 실행하십시오.

ssh-add -K

비밀번호를 다시 입력하라는 메시지는 표시되지 않습니다.


3
이것은 훌륭하게 작동하지만 무작위 명령을 실행하는 것에 대해 약간 걱정했습니다. 그러나 문서를 확인하면 ssh-add"인증 에이전트에 개인 키 ID를 추가합니다"라는 -K옵션 만 있으면 "ID를 추가 할 때 각 암호 문구도 사용자의 키 체인에 저장됩니다"라는 옵션이 만들어집니다.
machineghost

8
실제로, 그것은 내가 다시 시작할 때까지 고정되었습니다 :(
machineghost

5
Windows 용 bash 쉘에서 "-k"플래그는 소문자 여야합니다. 그냥 참고
Fergus

27

저장소에 ssh를 사용하고 있는지 확인하십시오.

mahtab@mahtab-Lenovo-G50-70:~/my-projects/jenkins-cje-2017$ git remote -v origin git@github.com:eMahtab/jenkins-cje-2017.git (fetch) origin git@github.com:eMahtab/jenkins-cje-2017.git (push)

여기에 이미지 설명을 입력하십시오

https를 사용하지 마십시오. 리모컨이 https를 사용하는 경우 공개 키를 Github에 추가하고 개인 키를 ssh-agent에 추가 한 경우에도 비밀번호를 묻는 메시지가 계속 표시됩니다. 아래는 항상 비밀번호를 요구합니다

mahtab@mahtab-Lenovo-G50-70:~/my-projects/jenkins-cje-2017$ git remote -v origin https://github.com/eMahtab/jenkins-cje-2017.git (fetch) origin https://github.com/eMahtab/jenkins-cje-2017.git (push)


예, 두 개의 원격 URL 유형을 구분하는 것이 도움이되었습니다. 이것은 git pull및 측면에서 나를 도왔습니다 git push. URL을 HTTPS 유형에서 SSH 유형으로 전환했는데 작동 git pull하지 않아 암호 요청이 중단되었습니다.
Michael R

1
이 명령으로 전환을 수행 할 수 있습니다.git remote set-url origin git@github.com:USERNAME/REPOSITORY.git
guido

17

나는 실행해야했다.

eval `ssh-agent -s`
ssh-add

참고 : 다시 시작할 때마다이 작업을 다시 수행해야합니다. 이를 피하려면 창에 있는 " .bashrc "파일 에 입력하십시오 C:\Users\<<USERNAME>>\.bashrc. 숨겨져있을 수 있으므로 숨겨진 파일을 볼 수 있는지 확인하십시오.

해결책은 여기에 있습니다 .


15

당신이 창문을 사용한다면, 이것은 나를 위해 일했습니다 :

eval `ssh-agent -s`
ssh-add ~/.ssh/*_rsa

두 번째 명령에서 암호를 요구할 것입니다.


1
로그 아웃 및 재 로그인 할 때마다 매번 비밀번호를 다시 입력해야합니다.
trainoasis


11

ssh 에이전트를 사용해야합니다.
TL; DR : 터미널 열기 및 시도

ssh-add

밀기 전에. 메시지가 표시되면 암호를 입력하십시오.

여기 에서 원래 StackExchange 답변을 확인 하십시오.


6

최근에 macOS Mojave로 업그레이드하고 homebrew를 통해 일부 도구를 설치했는데, Apple의 버전을 ssh-add다른 버전으로 바꾸는 것 같습니다 . 내 기본 버전 에는 옵션 ssh-add 이 없습니다-K . 이로 인해 다음과 같은 오류가 발생했습니다.

# ssh-add: illegal option -- K

ssh-add를 실행하면 사용중인 버전을 확인할 수 있습니다 which ssh-add.

(에 저장되었습니다 /usr/local/bin/ssh-add)

이 문제를 해결하려면 Apple 버전의 열쇠를 가리켜 야했습니다 .

/usr/bin/ssh-add -K ~/.ssh/id_rsa

Git / GitHub는 이후 완벽하게 작동했습니다. 자세한 내용은 오류 : ssh-add : 잘못된 옵션-K를 참조하십시오.


High Sierra 10.13.6을 사용하는 iMac에서도 동일한 문제가 발생했습니다. 감사!
emccracken

광산은 잘 작동하고 무작위로 암호 문구를 다시 요청하기 시작했습니다. 최근 업데이트 이후 일 수도 있습니다. 이것은 그것을 고쳤다! 감사합니다
mc01

5

Mac OSX Sierra의 경우 Open Radar의 github 문제에서 제안 된 수정 사항으로 문제가 해결되었습니다. Sierra가 기본 동작을 변경 한 것 같습니다 (업그레이드 후이 문제가 발생하기 시작했습니다).

내가 특히 유용하다고 생각한 것 : https://github.com/lionheart/openradar-mirror/issues/15361#issuecomment-249059061

ssh-add -A 

이로 인해 에이전트에 본인의 신원이 추가되었습니다. 내가 실행 한 후

ssh-add -K {/path/to/key}

OSX.12에서 요약하면 다음과 같습니다.

ssh-add -K {/path/to/key}
ssh-add -A 

결과 :

Identity added: {/path/to/file} ({/path/to/file})

편집 : 다음에 전체 재부팅 (일명 에이전트가 중지했다가 다시 시작) 할 때 더 이상 작동하지 않는 것으로 나타났습니다. 더 완벽한 솔루션은 @ChrisJF가 위에서 언급 한 것입니다.~/.ssh/config 파일 . 내 출력은 다음과 같습니다.

$ cat ~/.ssh/config
Host *
  UseKeychain yes
  AddKeysToAgent yes
  IdentityFile ~/.ssh/id_rsa

IdentityFile필요한만큼 항목을 추가 할 수 있지만 이것이 기본 설정입니다. 이것은 위의 openradar 링크, ATM에 대한 "추세"답변입니다.


편집 한 것이 내 문제를 해결했습니다. 맥 OS 모하비 10.14.3
호세

4

LinuxMint / Ubuntu 에서 일함

다음 단계를 수행하십시오

1 단계:

이동 파일 => /.ssh/config

아래 줄을 파일에 저장하십시오.

Host bitbucket.org
    HostName bitbucket.org
    User git
    IdentityFile /home/apple/myssh-privatekey
    AddKeysToAgent yes

이 줄을 추가하는 것을 잊지 마십시오 AddKeysToAgent yes

2 단계:

터미널을 열고 ssh-add에 키셋을 추가하십시오

$ ssh-add -k /home/apple/myssh-privatekey

암호를 제공하십시오.


3

나는 이미 암호를 설정했지만 어떤 이유로 든 더 이상 인식하지 못할 것입니다. 그래서 방금 신원 파일을 키 체인에 다시 사용하여 ssh-add -K암호를 묻는 것을 중단했습니다.


이것은 키만로드하고 인증서는로드하지 않습니다
numediaweb

3

이것이 나를 위해 일한 것입니다.

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

2

SSH가 아닌 HTTPS에서 복제하기 때문에 문제가있는 것 같습니다. 나는 다른 모든 해결책을 시도했지만 여전히 문제가 발생했습니다. 이것은 나를 위해 그것을했다.

다음 osxkeychain helper과 같이 사용하십시오 .

  1. 설치되어 있는지 확인하십시오.

    git credential-osxkeychain

  2. 설치되어 있지 않으면 Xcode 명령 줄 도구의 일부로 다운로드하라는 메시지가 표시됩니다.

  3. 설치되어 있다면 Git에게 osxkeychain helper전역 credential.helper설정 을 사용하도록 지시 하십시오 :

    git config --global credential.helper osxkeychain

다음에 HTTPS URL을 복제하면 사용자 이름 / 암호를 묻는 메시지가 표시되고 OSX 키 체인에 대한 액세스 권한이 부여됩니다. 이 작업을 처음 수행 한 후에는 키 체인에 저장해야하며 다시 입력 할 필요가 없습니다.


2

이 답변은 주로 Windows 사용자를위한 것이며 다른 OS에서 tfs, github 또는 gitlab을 사용하여 복제하는 데 문제가있는 경우에도 마찬가지입니다.

SSH 사용시 기본 인증 모드는 개인 키입니다. 어떤 이유로 든 실패하면 ssh-agent는 사용자 이름 및 비밀번호 기반 인증으로 대체됩니다.

기본 키 기반 인증이 실패한 몇 가지 이유가 있습니다. 다음은 가장 일반적인 경우입니다.

a) ssh-agent 는 기본 개인 키 파일 인 id_rsa를 찾을 수 없으며 다른 키 경로는 명시 적으로 지정되지 않습니다.

b) 서버에 저장된 공개 키가 올바르지 않습니다.

c) 복제하려는 경로가 잘못되었습니다.

어쨌든 문제를 해결하려면 먼저 다음 명령을 사용하여 자세한 로깅으로 git clone 명령을 실행하십시오.

GIT_TRACE=1 GIT_SSH_COMMAND="ssh -vvv" git clone ssh://pathToYourRepo

로그의 각 단계를 수행하여 문제의 직관을 파악할 수 있습니다.


(a)의 경우 문제 해결

  • .ssh 디렉토리에 기본 키 이름 id_rsa가 있는지 확인하십시오. ssh-keygen 명령으로 키를 생성 할 때 다른 키 이름을 지정했거나 키가 없을 수 있습니다).
  • 인증을 위해 다른 키를 지정하려면 다음 명령을 사용하십시오.

    ssh-agent bash -c 'ssh-add ~/.ssh/anotherKey; git clone ssh://pathToYourRepo'
    

(b)의 경우 문제 해결

  • 서버에 공개 키를 저장할 때 추가 공백이 없는지 확인하십시오.

(c)의 경우 문제 해결

  • https 버전의 리포지토리 경로를 사용하여 복제하지 마십시오.

1

git에 ssh url을 사용하는 경우 ssh에 대한 암호를 묻는 메시지가 표시되면 사용자 이름을 " git "로, 암호를 시스템의 로그인 암호로 입력하십시오.


저장소 원격 URL 유형을에서 HTTPS로 변경 하여 SSH문제 를 해결했습니다. @MichaelR에게 감사합니다. 기사를 읽지 못했지만 실제로 도움이되었습니다. : D
Geradlus_RU

1

IdentitiesOnly를 예로 설정했기 때문에 여전히 암호를 입력해야하는 사람들을위한 답변을 추가하고 싶습니다. 이것은 여러 키와 ID 파일로 인해 git 또는 server의 키가 될 수 있습니다.

키를 생성하여 서버에 복사 한 후 :

ssh-keygen
ssh-copy-id -i ~/.ssh/12gpu_server.pub lerner@192.168.20.160

작동하지 않는 것을 발견했습니다.

그런 다음 ~/.ssh/config파일 을 확인하기 위해 바닥에서 이것을 보았습니다.

Host *
IdentitiesOnly yes

그런 다음 위에 이것을 추가하십시오.

Host 12gpu
HostName 192.168.20.160
User lerner
IdentityFile ~/.ssh/12gpu_server

을 입력하여 로그인하면 ssh 12gpu됩니다.

그런 다음 원하는 이름을 사용하여 여러 개의 ssh 키를 추가 할 수 있으며 위의 4 줄과 같은 설정 만 구성 파일에 추가하면됩니다.

호스트 는 나중에 서버에 연결할 때 입력하려는 이름입니다. 호스트 이름 github.com 같은 서버의 IP 또는 도메인입니다; 사용자 는 github 또는 gitlab의 사용자 이름 또는 git와 같이 서버에 로그인 한 사용자 이름입니다. 그리고 IdentityFile 은 생성 한 키를 저장하는 파일입니다.


1

일반적으로 비밀번호없이 ssh를 사용하여 서버에 원격으로 연결하는 단계는 다음과 같습니다.

  • rsa 개인 및 공개 키 쌍 생성

    $ ssh-keygen -t rsa -b 4096 -C "your comments"
    
  • 공개 키를 복사하고 원격 서버에 로그인

  • .ssh / authorized_keys에 공개 키 추가

  • 컴퓨터에 여러 개의 ssh 키가있는 경우 ssh-add를 사용하여 키를 추가 할 수 있습니다

    $ ssh-add /path/to/private/key

  • 그런 다음 서버에 ssh를 시도하십시오.

    $ ssh username@your_ip_address

출처 : http://diary-of-programmer.blogspot.com/2018/08/tips-how-to-ssh-to-your-digitalocean.html


0

sshGithub가 제공하지 않은 원격 URL을 사용하십시오 https.


OP는 분명히 HTTPS 대신 SSH를 사용하고 있다고 말했다.
느린

0

당신이하는 경우 Windows와 GIT를 사용하여 타사 도구없이 키가됩니다 확보하지 암호 / 암호를 사용하여 :

  1. 환경 변수 HOME 은 사용자 프로파일로 설정해야합니다 (예 : C : \ Users \ Laptop)
  2. C : \ Users \ Laptop \ .ssh \ 폴더로 이동하여 "config"파일을 편집하십시오 (또는 파일을 작성하십시오!) 예 : C : \ Users \ Laptop.ssh ​​\ config (참고 : 끝에.가 없습니다!)
  3. 다음과 같이 git-server 호스트를 "config"파일에 추가하십시오 :

    #Example host entry
    Host myhostname.com
        HostName myhostname.com
        User git
        IdentityFile c:/users/laptop/.ssh/id_rsa.pub
        PasswordAuthentication no
        Port 422
    
  4. 파일을 저장하고 다음과 같이 저장소를 복제하십시오.

    자식 클론 ssh : //myhostname.com/git-server/repos/picalc.git

"config"파일 호스트 항목에 추가 구성 매개 변수를 사용할 수 있습니다. 이것은 로컬 git 설치 폴더에서 찾을 수 있습니다 (예 : " C : \ Program Files \ Git \ etc \ ssh \ ssh_config "). 발췌 :

# Host *
#   ForwardAgent no
#   ForwardX11 no
#   RhostsRSAAuthentication no
#   RSAAuthentication yes
#   PasswordAuthentication yes
#   HostbasedAuthentication no
#   GSSAPIAuthentication no
#   GSSAPIDelegateCredentials no
#   BatchMode no
#   CheckHostIP yes
#   AddressFamily any
#   ConnectTimeout 0
#   StrictHostKeyChecking ask
#   IdentityFile ~/.ssh/identity
#   IdentityFile ~/.ssh/id_rsa
#   IdentityFile ~/.ssh/id_dsa
#   IdentityFile ~/.ssh/id_ecdsa
#   IdentityFile ~/.ssh/id_ed25519
#   Port 22
#   Protocol 2
#   Cipher 3des
#   Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
#   MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160
#   EscapeChar ~
#   Tunnel no
#   TunnelDevice any:any
#   PermitLocalCommand no
#   VisualHostKey no
#   ProxyCommand ssh -q -W %h:%p gateway.example.com
#   RekeyLimit 1G 1h

0

나에게 같은 문제와 해결책은 다음과 같습니다.

원격의 URL을 https에서 ssh로 변환하려면이 github 문서를 참조하십시오. remote의 URL이 ssh 또는 https인지 확인하려면 git remote -v를 사용하십시오. https에서 ssh로 전환하려면 git remote set-url origin git@github.com : USERNAME / REPOSITORY.git @jeeYem


0

Mobaxterme에는 UI 인터페이스가 있습니다

setting > configuration > SSH > SSH Agent > [check] Use internal SSH agent "moboAgent" > add [your id_rsa and restart mobaxterme to set changes]


0

SSH 키-여전히 비밀번호 및 비밀번호 문구 요청

Windows에서 PuTTY 를 SSH 키 생성기 로 사용하는 경우이 빠르고 쉬운 솔루션은 일반 Windows 명령 줄을 사용하는 유일한 솔루션으로 판명되었습니다.

  1. PuTTY 설치는 여러 실행 파일과 함께 제공되어야합니다. pageant.exe 하고plink.exe
  2. PuttyGen으로 SSH 키를 생성 할 때 키는 .ppk 확장명
  3. 실행 "full\path\to\your\pageant.exe" "full\path\to\your\key.ppk"( 해야한다 인용). 이것은 실행됩니다pageant서비스 하고 비밀번호를 입력 한 후 키를 등록합니다.
  4. 환경 변수를 설정하십시오 GIT_SSH=full\path\to\plink.exe( 따옴표로 묶지 않아야 함). 이것은 git ssh-communication 관련 명령을 암호를 다시 묻지 않고 인증을 위해 서비스를 plink사용하는 명령으로 리디렉션 pageant합니다.

끝난!

참고 1 : 이 문서GIT_SHH환경 변수 설정 작업시 일부 특징에 대해 경고합니다 . 내가 할 수있는 push, pull, fetch추가 명령에 대한 매개 변수와 모든 임의의 수와 (거기에 제안 별도의 스크립트를 작성 할 필요없이) 나를 위해 잘 작동합니다.

참고 2 : 설치 경로 PuTTY는 일반적으로 PATH있으므로 생략 될 수 있습니다. 어쨌든, 나는 전체 경로를 지정하는 것을 선호합니다.

오토메이션:

명령 줄에서 git을 사용하기 전에 다음 배치 파일을 실행할 수 있습니다. 설정 사용법을 보여줍니다.

git-init.bat
   @ECHO OFF
   :: Use start since the call is blocking
   START "%ProgramFiles%\PuTTY\pageant.exe" "%HOMEDRIVE%%HOMEPATH%\.ssh\id_ed00000.ppk"
   SET GIT_SSH=%ProgramFiles%\PuTTY\plink.exe

어쨌든, 나는이 GIT_SSH에 변수 세트 SystemPropertiesAdvanced.exe > Environment variablespageant.exe는 AS 추가 Run레지스트리 키 (*).

(*) Run레지스트리 키 추가 단계 >

  1. 운영 regedit.exe
  2. 로 이동 HKEY_CURRENT_USER > Software > Microsoft > Windows > CurrentVersion > Run
  3. 할 (메뉴) Edit > New > String Value
  4. 임의의 (그러나 고유 한) 이름을 입력하십시오
  5. 수행 (메뉴) Edit > Modify...(또는 두 번 클릭)
  6. pageant.exe및에 대한 따옴표로 묶은 경로를 입력하십시오 ( public key예 : 3 단계 에서 대신 선택하지 않으면 변수 등이 여기에서 작동하지 않습니다 )."C:\Program Files\PuTTY\pageant.exe" "C:\Users\username\.ssh\id_ed00000.ppk"%ProgramFiles%Expandable string valueString value


-1

@ sudo bangbang의 대답은 받아 들여야한다고 생각합니다.

ssh 키를 생성 할 때 비밀번호를 구성하라는 프롬프트가 표시되면 비밀번호 입력을 건너 뛰려면 "Enter"를 누르십시오.

즉, ssh 키를 사용할 때 암호가 필요하지 않으므로 ssh 키를 생성 할 때 암호를 입력하지 말고 'Enter'를 눌러 건너 뛰십시오.


1
이것은 매우 나쁜 제안입니다. @ user456814 님의 댓글
Sos
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.