Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash Git未使用SSH密钥对Azure DevOps进行身份验证_Bash_Git_Azure_Github_Ssh - Fatal编程技术网

Bash Git未使用SSH密钥对Azure DevOps进行身份验证

Bash Git未使用SSH密钥对Azure DevOps进行身份验证,bash,git,azure,github,ssh,Bash,Git,Azure,Github,Ssh,我最近换了一个新安装的Fedora 33 Silverblue,运行一个工具箱。这也发生在工具箱之外。我使用以下命令生成了一个SSH密钥 ssh-keygen-trsa-b4096-Cfilbot@fenix 然后我把它上传到我账户下的Azure DevOps上。但是,我无法使用以下~/.ssh/config从Azure DevOps克隆任何内容: ⬢[filbot@toolbox ~]$ cat ~/.ssh/config # SSH Configuration File Host ssh

我最近换了一个新安装的Fedora 33 Silverblue,运行一个工具箱。这也发生在工具箱之外。我使用以下命令生成了一个SSH密钥

ssh-keygen-trsa-b4096-Cfilbot@fenix
然后我把它上传到我账户下的Azure DevOps上。但是,我无法使用以下
~/.ssh/config
从Azure DevOps克隆任何内容:

⬢[filbot@toolbox ~]$ cat ~/.ssh/config 
# SSH Configuration File
Host ssh.dev.azure.com
  HostName ssh.dev.azure.com
  User git
  IdentityFile /var/home/filbot/.ssh/id_rsa
  IdentitiesOnly yes
Host vs-ssh.visualstudio.com
  HostName vs-ssh.visualstudio.com
  User git
  IdentityFile /var/home/filbot/.ssh/id_rsa
  IdentitiesOnly yes
然后我运行了这些
git clone
命令,结果如下:

⬢[filbot@toolbox~]$git克隆git@ssh.dev.azure.com:v3/$ORG/$PROJ/Developer.dudleyp.cs_管道_任务
克隆到“Developer.dudleyp.cs_pipeline_tasks”。。。
git@ssh.dev.azure.com的密码:
⬢[filbot@toolbox~]$GIT\u SSH\u命令=SSH-GIT-clonegit@ssh.dev.azure.com:v3/$ORG/$PROJ/Developer.dudleyp.cs_管道_任务
克隆到“Developer.dudleyp.cs_pipeline_tasks”。。。
git@ssh.dev.azure.com的密码:
⬢[filbot@toolbox~]$ssh-Tgit@ssh.dev.azure.com
警告:已将IP地址“20.37.158.9”的RSA主机密钥永久添加到已知主机列表中。
git@ssh.dev.azure.com的密码:
⬢[filbot@toolbox~]$ssh-i~/.ssh/id\u rsa-Tgit@ssh.dev.azure.com
git@ssh.dev.azure.com的密码:

Git似乎不像以前或在其他较旧的Fedora或Pop安装中那样尊重甚至不在我的主目录中使用ssh配置_操作系统。我不明白它现在为什么要这样做,以及如何获取更多信息来了解这一点。

在调试模式下运行ssh,使用-v。它将输出在后台运行的整个进程。在输出中,它将提到它使用的身份验证方法以及原因。

这似乎是Fedora 33的事情。我使用了Fedora32工具箱,Git工作正常

➜  ~ 工具箱创建--版本f32
创建工具箱容器所需的图像。
下载registry.fedoraproject.org/f32/fedora工具箱:32(500MB)?[是/否]:是
创建的容器:fedora-toolbox-32
使用以下命令输入:工具箱输入--第32版
➜  ~ 工具箱输入--第32版
⬢[filbot@toolbox~]$git克隆-vgit@ssh.dev.azure.com:v3/$ORG/$PROJ/Developer.dudleyp.cs_管道_任务
克隆到“Developer.dudleyp.cs_pipeline_tasks”。。。
远程:Azure Repos
远程:找到45个要发送的对象。(88毫秒)
接收对象:100%(45/45),77.83kib | 25.94mib/s,完成。
解析增量:100%(14/14),完成。

我遇到了完全相同的问题,并在这里找到了解决方案:

基本上,在
~/.ssh/config
文件的每个
Host
部分下,添加
PubKeyAcceptedKeyTypessh rsa

Host ssh.dev.azure.com
  HostName ssh.dev.azure.com
  User git
  IdentityFile /var/home/filbot/.ssh/id_rsa
  IdentitiesOnly yes
  PubkeyAcceptedKeyTypes ssh-rsa

它处于调试模式,显示了很多内容。您介意共享输出吗?当我使用git clone-v$url时,它仍然只显示登录名。尝试ssh-vv,这将输出可用的身份验证。仍然没有。我无法粘贴输出,因为它太长并且丢失了格式。它仍然只是下降到提示输入凭据@Matt S.answer成功了。