пусть jenkins запускает rsync на другом сервере через скрипт оболочки - PullRequest
0 голосов
/ 13 июня 2019

Я запускаю rsync в сценарии оболочки от jenkins:

+ whoami
jenkins
+ rsync -av --delete --exclude=vendor/ -e 'ssh -o StrictHostKeyChecking=no ' ./ 123.123.123.123:/var/www/something
Permission denied (publickey).

Как видите, я проверил, под каким пользователем он запускается, и это пользователь jenkins. Но я получил отказано в разрешении. Этот пользователь существует, когда я проверяю список пользователей:

getent passwd | cut -d':' -f1

Но на локальном сервере jenkins или на удаленном сервере нет ни пользовательской папки. Я думаю, я должен:

  • создать пару ключей на сервере jenkins
  • поместите это в / home / jenkins на локальном сервере jenkins
  • поместите открытый ключ в author_keys на удаленном сервере

Это правильно? Если так, где я могу найти этот файл author_keys на пульте? Должен ли я поместить его в /home/jenkins/.ssh/authorized_keys на пульте?

Боюсь, я создаю большую дыру в безопасности, потому что понятия не имею, что я здесь делаю.

...