Linux Gitlab runner和钥匙链
最近,我在一个VM上配置了一个Gitlab Runner,我想在该VM上添加keychain,以允许Runner在不公开SSH密码的情况下执行scp或SSH之类的命令() 当我安装gitlab multi-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命令:
/home
中看到一个新文件夹“gitlab runner
”
因此,我向该用户添加了一个密码(passwd命令),按照上面的链接中所述编辑其.bash_配置文件,并生成新的SSH密钥
我的runner工作正常,My.gitlab-ci.yml可以执行如下scp命令:
scp jon.doe YOUR_LOGIN@DEV_SERVER_ADDRESS:/var/www/
不需要/公开密码短语
所以我的问题是:
谢谢你的回答 我在askubuntu上问了同样的问题,下面是答案:(有一天它可能对某人有用…) 如果只有您在运行作业,那么就可以了 如果其他人(您不信任)可以将任意命令推入您的
.gitlab-cy.yml
,他基本上可以在您的虚拟机和其他机器上运行任意代码(这当然不是您想要的)
你应该限制你的远程用户你在dev服务器上的登录名
,以执行ForceCommand
所需的最低要求(scponly
或只是强制命令将scp
放入特定目录),阻止端口转发,并可能使用chroot
对于那些需要ForceCommand信息的人