我在使用ssh将git文件从jenkins部署到ubuntu服务器时遇到问题,该ssh已安装在另一台ubuntu服务器上。
我尝试遵循各种指南,例如how to setup ssh keys for jenkins to publish via ssh和https://www.youtube.com/watch?v=UPSpLDnuJC0,但没有任何运气。对于Stackoverflow指南,我得到错误jenkins.plugins.publish_over.BapPublisherException: Failed to connect and initialize SSH connection. Message: [Failed to connect session for config [webapp]. Message [java.net.ConnectException: Connection refused (Connection refused)]]
,对于youtube指南,我得到:
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password).
Build step 'Execute shell' marked build as failure
。
我已经在/var/lib/jenkins/.ssh/id_rsa
目录中以jenkins用户(whoami = jenkins)的身份在jenkins服务器上完成了ssh-keygen,将id_rsa.pub
文件的内容复制到了webapp服务器的authorized_keys文件中,等等。一切都完全按照指南进行,但是不知何故我一直被拒绝。
最欢迎您提供想法和帮助。
答案 0 :(得分:0)
webappserver上的用户名必须与使用的用户名匹配才能从jenkins登录,否则SSH不知道使用哪个用户名,您确实会得到已定义的错误。
您确实必须在Web应用程序服务器上定义jenkins用户,或者可以使用其他用户并在jenkins凭据中定义该用户。