当Ansible无法通过SSH连接到主机,但是使用SSH命令可以正常工作时,可能有几个原因导致问题。以下是一些解决方法的示例代码:
$ sudo systemctl start ssh
# inventory.ini
[example]
example-host ansible_host=192.168.0.100 ansible_user=your_username ansible_port=22
$ ssh-copy-id your_username@192.168.0.100
# playbook.yml
- name: Example playbook
hosts: example
become: yes
become_user: your_username
become_method: su
tasks:
- name: Copy SSH key
authorized_key:
user: your_username
key: "{{ lookup('file', '/path/to/your/key.pub') }}"
$ sudo ufw allow ssh
$ sudo setsebool -P ssh_sysadm_login 1
如果尝试以上解决方法后问题仍然存在,可能还有其他原因导致问题,如网络连接问题或主机配置问题。需要进一步排查和调试。
下一篇:Ansible无法完成某些任务