Бегун Gitlab и связка ключей

Недавно я настроил Бегуна Gitlab на VM, и я хотел добавить связку ключей на этом VM, чтобы позволить бегуну выполнять команды как scp или SSH, не выставляя мой SSH passphras (https://www.cyberciti.biz/faq/ssh-passwordless-login-with-keychain-for-scripts/)

И когда я устанавливаю gitlab-multi-runner (https://docs.gitlab.com/runner/install/linux-repository.html), я вижу новую папку"gitlab-runner"в моем /home.

Таким образом, я добавил пароль к этому пользователю (passwd команда), отредактируйте ее .bash_profile, как описано в ссылке выше и генерируйте новые ключи SSH.

Мой бегун хорошо работает, мой .gitlab-ci.yml может выполнить команды scp как это:

scp jon.doe YOUR_LOGIN@DEV_SERVER_ADDRESS:/var/www/

Никакой пароль, требуемый / выставленный.

Так здесь мои вопросы:

  1. Действительно ли безопасно настроить бегуна как это?
  2. Существует ли официальный или лучший путь, чтобы сделать то, что я хочу? (используйте SSH и SCP безопасно с gitlab-бегуном),

Я думаю, что не должно быть никакой проблемы, но я не эксперт в Linux и SSH так...

Спасибо за Ваши ответы!

2
задан 9 December 2016 в 13:53

1 ответ

это безопасный настроить бегуна как это?

только при выполнении заданий, это в порядке.

, Если кто-то еще (Вы не доверяете) может продвинуть какую-либо произвольную команду в Ваш .gitlab-cy.yml, он может в основном выполнить любой произвольный код на Вашей виртуальной машине и на Вашей другой машине (который является, конечно, не, что Вы хотите).

необходимо ограничить удаленного пользователя YOUR_LOGIN на dev сервере, чтобы сделать минимум, необходимый ForceCommand (scponly или просто принудительная команда к scp в определенный каталог), перенаправление портов блока и возможно использовать chroot.

0
ответ дан 2 December 2019 в 09:36

Другие вопросы по тегам:

Похожие вопросы: