2014-11-14 2 views
0

Я застрял в . Разрешено (publickey) hell пытается скопировать открытый ключ на удаленный сервер, чтобы Jenkins мог rsync-файлы во время сборки.Pass ssh options to ssh-copy-id

Продолжительность:

sudo ssh-copy-id -i id_rsa.pub [email protected]

Я сделал это для другого сервера, но один имеет отдельную пару ключей для SSH, присвоенным EC2, и мой текущий догадаться, что SSH-копия-ID пытается использовать неправильный закрытый ключ для этого соединения. Есть ли способ пройти -vv до ssh-copy-id, чтобы я мог видеть, что Джей пытается использовать. Я заглянул в ключ -o, но, похоже, не понял.

спасибо.

+0

FYI, я создал небольшой скрипт на https://github.com/centic9/generate-and-send-ssh-key, который выполняет необходимые шаги за один раз и дополнительно обеспечивает разрешения файлов/каталогов, которые обычно всегда вызывали меня головные боли ... – centic

ответ

1

Мое предположение, запустив его без sudo. Но это зависит от того, как вы обычно заходите на сервер.

  • Если вы обычно войти в систему с помощью SSH [email protected] затем теряют Sudo.
  • Если не чем пытаться войти с SUDO SSH [email protected]

Чтение ваш вопрос, по крайней мере, один из них должен потерпеть неудачу.

+0

Хорошо, попадая куда-нибудь, с помощью sudo он ищет ключи в/root и не работает SSH. Проблема должна быть ключом к SSH, но я не знаю, как сказать, какой из них использовать при подключении. – Radek

+0

он автоматически заглянет в ваш файл ~/.ssh/id_rsa для этого. –

+0

Да, проблема в том, что у меня есть отдельный ключ EC2 для этой машины, как мне обойти это? Не могу поверить, что я не документировал это в первый раз! – Radek

1

Так вот что я сделал:

добавлены следующие в/и т.д./SSH/ssh_config:

Host xx.xx.xx.xx 
User ubuntu 
IdentityFile ~/.ssh/key-name-for-that-machine.pem 

Затем скопированный ключ-имя-в-этом-machine.pem в/вар/Lib/Jenkins/.ssh

не запускать SSH-копии идентификатор снова, просто Rsync использовать этот ключевой файл при перемещении вещи, вот Rsync сценарий:

rsync -rvh -e 'ssh -v' "/tmp/project-DEV-${BUILD_ID}/" [email protected]:"/www/www.project-dir.net/"