Ansible 用户 ssh sudo PermitRootLogin 已禁用

Ansible 用户 ssh sudo PermitRootLogin 已禁用

当远程服务器没有 ssh 参数时,我可以正常工作:

PermitRootLogin yes

我的工作 ansible 命令:

[ansible@myansible ~]$ ansible remoteserveur -a "cat /etc/sudoers"

PermitRootLogin no为了安全起见,我想更改所有服务器上的 ssh 参数。完成此操作后,就不再起作用了。

UNREACHABLE! => {
    "changed": false,
    "msg": "Failed to connect to the host via ssh: Permission denied (publickey,password).",
    "unreachable": true

我怎样才能让我的 ansible 的用户成为普通用户并有可能通过ansible 以 root 身份运行命令

非常感谢您的关注。

答案1

您确定您的 Ansible 剧本中没有“成为:是”指令吗?该指令负责 Ansible 代理的特权访问。

https://docs.ansible.com/ansible/latest/user_guide/become.html

答案2

非常感谢尼古拉,它给了我解决问题的好方法。我最终使用:

ansible-playbook permitrootlogin.yml -b -K

-b 表示“成为”,-K 表示“询问权限升级密码”

TASK [Disallow root SSH access] ******************************************************************************************************************************************************
ok: [server1]
ok: [server2]

相关内容