Update on SSH Access to GitHub in IntelliJ-based IDEs

Andrey Cheptsov

GitHub introduced a change last week that drops support for weak cryptographic keys. This has resulted in connectivity issues for some users who are connecting to GitHub using SSH and the built-in client SSH Executable.

To rehash, there are two ways to work with Git and SSH when using any of the IntelliJ-based products:

  • Using Built-in SSH client
  • Using Native SSH client

This setting is configured under Version Control | Git | SSH executable:

It is only when you use the built-in client that this causes issues with the recent changes with GitHub.

This issue has already been fixed for 2018.1 EAP and will be available in the release version. In the meantime, as a workaround, you can switch to using Native support. Please note however that when using this option, if your SSH keys are protected with a passphrase they need to be added at system level. This is usually done by using a tool such as ssh-agent.

We are also backporting the fix to 2017.3 and the EAP for this is already available, with the release version due out in the coming weeks.

To recap, your options right now are:

  • Use 2018.1 EAP
  • Use 2017.3 EAP
  • Switch to use Native as a workaround

We do apologize for not having resolved this issue sooner and will strive to improve.

The JetBrains Team

Comments below can no longer be edited.

16 Responses to Update on SSH Access to GitHub in IntelliJ-based IDEs

  1. Florian Schwanz says:

    February 27, 2018

    Thanks for your explanation. Just for completion: I think you are referring to this change in GitHub https://github.com/blog/2507-weak-cryptographic-standards-removed

  2. Patrick M. Callahan says:

    February 27, 2018

    This was announced over one year ago. https://githubengineering.com/crypto-deprecation-notice/

  3. Karl says:

    February 27, 2018

    Appreciate the blog post, I was wondering if this was submitted as a ticket – though I’m glad I came across this.

  4. Pavel says:

    March 2, 2018

    +1

    I Googled for “intellij There was a problem while connecting to github.com:22” and hopefully found this page. Thanks!

  5. Paulo says:

    March 5, 2018

    Well, I just downloaded 2017.3.3 and the problem is still happening

    java.io.IOException: There was a problem while connecting to github.com:22
    at com.trilead.ssh2.Connection.connect(Connection.java:817)
    at com.trilead.ssh2.Connection.connect(Connection.java:686)
    at com.trilead.ssh2.Connection.connect(Connection.java:600)
    at org.jetbrains.git4idea.ssh.SSHMain.start(SSHMain.java:173)
    at org.jetbrains.git4idea.ssh.SSHMain.main(SSHMain.java:137)
    Caused by: java.io.IOException: Key exchange was not finished, connection is closed.
    at com.trilead.ssh2.transport.KexManager.getOrWaitForConnectionInfo(KexManager.java:92)
    at com.trilead.ssh2.transport.TransportManager.getConnectionInfo(TransportManager.java:231)
    at com.trilead.ssh2.Connection.connect(Connection.java:769)
    … 4 more
    Caused by: java.io.IOException: Cannot negotiate, proposals do not match.
    at com.trilead.ssh2.transport.KexManager.handleMessage(KexManager.java:413)
    at com.trilead.ssh2.transport.TransportManager.receiveLoop(TransportManager.java:765)
    at com.trilead.ssh2.transport.TransportManager$1.run(TransportManager.java:480)
    at java.lang.Thread.run(Thread.java:745)
    fatal: Could not read from remote repository.
    Please make sure you have the correct access rights
    and the repository exists.

  6. Jorrit Schippers says:

    March 6, 2018

    Microsoft TFS didn’t support the lesser secure protocols since it supported git. As JetBrains also has an editor for .NET/C# developers and TFS is well known product in that ecosystem, I think it is a shame that this feature wasn’t implemented earlier. It has been reported years ago.

    • Andrey Cheptsov says:

      March 6, 2018

      You’re right. We’re sorry about that. We will do our best to avoid such situations in future.

  7. Krzysztof Miksa says:

    March 12, 2018

    Do you know when IntelliJ IDEA 2017.3.5 will be released?

    • Andrey Cheptsov says:

      March 12, 2018

      Within a couple of days.

  8. ajay says:

    July 18, 2018

    my SSL issue is resolved thanks 🙂

  9. deepak says:

    July 19, 2018

    To solve ssh key issue run below given command and it will work.

    git config –global http.sslVerify false

    • sami basa says:

      July 20, 2018

      Thanks for the command given command help me to resolve the issue.

  10. Vladimir Tisma says:

    October 25, 2018

    I’ve came across this one, because github integration suddenly stopped working for me.

    I was using Intellij IDEA 2018.2.1 and upgraded to 2018.2.5, without luck.

    Switching to native SSH helped. I was not aware of this setting before, and now I’m wondering why in the world it worked last week, but today it doesn’t with Built-in SSH client.

    Btw, my PHPStorm was working well, and I just realized that it was set to use Native SSH.

    The real question is – is it at all possible to use Built-in SSH client and a passphrased SSH key?

  11. Łukasz Karbowniczek says:

    May 6, 2019

    Thank you:) Adding path to new version of Git works very well.
    Of course new version of Git must be install before you add a path.
    Default installation of InteliJ uses old version of Git from himself installation.

  12. Andrew C says:

    May 22, 2019

    Hello

    Is there an updated version documentation of this around?

    Version 2019.1.2 and it doesn’t seem to have the option to change the SSH client anymore.

    I can go back to an earlier version, but if there’s a way to do this with the current version, that would be better.

  13. Tom K says:

    May 4, 2020

    Hi guys,

    I am having the same case as Andrew C above.

    Version Ultimate 2019.3.4 doesn’t seem to have the option to change the SSH client anymore. I can not go back to the earlier version.

    Could you please help?