I tried setting up PHPStorm on Windows 8.1 with remote files stored on a Linux VM via VirtualBox bridged connection. However,upon trying to setup SFTP, I got this error: “Algorithm negotiation fail”. It seems related to SSH rather than specific to PHPStorm but here is the fix.
UPDATE:
It has been a long time since I last encountered the issue. This is probably fixed now by PHPStorm since I don’t encounter it anymore when I got my licensed copy last June 2016 (1 year after). Also, I don’t experience it on RubyMine as well which is my current IDE. Below is the rest of the original post.
I found the fix via a German blog post here: http://www.dailydevbook.de/phpstorm-sftp-connect-debian-8-jessy-algorithm-negotiation-fail/ but it is easy to understand what he is trying to say, like: open this file, and add this, etc.
So he said (or I guess he said): edit SSHD config file /etc/ssh/sshd_config
and this entry:
KexAlgorithms=diffie-hellman-group1-sha1
According to other sources that I have read before ending up on this German blog post, the issue more on client to server configuration where client is not compatible with server setup, be it the SSHD version or compression or other communication algorithm.
So the fix is to specify the algorithm on the server.
I’m not really sure about this but, enjoy and share!
Yes, that helps connecting, but has the side effect that your server is vulnerable due to an insecure protocol… it was disabled in newer distributions of Linux by default for a reason.
I’d propose to instead update your (client side) JDK to 1.8 and even older PhpStorms work again with newer Linux servers.
Thanks for the input!
I think the PHPStorm updates have already fixed this since I’m using a different VM now and I don’t have the config anymore, so I assume the new SSH client has better setup now.