2016-05-20 2 views
-1

Большая картинка: Попытка подключить GitHub к Дженкинсу. Дженкинс работает на Ubuntu под пользователем Jenkins. (Я вхожу в систему как Пьер, затем переключается на пользователя Jenkins)Почему пользовательский агент продолжает изменять PID и теряет ключи?

Я следую за This Guide, чтобы соединить два. Я пытаюсь сгенерировать ключи из командной строки Jenkins. я использовал

ssh-keygen -t rsa -C '[email protected]' 

генерировать ключ и использовать стандартные конфигурации. Но тогда, когда я пытаюсь подключиться к GitHub я получаю следующее:

[email protected]:~$ eval "$(ssh-agent -s)" 
Agent pid 6328 
[email protected]:~$ ssh-add -l -E md5 
The agent has no identities. 
[email protected]:~$ ssh-add ~/.ssh/id_rsa 
Identity added: /var/lib/jenkins/.ssh/id_rsa (/var/lib/jenkins/.ssh/id_rsa) 
[email protected]:~$ ssh-add -l -E md5 
2048 MD5:ad:1f:9d:5c:b5:cc:8e:bb:06:5b:c2:5e:68:67:77:24 /var/lib/jenkins/.ssh/id_rsa (RSA) 
[email protected]:~$ ssh -T [email protected] 
Permission denied (publickey). 
[email protected]:~$ eval "$(ssh-agent -s)" 
Agent pid 6353 
[email protected]:~$ ssh-add -l -E md5 
The agent has no identities. 

=> даже после того, как вручную добавлять ключи к SSH-агент, он не будет подключаться!

1) Что происходит с изменением PID агента?

2) Почему он теряет свою идентичность?

3) Почему он не соединяется?

+0

Этот вопрос не в тему, он принадлежит на superuser.com. –

ответ

0

Ответы на вопросы 1 и 2 одинаковы: каждый eval "$(ssh-agent -s)" запускает новый агент ssh каждый раз. eval выполняет текст, выводимый в этой точке в виде команд оболочки, заставляя его определять новые переменные среды, которые сообщают ssh-add и ssh, как использовать новый агент ssh (который также удаляет информацию о том, как использовать любые другие агенты ssh, которые вы начали ранее, хотя они продолжают работать).

Я не знаю ответа на вопрос 3, но кажется странным, что вы пытаетесь напрямую передать ssh на [email protected], и я не могу найти, где вы указали в своем путеводителе, что он говорит вам об этом. AIUI, [email protected] - это не то, что вы должны использовать для ssh, а вместо того, что только появляется в URL-адресах проектов Gitlab, но я могу ошибаться.

+0

Это объяснение, которое я надеялся получить - мне удалось выяснить № 3: мне нужно было настроить открытый ключ в github.com, что позволило мне подключиться (пришлось пойти и скопировать пасту из открытого ключа и вставить ее в разделе настроек моей учетной записи на github.com) – Peter

Смежные вопросы