Ric*_*o79 6 ssh jenkins jenkins-pipeline
在Jenkins2.0管道中,我需要远程ssh来定位机器.我的旧方法是使用"使用ssh在远程主机上执行shell脚本".我想指定用户名和密码.
我已经读到了groovy方法应该是这样的
sshagent(['RemoteCredentials']) {
sh 'ssh -o StrictHostKeyChecking=no -l remoteusername remotetarget uname -a'
}
Run Code Online (Sandbox Code Playgroud)
RemoteCredentials:它是带密码的私钥
有没有办法用用户名/密码远程凭证制作ssh?sshagent不支持用户名/密码身份验证
里卡多
所以不幸的是,你是对的.
看起来ssh-agent-plugin仅支持通过Jenkins的Credentials Management区域添加的存储用户,密码,公钥证书.请参阅此单元测试,该测试验证ssh-agent是否基于公钥正常工作.插件中不存在未经测试的功能以支持用户+密码身份验证.
如果可以,请切换到基于公钥的身份验证.如果由于某种原因,你不能切换......你COULD安装sshpass您詹金斯中,但通常认为这是不好的做法.
node {
stage 'Does sshpass work?'
sh 'sshpass -p \'password\' ssh user@host "ls; hostname; whois google.com;"'
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
25128 次 |
最近记录: |