MyTetra Share
Делитесь знаниями!
Что делать, если NetBeans 8.0.2 не может подключиться по SFTP при создании нового проекта с удаленными исходниками
Время создания: 06.08.2016 12:13
Раздел: Компьютер - Программирование - IDE
Запись: xintrea/mytetra_syncro/master/base/147047478230h9niq8gu/text.html на raw.github.com

В NetBeans 8.0.2 есть проблема.


Предположим, нужно создать проект с удаленными исходниками - то есть, когда исходники лежат на удаленном сервере. Это обычно необходимо, если пользователь хочет сделать отладку по xdebug.


Пользователь нажимает Файл - Создать проект - Приложение PHP с удаленного сервера. И на этапе настройки удаленного подключения по SFTP (по сути, это SSH), при нажатии "Проверить подключение", даже если правильно введен хост, логин, и пароль, то будет ошибка:




Не удалось подключиться к серверу anysite.ru

(Причина: Algorithm negotiation fail)



В логе протокола соединения (NetBeans его показывает внизу), будут примерно такие строки:


Connecting to webhamster.ru port 22

Connection established

Remote version string: SSH-2.0-OpenSSH_6.7p1 Debian-5+deb8u1

Local version string: SSH-2.0-JSCH-0.1.49

CheckCiphers: aes256-ctr,aes192-ctr,aes128-ctr,aes256-cbc,aes192-cbc,aes128-cbc,3des-ctr,arcfour,arcfour128,arcfour256

aes256-ctr is not available.

aes192-ctr is not available.

aes256-cbc is not available.

aes192-cbc is not available.

arcfour256 is not available.

CheckKexes: diffie-hellman-group14-sha1

diffie-hellman-group14-sha1 is not available.


Это значит, что на удаленном сервере и локально на компьютере пользователя используются разные реализации SSH (что не удивительно), и они друг с другом не совместимы. Об этом с матами написано даже в багтрекере NetBeans:


https://netbeans.org/bugzilla/show_bug.cgi?id=251641


Вот какое решение предлагают в англонете:

http://www.svrnm.de/blog/fixed-netbeans-phpstorm-algorithm-negotiation-fail/

Кратко, там написано следующее:


Both, NetBeans and PhpStorm, are including JSch as an external library. You can exchange the file using a prepared file or compile it yourself (see below). In the case of NetBeans you have to look for a file called modules/com-jcraft-jsch.jar and for PhpStorm you have to replace lib/jsch-0.1.50.jar. The latter my have a different version in your case.

Hopefully this fixes the issue! If not or if you’d like to compile and pack your own version or if you want to read some more details, read on.

As you can see here and here this issue is known and there is also a patch to solve this issue. So to get a fixed version of JSch you need to download the library, apply the patch and build the jar file. Afterwards you can insert the library in the module folder of your IDE.

Finally, since I’m a happy gentoo user, I decided to create a ebuild for this. This way I can use emerge to update JSch and reinstall NetBeans.


То есть, нужно закрыть NetBeans, скачать файл с правильной реализацией SSH http://www.svrnm.de/files/jsch.jar, и заменить им файл NetBeans 8.0.2/ide/modules/com-jcraft-jsch.jar. На всякий случай рекомендуется сделать резервную копию заменяемого файла.


Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования