pygit2 и github

Автор: Admin | 14.03.2018

На Ubuntu 16.04 перестал работать SSH коннект до github.com при помощи pygit2. Причина и решение далее

Попытка коннекта сопровождалась такой записью в логе

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/salt/utils/gitfs.py", line 1549, in _fetch
fetch_results = origin.fetch(**fetch_kwargs)
File "/usr/lib/python2.7/dist-packages/pygit2/remote.py", line 378, in fetch
check_error(err)
File "/usr/lib/python2.7/dist-packages/pygit2/errors.py", line 64, in check_error
raise GitError(message)
GitError: Failed to start SSH session: Unable to exchange encryption keys
Error occurred fetching gitfs remote 'git@github.com:user/repo.git': Failed to start SSH session: Unable to exchange encryption keys

Причина в ‘устранении слабых криптографических стандартов’ на площадке, cсылка на уведомление.

Решением будет просто обновить libssh2 до версии 1.8, но поскольку в Ubuntu 16.04 последняя 1.5, то придется скачать библиотеку с зависимостями и поставить руками:

wget https://launchpad.net/ubuntu/+source/libssh2/1.8.0-1/+build/12564861/+files/libssh2-1_1.8.0-1_amd64.deb
wget https://launchpad.net/ubuntu/+source/libgpg-error/1.27-6/+build/14315313/+files/libgpg-error0_1.27-6_amd64.deb
wget https://launchpad.net/ubuntu/+source/libgcrypt20/1.8.1-4ubuntu1/+build/14376310/+files/libgcrypt20_1.8.1-4ubuntu1_amd64.deb
dpkg -i *.deb

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *