FreeIPA集成了Directory Server、Kerberos、PKI、DNS、Certmonger、NTP Server、WebUI、Trusts、Client等组件,在Hadoop集群上进行统一用户管理和安全认证只要安装FreeIPA就够了,省去了单独集成OpenLDAP、Kerberos、NTP等的过程,十分便捷。本文讲解如何在RedHat7.6上安装FreeIPA。
环境准备
首先要确保安装FreeIPA服务的服务器主机名为完全限定域名(FQDN),这里我们使用cdp2.soundhearer.cn作为FQDN。
FreeIPA安装需要大量的随机数运行加密操作,需要安装rngd服务防止操作系统的熵值过低
启动rngd服务并设置为开机自启动
FreeIPA依赖需要启用IPv6堆栈,修改/etc/sysctl.conf文件增加如下内容
执行sysctl -p命令使其生效
安装FreeIPA
安装FreeIPA服务依赖包
代码语言:javascript复制yum -y install ipa-server ipa-server-dns bind bind-dyndb-ldap
在命令行执行如下命令安装FreeIPA服务
代码语言:javascript复制ipa-server-install
在命令行执行如下命令查看FreeIPA服务状态
代码语言:javascript复制ipactl status
FreeIPA的使用
在浏览器输入https://cdp2.soundhearer.cn进入FreeIPA管理界面
默认管理员为admin,密码为安装时命令行设置的。
进入管理主界面,可以看到用户列表
添加一个测试用户cdptest
添加成功
点击创建的用户名可以进入用户详细属性编辑界面
在FreeIPA服务器上查看cdhadmin用户是否已存在
可以看到通过FreeIPA创建的用户,默认为该用户创建了对应的Kerberos账号,并且用户已同步至OS。
遇到的错误:
1.端口冲突
2.json rpc失败
因为这台机器安装了cloudera-manager-agent,也就安装了依赖的Httpd服务,导致端口443和8443冲突,修改Httpd端口后,出现json rpc失败。
经过查找得知:
FreeIPA无法更改端口和配置,更改它们将导致系统的其他部分期望JSON-RPC和XML-RPC端点失败,因为它们假定端点在443上可用,而不是其他任何东西,并且没有机制来协商IPA框架的备用端口和客户。
因此,客户端计算机部署将无法工作,并且命令行中的IPA管理也将无法正常工作。Web UI只是一个JavaScript应用程序,它使用命令行工具使用的相同JSON-RPC端点。