我是一个远程服务器,用于托管我的项目。我在本地使用我的PhpStorm,因此每次保存时,它都会自动与远程服务器同步。
但是,我无法配置PhpStorm在远程服务器上运行PHPUnit。
在Configure Remote PHP Interpreter
下,我填写了正确的信息(主机,用户名和密码)。
当我尝试指定PHP解释器的路径时,我验证时{I} "Algorithm negotiation fail"
的错误为"Test SFTP Connection: Connection to 'id address' failed. Connection failed"
。
我该如何解决?
答案 0 :(得分:37)
我遇到了同样的问题。我通过添加
解决了这个问题KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
到
/etc/ssh/sshd_config之后,我重启sshd
sudo systemctl restart sshd
答案 1 :(得分:7)
刚刚将Ubuntu升级到16.04并遇到了这个问题,"算法协商失败"在PHPStorm 8.0.3中。
问题在于jsch-0.1.51.jar库。如果用最新的https://sourceforge.net/projects/jsch/(当前为jsch-0.1.54.jar)覆盖jsch-0.1.51.jar文件并重新启动,则应该没问题。无需为ssh守护程序添加不安全的算法。
答案 2 :(得分:2)
正如 Guillaume Fache 所提出的,PhpStorm的最小配置是:
KexAlgorithms diffie-hellman-group1-sha1
但diffie-hellman-group1-sha1
使用:
1)1024 bits modulus
- 易碎,标记为insecure
2)SHA-1
- 易碎,确认的碰撞攻击可能性
<强>结论强>
使用公钥/私钥对 - 更安全,无需保存或输入密码
答案 3 :(得分:0)
编辑此文件:
sudo /etc/ssh/sshd_config
添加以下行:
KexAlgorithms diffie-hellman-group1-sha1
并重新启动:
sudo systemctl restart sshd
对我有用!