参考:https://linux.cn/article-15783-1.html
FreeIPA[1] 是一个自由开源的基于 Linux 系统的集中式身份和访问管理工具,它是 Red Hat 身份管理器的上游项目。使用 FreeIPA,我们可以轻松地管理集中式身份验证以及帐户管理、策略(基于主机的访问控制)和审计。
FreeIPA 基于以下开源项目:
根目录
可用空间大于12GB
事不宜迟,让我们深入了解 FreeIPA 安装步骤。
打开服务器的终端并使用 hostnamectl 命令设置主机名:
# 设置ipa服务端主机名
hostnamectl set-hostname "ipa.linuxtechi.lan"
# 将当前Shell进程替换为一个新的Bash Shell进程,并继承原Shell的环境变量和当前工作目录
exec bash
# 更新系统到最新
dnf update -y
# 重启系统使更新完全生效
reboot
运行以下 tee 命令更新 /etc/hosts 文件,根据你的设置替换 IP 地址和主机名。
# 添加hosts配置
echo -e "192.168.1.102\tipa.linuxtechi.lan\t ipa" | sudo tee -a /etc/hosts
将 SELinux 设置为许可,运行以下命令:
# 临时关闭SELinux
sudo setenforce 0
# 将SELinux策略调为permissive(只记录警告不拒绝)
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
# 查看SELinux状态
getenforce
如果正在你的服务器上运行系统防火墙,那么运行如下 firewall-cmd 命令以允许 FreeIPA 端口:
# 防火墙放行freeipa-4
firewall-cmd --add-service=freeipa-4 --permanent
# 永久放行{http,https,dns,ntp,freeipa-ldap,freeipa-ldaps}服务
firewall-cmd --add-service={http,https,dns,ntp,freeipa-ldap,freeipa-ldaps} --permanent
# 重新加载firewall防火墙
firewall-cmd --reload
Appstream 包仓库中提供了 FreeIPA 包及其依赖项。由于我们计划安装集成 DNS 的 FreeIPA,因此我们还将安装 ipa-server-dns 和 bind-dyndb-ldap。
运行以下命令安装 FreeIPA软件包 及其依赖项:
# 安装IdM(Identity Management)服务的默认套件组(DL1)
dnf -y install @idm:DL1
# 安装FreeIPA软件包及其组件
dnf install freeipa-server ipa-server-dns bind-dyndb-ldap -y
参考:https://docs.oracle.com/zh-cn/learn/ol-freeipa/index.html
成功安装 FreeIPA 包及其依赖项后,使用以下命令启动 FreeIPA 安装设置。
它将提示几件事,例如配置集成 DNS、主机名、域名和领域名。
# 安装 FreeIPA
sudo ipa-server-install
Do you want to configure integrated DNS (BIND)? [no]:
,输入yes
FreeIPA 服务器在安装期间创建
以下用户组
:
警告: 请勿删除 admin 组,因为它包含默认的 admin 用户。FreeIPA 服务器要求 admin 组正常运行。
输入并确认目录服务器超级用户
和 FreeIPA admin 用户
的密码
。目录服务器超级用户
映射到目录
中的 cn=Directory Manager。
目录服务器超级用户
的密码IPA服务器管理用户
“admin”的密码NETBIOS域名
和配置时间
的默认值在上面的窗口中输入 “yes
” 后,需要一些时间来配置你的 FreeIPA 服务器,设置成功后,我们将得到下面的输出:
以上输出确认 FreeIPA 已成功安装。
执行下面的 ipactl 命令查看 FreeIPA 的所有服务是否都在运行:
# 显示 FreeIPA 服务的当前状态--必须以root运行
sudo ipactl status
## 回显
Directory Service: RUNNING
krb5kdc Service: RUNNING
kadmin Service: RUNNING
named Service: RUNNING
httpd Service: RUNNING
ipa-custodia Service: RUNNING
pki-tomcatd Service: RUNNING
ipa-otpd Service: RUNNING
ipa-dnskeysyncd Service: RUNNING
ipa: INFO: The ipactl command was successful
让我们使用 kinit 命令验证管理员用户是否会通过 Kerberos 获取令牌,使用我们在 FreeIPA 安装期间提供的相同管理员用户密码。
# 获取ipa管理员凭证
sudo kinit admin
# 查看当前已获取的ipa管理员凭证信息
sudo klist
以上命令的输出:
完美,上面的输出确认管理员获得了令牌。现在,尝试访问 FreeIPA Web 控制台,在网络浏览器上输入以下 URL:
https://ipa.linuxtechi.lan/ipa/ui
或者
https://<Server-IPAddress>/ipa/ui
使用我们在安装过程中指定的用户名 admin
和密码
。
对于 FreeIPA Web 控制台,使用自签名 SSL 证书,这就是我们看到此窗口的原因,因此单击“接受风险并继续Accept the Risk and Continue
”。
输入凭据后,单击“登录Log in”。
这证实我们已在 RHEL8上成功设置 FreeIPA。
# 创建用户组ops
ipa group-add ops
# 获取FreeIPA服务器上所有现有用户组的列表
ipa group-find
# 将用户ops添加到opsadmin组中
ipa group-add-member ops --users=opsadmin
# 获取FreeIPA服务器上所有现有用户的列表
ipa user-find