我在Windows上通过ssh提取git存储库时遇到问题。存储库位于GitLab服务器上。我执行以下步骤:
ssh-keygen -t rsa -C "my@email.here"
C:\Users\myUserName\.ssh\keyName
ssh-agent
的输出(即导出SSH_AUTH_SOCK; ...)ssh-add
并在C:\Users\myUserName\.ssh\keyName
同样的设置在我的Linux和同事的Windows机器上运行良好。
当我尝试使用git clone
克隆存储库时,出现以下错误:
Disconnecting: Bad packet length 1397966893.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我试着谷歌,但我发现没有什么合适的。有人知道我是否犯了错误或者错误可能是服务器端的吗?
编辑:我得到以下调试输出:
C:\Users\Johannes\Documents\GitHub> ssh -vT -p 80 git@random.secret.sever.de
OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Reading configuration data /c/Users/Johannes/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to random.secret.sever.de [192.44.1.37] port 80.
debug1: Connection established.
debug1: identity file /c/Users/Johannes/.ssh/identity type -1
debug1: identity file /c/Users/Johannes/.ssh/id_rsa type 1
debug1: identity file /c/Users/Johannes/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.9p1 Debian-5ubuntu1.1
debug1: match: OpenSSH_5.9p1 Debian-5ubuntu1.1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_4.6
debug1: SSH2_MSG_KEXINIT sent
Disconnecting: Bad packet length 1397966893.
编辑2:看起来我的问题基于我的硬件和软件设置。刚刚并行完成了相同的步骤,它在另一台计算机上运行。
答案 0 :(得分:2)
意外地找到了我的问题的原因。我尝试使用旧技巧并启动系统恢复以撤消我的Git安装。由于我的病毒扫描程序,它失败了。卸载 Bitdefender Antivirus免费版后,它运行了。传入的SSH2邮件被阻止(获得Windows 8 Pro),导致bad packet length
错误。无论如何,感谢您的支持!
答案 1 :(得分:1)
将密钥保存在
中C:\Users\myUserName\.ssh\keyName
您的本地ssh命令会在%HOME%\.ssh\id_rsa(.pub)
中查找ssh密钥。
所以你需要:
或通过%HOME%\.ssh\config
引用这些内容,该Host gitlab
user git
hostname your.gitlab.server.com
IdentityFile C:\user\YourUsername\.ssh\keyName
可以引用私钥的确切名称(使用IdentityFile
directive)。
gitlab:yourRepo
在第二种情况下,ssh网址为{{1}}。