git ssh с Powershell не может найти IdentityFile в ssh-agent

Это сводит меня с ума.

Вот что ssh-agent знает:

> ssh-add -l
2048 SHA256:JHUL/QtZf4e6rle0yRVEy7jVThtdNJ0SH+Wy1kf5th8 C:\Users\tig\.ssh\foocorp_rsa (RSA)
2048 SHA256:JPyqmrvgX/abfXDzrrf1p2c1wgPn19uj7xthJeCzOSs \users\tig\.ssh\id_rsa (RSA)

мой /.ssh/config:

Host         gitlab.foocorp.com
HostName       gitlab.foocorp.com
User           git
PreferredAuthentications publickey
IdentityFile ~/.ssh/foocorp_rsa

я сделал ssh-add и ввел мой пароль.

Если я сделаю следующее, меня не попросят foocorp_rsa Ключевая фраза:

> ssh -v gitlab.foocorp.com
OpenSSH_for_Windows_7.6p1, LibreSSL 2.6.4
debug1: Reading configuration data C:\\Users\\tig/.ssh/config
...
debug1: Offering public key: RSA SHA256:JHUL/QtZf4e6rle0yRVEy7jVThtdNJ0SH+Wy1kf5th8 C:\\Users\\tig/.ssh/foocorp_rsa 
...
Welcome to GitLab, Tig!

Обратите внимание на синтаксис пути: C:\\Users\\tig/.ssh/foocorp_rsa

У меня есть опции git debug, чтобы я мог видеть, что он делает ($env:GIT_SSH_COMMAND="ssh -v").

> git pull
...
OpenSSH_7.7p1, OpenSSL 1.0.2o  27 Mar 2018
debug1: Reading configuration data /c/Users/tig/.ssh/config
debug1: /c/Users/tig/.ssh/config line 49: Applying options for    gitlab.foocorp.com
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to gitlab.foocorp.com [10.11.11.67] port 22.
debug1: Connection established.
...
debug1: Host 'gitlab.foocorp.com' is known and matches the ECDSA host key.
debug1: Found key in /c/Users/tig/.ssh/known_hosts:18
...
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering public key: RSA SHA256:JHUL/QtZf4e6rle0yRVEy7jVThtdNJ0SH+Wy1kf5th8 /c/Users/tig/.ssh/foocorp_rsa
debug1: Server accepts key: pkalg ssh-rsa blen 279
Enter passphrase for key '/c/Users/tig/.ssh/foocorp_rsa':

Это не должно спрашивать меня о парольной фразе, но это так!

Все, что я могу сказать, это то, что ssh-agent не может найти путь к файлу идентификации Это хранение C:\Users\tig\.ssh\foocorp_rsa но передается git / ssh /c/Users/tig/.ssh/foocorp_rsa и не соответствует им.

Или я совершенно не понимаю, как это работает.

Я не знаю, связано ли это с Powershell и Windows или чем-то еще. У меня никогда не было этой проблемы раньше.

Есть идеи или предложения?

0 ответов

Другие вопросы по тегам