3.8. 创建具有 sudo 访问权限的 Ansible 用户
Ansible 必须能够以具有 root
权限的用户身份登录所有 Red Hat Ceph Storage 节点,以便在不提示输入密码的情况下安装软件和创建配置文件。在使用 Ansible 部署和配置 Red Hat Ceph Storage 集群时,您必须在存储集群的所有节点上创建一个没有密码的 root
用户。
前提条件
-
对存储集群中的所有节点具有
root
或sudo
访问权限。
流程
以
root
用户身份登录节点:ssh root@HOST_NAME
- 替换
HOST_NAME,使用 Ceph 节点的主机名。
示例
# ssh root@mon01
出现提示时,输入
root
密码。
创建一个新的 Ansible 用户:
adduser USER_NAME
- 替换
USER_NAME,使用具有 Ansible 用户的新用户名。
示例
# adduser admin
重要不要使用
ceph
作为用户名。ceph
用户名保留用于 Ceph 守护进程。整个集群中的统一用户名可以提高易用性,但避免使用明显的用户名,因为入侵者通常使用它们进行暴力攻击。
为这个用户设置一个新密码:
# passwd USER_NAME
- 替换
USER_NAME,使用具有 Ansible 用户的新用户名。
示例
# passwd admin
出现提示时,输入新密码两次。
为新创建的用户配置
sudo
访问权限:cat << EOF >/etc/sudoers.d/USER_NAME $USER_NAME ALL = (root) NOPASSWD:ALL EOF
- 替换
USER_NAME,使用具有 Ansible 用户的新用户名。
示例
# cat << EOF >/etc/sudoers.d/admin admin ALL = (root) NOPASSWD:ALL EOF
为新文件分配正确的文件权限:
chmod 0440 /etc/sudoers.d/USER_NAME
- 替换
USER_NAME,使用具有 Ansible 用户的新用户名。
示例
# chmod 0440 /etc/sudoers.d/admin
其它资源
- Red Hat Enterprise Linux 8 的配置基本系统设置 指南中的管理用户帐户部分