问题1:通过ssh直接使用用户名连接成功,但是使用ansible连接却报错Permission denied (publickey,password)
这个问题卡了笔者很久很久,后面发现ansible是直接使用root连接服务器,而笔者常用的sudo su使用的是特定用户密码,进而发现是因为Linux系统的root密码和用户密码是不相同的(笔者一路自学,有很多疏忽和漏洞,见谅),只需要改一下使用sudo passwd root更改root用户密码即可解决
问题2:确定root密码正确,ip正确,但仍然报错Permission denied (publickey,password)
Linux服务器的ssh连接出于安全性考虑,一般只支持使用普通用户远程连接,而ansible使用root用户连接,需要在服务器的sshd配置文件中修改/etc/ssh/sshd_config文件,需要在其中加入PermitRootLogin yes,然乎重启sshd服务
sudo service sshd restart