Linux Gitlab runner和钥匙链

Linux Gitlab runner和钥匙链,linux,ssh,gitlab,keychain,Linux,Ssh,Gitlab,Keychain,最近,我在一个VM上配置了一个Gitlab Runner,我想在该VM上添加keychain,以允许Runner在不公开SSH密码的情况下执行scp或SSH之类的命令() 当我安装gitlab multi-runner()时,我会在我的/home中看到一个新文件夹“gitlab runner” 因此,我向该用户添加了一个密码(passwd命令),按照上面的链接中所述编辑其.bash_配置文件,并生成新的SSH密钥 我的runner工作正常,My.gitlab-ci.yml可以执行如下scp命令:

最近,我在一个VM上配置了一个Gitlab Runner,我想在该VM上添加keychain,以允许Runner在不公开SSH密码的情况下执行scp或SSH之类的命令()

当我安装gitlab multi-runner()时,我会在我的
/home
中看到一个新文件夹“
gitlab runner

因此,我向该用户添加了一个密码(passwd命令),按照上面的链接中所述编辑其.bash_配置文件,并生成新的SSH密钥

我的runner工作正常,My.gitlab-ci.yml可以执行如下scp命令:

scp jon.doe YOUR_LOGIN@DEV_SERVER_ADDRESS:/var/www/
不需要/公开密码短语

所以我的问题是:

  • 这样配置runner安全吗
  • 有没有一个官方的或更好的方法来做我想做的事?(与gitlab runner一起安全地使用SSH和SCP)
  • 我认为应该没有问题,但我不是Linux和SSH方面的专家,所以


    谢谢你的回答

    我在askubuntu上问了同样的问题,下面是答案:(有一天它可能对某人有用…)

    如果只有您在运行作业,那么就可以了

    如果其他人(您不信任)可以将任意命令推入您的
    .gitlab-cy.yml
    ,他基本上可以在您的虚拟机和其他机器上运行任意代码(这当然不是您想要的)

    你应该限制你的远程用户
    你在dev服务器上的登录名
    ,以执行
    ForceCommand
    所需的最低要求(
    scponly
    或只是强制命令将
    scp
    放入特定目录),阻止端口转发,并可能使用chroot

    对于那些需要ForceCommand信息的人