使用普通模式集群用户在非集群节点登录
操作场景
集群安装为普通模式时,各组件客户端不支持安全认证且无法使用kinit命令,所以集群外的节点默认无法使用集群中的用户,可能导致在这些节点访问某个组件服务端时用户鉴权失败。
如果需要在集群外节点以组件用户身份访问集群资源,管理员需为集群外节点设置同名用户可通过SSH协议登录节点的功能,并以登录操作系统用户身份连接集群各组件服务端。
前提条件
操作步骤
- 以root用户登录到需要添加用户的节点。
- 执行以下命令:
rpm -qa | grep pam和rpm -qa| grep krb5-client
界面一共显示以下rpm包:
pam_krb5-32bit-2.3.1-47.12.1 pam-modules-32bit-11-1.22.1 yast2-pam-2.17.3-0.5.211 pam-32bit-1.1.5-0.10.17 pam_mount-32bit-0.47-13.16.1 pam-config-0.79-2.5.58 pam_krb5-2.3.1-47.12.1 pam-doc-1.1.5-0.10.17 pam-modules-11-1.22.1 pam_mount-0.47-13.16.1 pam_ldap-184-147.20 pam-1.1.5-0.10.17 krb5-client-1.6.3
- 检查操作系统实际是否已安装清单中的rpm包?
- 从操作系统镜像中获取缺少的rpm包,并上传文件到当前目录,然后执行以下命令安装rpm包:
rpm -ivh *.rpm
安装的RPM包可能带来安全风险,请用户对操作系统进行加固时考虑安装这些RPM包所带来的风险。
安装完成后执行5。
- 执行以下命令,配置pam使用Kerberos认证。
pam-config --add --krb5
如果需要在非集群节点取消Kerberos认证与系统用户登录,以“root”用户执行pam-config --delete --krb5命令。
- 解压认证凭据文件得到“krb5.conf”,并使用WinSCP将此配置文件上传到集群外节点的“/etc”目录,执行以下命令设置权限使其他用户可以访问,例如“604”:
chmod 604 /etc/krb5.conf
- 以root用户继续在连接会话中执行以下命令为“人机”用户添加对应的操作系统用户,并指定用户主组为“root”。
此操作系统用户密码与在Manager创建“人机”用户时设置的初始密码相同。
useradd 用户名 -m -d /home/admin_test -g root -s /bin/bash
例如,“人机”用户名为“admin_test”,执行以下命令:
useradd admin_test -m -d /home/admin_test -g root -s /bin/bash
第一次使用新添加的操作系统用户通过SSH协议登录节点时,首次输入用户密码系统提示密码过期,第二次输入用户密码后系统提示修改密码。请输入一个同时满足节点操作系统及集群密码复杂度的新密码。