【发布时间】:2019-04-04 16:46:15
【问题描述】:
我正在运行 Fedora 29,并已将我的 .ssh 密钥正确添加到 GitHub。我知道 Fedora 默认运行防火墙,我试图通过在 /etc/sysconfig/selinux 中设置 SELINUX=disabled 来禁用它。
在添加我的密钥并配置防火墙设置后,克隆应该相当简单,对吧?在异常长的时间后,该过程中断并显示以下输出:
[aaron@localhost repos]# git clone git@github.com:org/repo.git
Cloning into 'repo'...
Warning: Permanently added the RSA host key for IP address '192.30.253.112' to the list of known hosts.
Connection to github.com closed by remote host.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
org 和 repo 都存在,我在其他机器上以完全相同的方式访问它们。事实上,有一段时间,我能够在我的机器上成功使用 GitKraken 来读取和写入这个 repo,即使命令行不工作,这很奇怪。这种 hack 也不再有效。
我尝试使用详细输出进行调试,但它只是挂在这里:
[aaron@localhost repos]$ git clone --progress --verbose git@github.com:org/repo.git
Cloning into 'repo'...
我检查了this post,建议的解决方案是使用 http :/ 我有 2FA,所以这不起作用。
有什么想法吗?
更新
根据@torek 的建议,我运行ssh -vT git@github.com 来尝试找出进程中断的位置。这是输出。看起来对 GitHub 的身份验证是成功的,我能够在交互式会话中进行身份验证,但随后进程挂起:
...
debug1: Offering public key: /home/aaron/.ssh/id_rsa RSA SHA256:Gam7duBv/+8VMiJH1iEYrPX5UojI09D9nlRiXpNdyjg agent
debug1: Server accepts key: /home/aaron/.ssh/id_rsa RSA SHA256:Gam7duBv/+8VMiJH1iEYrPX5UojI09D9nlRiXpNdyjg agent
debug1: Authentication succeeded (publickey).
Authenticated to github.com ([192.30.253.113]:22).
debug1: channel 0: new [client-session]
debug1: Entering interactive session.
debug1: pledge: network
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug1: Sending env XMODIFIERS = @im=ibus
debug1: channel 0: free: client-session, nchannels 1
Connection to github.com closed by remote host.
Transferred: sent 3508, received 2312 bytes, in 600.1 seconds
Bytes per second: sent 5.8, received 3.9
debug1: Exit status -1
【问题讨论】:
-
有趣。我的
ssh -vT调试信息到达pledge: network点,如上所述发送环境变量,然后得到:debug1: client_input_channel_req: channel 0 rtype exit-status reply 0,然后是来自 GitHub 的问候,说它识别我的 ssh 密钥(但当然不提供 shell 访问)。我不知道接下来要看什么:很明显,您的机器可以与 GitHub 上的系统通信,但不清楚为什么它不能。 (无论如何,在问候之后我都会得到相同的debug1: channel 0: free: client-session, nchannels 1关机顺序。) -
@torek 好吧,我很高兴这不仅仅是我......我也真的在这个问题上摸不着头脑。很奇怪,我最初能够使用 GitKraken 进行一些推拉。关于 GitKraken 如何处理 ssh 连接的任何想法可能与命令行不同?
-
我从未使用过 GitKraken,对此一无所知,但这似乎不太可能。同样,此时我会得到一个数据包跟踪器并观察流量,看看你的 Fedora 系统是否在做一些奇怪的事情。你也许可以直接从 Fedora 系统运行 tcpdump 或 tshark。
-
@torek roger,感谢您的提示。如果我设法解决任何问题,我会试一试并报告
标签: git github firewall fedora