试图通过SSH连接到个人的Git服务器时,“算法协商失败”在Eclipse中的错误(“Algorit

2019-10-22 18:57发布

我的Eclipse朱诺了Git的服务器一台Synology服务器DS213 +。 我想从我的Git服务器检出一个项目,我的工作区,当我在Eclipse中使用例如:It我有这样的错误:

org.eclipse.jgit.api.errors.TransportException: ssh://[route]/volume1/Git/project.git: Algorithm negotiation fail
    at org.eclipse.jgit.api.LsRemoteCommand.execute(LsRemoteCommand.java:223)
    at org.eclipse.jgit.api.LsRemoteCommand.call(LsRemoteCommand.java:159)
    at org.eclipse.egit.core.op.ListRemoteOperation.run(ListRemoteOperation.java:99)
    at org.eclipse.egit.ui.internal.clone.SourceBranchPage$8.run(SourceBranchPage.java:324)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Caused by: org.eclipse.jgit.errors.TransportException: ssh://[route]/volume1/Git/project.git: Algorithm negotiation fail
    at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:159)
    at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:136)
    at org.eclipse.jgit.transport.TransportGitSsh$SshFetchConnection.<init>(TransportGitSsh.java:262)
    at org.eclipse.jgit.transport.TransportGitSsh.openFetch(TransportGitSsh.java:161)
    at org.eclipse.jgit.api.LsRemoteCommand.execute(LsRemoteCommand.java:202)
    ... 4 more
Caused by: com.jcraft.jsch.JSchException: Algorithm negotiation fail
    at com.jcraft.jsch.Session.receive_kexinit(Session.java:583)
    at com.jcraft.jsch.Session.connect(Session.java:320)
    at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:116)
    ... 8 more

[路径]是正确的,在其他的Git软件工作正常

Answer 1:

我发现这个博客用的解决方案:

http://blog.millard.org/2014/11/repair-synology-dsm51-for-use-as-linux.html

使用WinSCP赋予http://winscp.net/eng/download.php我修改的sshd_config并重新启动SSH群晖的控制面板中。



Answer 2:

例如:It在Eclipse中似乎抛出此错误时,它不支持任何chipers的支持SSH服务器。 在我的情况下,SSH服务器设置为只接受强chipers屈指可数。 我注意到,类似的对服务器的SSH记录以下错误:

fatal: Unable to negotiate with xx.xx.xx.xx port 12345: no matching cipher found. Their offer: aes128-ctr,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc

究其原因,客户端上的错误是因为默认的Java安装不支持任何强烈chipers的。 既然我们已经在使用的webupd8队PPA安装我们的Java包,该解决方案是简单地安装unlimited-jce-policy包。

apt install oracle-java8-unlimited-jce-policy

重新启动Eclipse和你所有的设置。



文章来源: “Algorithm negotiation fail” error in Eclipse when trying to connect by SSH to a personal Git Server