使用无密码 root ssh 的 Redhat 自动操作

Redhat automated actions with passwordless root ssh

我有几项操作需要在服务器网络上执行。
对于这些操作,我有两个选择:
手动,这会花费很多精力,而且我可能需要在不同的网络上一遍又一遍地做。
使用 ssh 连接时不允许密码提示的脚本或 ansible 自动执行。

其中一些操作需要 root 访问权限。例如, 需要使用 useraddgroupadd 命令。
另外,我需要更改 etcvar 文件夹中的几个文件。

就安全性而言,要求无密码 root ssh 访问是否安全且可接受,以便 ansible 或其他人能够做到这一点?
如果没有,是否可以添加官方参考?最好是 redhat 站点或其他站点。
请注意,不允许使用 sudoer 用户。

我会说不,"passwordless root ssh access" 不安全。但是,您可以以 root 身份通过 ssh 使用基于密钥的身份验证。换句话说,你可以做你想做的事,只是不完全是你描述的那样。

添加用户和组是一个非常典型的配置管理任务,也是 ansible 的完美工作。我建议创建一个使用用户和组模块而不是 运行 原始 useradd 和 groupadd 命令的 ansible 剧本(参见下面的示例)。但是,这将需要设置必要的基于 ssh 密钥的身份验证。

Ansible 也可以帮助完成该任务,但您必须使用密码进行身份验证才能设置基于密钥的身份验证。

https://docs.ansible.com/ansible/latest/modules/user_module.html https://docs.ansible.com/ansible/latest/modules/group_module.html

- name: Add the user 'johnd' with a specific uid and a primary group of 'admin'
  user:
    name: johnd
    comment: John Doe
    uid: 1040
    group: admin