Ssh密码验证失败
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ssh密码验证失败相关的知识,希望对你有一定的参考价值。
参考技术A #进入目录cd /etc/ssh/
vim sshd_config
#找到PermitRootLogin without-password
#将without-password修改为yes
#重启ssh服务
service ssh restart
#再用securecrt就能成功登录 参考技术B 系统出问题了吗追问
没有啊
ssh连接主机失败:主机密钥验证失败
【中文标题】ssh连接主机失败:主机密钥验证失败【英文标题】:Failed to connect to the host via ssh: Host key verification failed 【发布时间】:2020-07-15 03:54:27 【问题描述】:我在执行 Jenkins 的 ansible-playbook 表单时遇到问题,
喜欢:
PLAY [centos-slave-02] *********************************************************
TASK [Gathering Facts] *********************************************************
fatal: [centos-slave-02]: UNREACHABLE! => "changed": false, "msg": "Failed to connect to the host via ssh: Host key verification failed.", "unreachable": true
PLAY RECAP *********************************************************************
centos-slave-02 : ok=0 changed=0 unreachable=1 failed=0 skipped=0 rescued=0 ignored=0
但我能够得到乒乓响应,并且每次都要求
Matching host key in /var/jenkins_home/.ssh/known_hosts:5 :
jenkins@c11582cb5024:~/jenkins-ansible$ ansible -i hosts -m ping centos-slave-02
Warning: the ECDSA host key for 'centos-slave-02' differs from the key for the IP address '172.19.0.3'
Offending key for IP in /var/jenkins_home/.ssh/known_hosts:2
Matching host key in /var/jenkins_home/.ssh/known_hosts:5
Are you sure you want to continue connecting (yes/no)? yes
centos-slave-02 | SUCCESS =>
"ansible_facts":
"discovered_interpreter_python": "/usr/bin/python"
,
"changed": false,
"ping": "pong"
谁能解决这个问题!在此先感谢。
【问题讨论】:
【参考方案1】:jenkins-ansible
主机中的 known_hosts
文件已经有主机 centos-slave-02
的条目。现在centos-slave-02
主机的身份已更改,需要添加一个新条目。但是文件中的现有条目正在引发此警告。
Warning: the ECDSA host key for 'centos-slave-02' differs from the key for the IP address '172.19.0.3' Offending key for IP in /var/jenkins_home/.ssh/known_hosts:2 Matching host key in /var/jenkins_home/.ssh/known_hosts:5
您可以手动编辑/var/jenkins_home/.ssh/known_hosts
文件以删除此centos-slave-02
主机的密钥或运行以下命令,
ssh-keygen -R centos-slave-02
使用 ansible 的解决方法是将此行添加到 ansible.cfg
下的 [defaults]
部分,
[defaults]
host_key_checking = False
这将在建立 SSH 连接时禁用 HostKeyChecking
。
【讨论】:
请记住,禁用 HostKeyChecking 是非常糟糕的做法。最正确的做法是设置 SSH 用户/主机证书。【参考方案2】:确保不要在 jenkin build Exec 命令中使用 sudo。
【讨论】:
以上是关于Ssh密码验证失败的主要内容,如果未能解决你的问题,请参考以下文章
Linux使用Google Authenticator 实现ssh登录双因素认证