@zhangyy
2021-11-24T17:34:25.000000Z
字数 2738
阅读 161
大数据运维专栏
openldap 服务端已经配置完成,不会看flyfish 博文 https://blog.51cto.com/flyfish225/4562546 在此不做部署:
安装openldap-client 装包:
yum -y install openldap-clients sssd authconfig nss-pam-ldapd
编辑配置文件:
vim /etc/openldap/ldap.conf
---
BASE dc=flyfish,dc=com
URI ldap://192.168.100.14
#SIZELIMIT 12
#TIMELIMIT 15
#DEREF never
TLS_CACERTDIR /etc/openldap/certs
# Turning this off breaks GSSAPI used with krb5 when rdns = false
SASL_NOCANON on
----
openldap 客户端验证:
ldapsearch -D "cn=admin,dc=flyfish,dc=com" -W |grep dn
1.登录CM的Web控制台,进入Hive服务,关闭Hive的模拟功能
hive.server2.enable.doAs =false
修改LDAP相关配置,通过这里可以进行全局配置,配置后所有的HiveServer2服务均使用该配置
启用 LDAP 身份验证 =true
hive.server2.authentication.ldap.url=ldap://192.168.100.14
hive.server2.authentication.ldap.baseDN= ou=cdh,dc=flyfish,dc=com
去openldap 创建 条目 hive 的 uid
下面从新启动CDH 的 hive 服务:
登录测试:
beeline
beeline> !connect jdbc:hive2://192.168.100.11:10000
Connecting to jdbc:hive2://192.168.100.11:10000
Enter username for jdbc:hive2://192.168.100.11:10000: hive
Enter password for jdbc:hive2://192.168.100.11:10000: ******
1.登录CM的Web控制台,进入Impala服务,修改LDAP配置
enable_ldap_auth = true
ldap_uri = ldap://192.168.100.14
ldap_baseDN = ou=cdh,dc=flyfish,dc=com
Impala Daemon 命令行参数高级配置代码段
--ldap_passwords_in_clear_ok
设置 impala的openldap 的用户
从新启动impala
impala 登录测试:
impala-shell -i flyfishsrvs01 -u hive -d default
登录测试输入错误
Error connecting: TTransportException, TSocket read 0 bytes
impala-shell -i flyfishsrvs01 -u hive -d default -l -u impala --auth_creds_ok_in_clear
使用管理员登录CM,进入Hue配置页面,修改Hue的认证方式为LDAP
导入ldap 数据:
vim group-flyfish.ldif
---
dn: cn=flyfish,ou=Group,dc=flyfish,dc=com
objectClass: posixGroup
objectClass: top
cn: flyfish
userPassword: {SSHA}PFp8AcylmONN4ZWtfZ/dPvdfkY/a5JUo
gidNumber: 984
---
ldapadd -D "cn=admin,dc=flyfish,dc=com" -W -x -f group-flyfish.ldif
导入用户组:
vim user-ldap.ldif
---
dn: uid=flyfish,ou=People,dc=flyfish,dc=com
uid: flyfish
cn: flyfish
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword: {SSHA}PFp8AcylmONN4ZWtfZ/dPvdfkY/a5JUo
shadowLastChange: 17493
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 987
gidNumber: 984
homeDirectory: /home/flyfish
----
ldapadd -D "cn=admin,dc=flyfish,dc=com" -W -x -f user_ldap.ldif
hue 的ldap 认证
ldap_uri = ldap://192.168.100.14
ldap_baseDN = ou=cdh,dc=flyfish,dc=com
hue_safety_valve.ini 配置:
从新启动hue
修改完以上配置后保存,在重启Hue服务前将认证方式修改为desktop.auth.backend.AllowFirstUserDjangoBackend
重启成功后使用Hue的超级管理员登录,我们这里是hdfs用户为超级管理员
先以本地账号登录然后同步 openldap的用户:
hdfs/hdfs
添加同步ldap的用户,应为启用ldap 账号之后就不能 用本地账号了
添加同步用户flyfish
将flyfish 用户 添加为 管理员 权限 不然 HUE 启用 LDAP hdfs 的超级账号就不能用了。
添加flyfish 的 用户组
编辑flyfish 用户组
切换 hue 的认证模式 为LDAP 然后重启hue
重启之后 hdfs的本地用户就登录不了。
采用LDAP 用户的flyfish 登录
设置flyfish 账户密码 为123456
使用flyfish 账号登录hue