RHEL8安装FreeIPA服务器

FreeIPA简介

参考:https://linux.cn/article-15783-1.html

FreeIPA[1] 是一个自由开源的基于 Linux 系统的集中式身份和访问管理工具,它是 Red Hat 身份管理器的上游项目。使用 FreeIPA,我们可以轻松地管理集中式身份验证以及帐户管理、策略(基于主机的访问控制)和审计。
FreeIPA 基于以下开源项目:

  • LDAP 服务器 – 基于 389 项目
  • KDC – 基于 MIT Kerberos 实现
  • 基于 Dogtag 项目的 PKI
  • 用于活动目录集成的 Samba 库
  • 基于 BIND 和 Bind-DynDB-LDAP 插件的 DNS 服务器
  • NTP

先决条件

  • 预装 RHEL8操作系统
  • 具有管理员权限的 Sudo 用户
  • 内存 = 2 GB
  • CPU = 2 个 vCPU
  • 磁盘 = 根目录可用空间大于12GB
  • 互联网连接

FreeIPA 的实验室详细信息

  • IP 地址 = 192.168.1.102
  • Hostanme = ipa.linuxtechi.lan
  • 操作系统:RHEL 8 或 Rocky Linux 8 或 AlmaLinux 8

事不宜迟,让我们深入了解 FreeIPA 安装步骤。


1、设置主机名并安装更新

打开服务器的终端并使用 hostnamectl 命令设置主机名:

# 设置ipa服务端主机名
hostnamectl set-hostname "ipa.linuxtechi.lan"

# 将当前Shell进程替换为一个新的Bash Shell进程,并继承原Shell的环境变量和当前工作目录
exec bash

# 更新系统到最新
dnf update -y

# 重启系统使更新完全生效
reboot

2、更新hosts文件

运行以下 tee 命令更新 /etc/hosts 文件,根据你的设置替换 IP 地址和主机名。

# 添加hosts配置
echo -e "192.168.1.102\tipa.linuxtechi.lan\t ipa" | sudo tee -a /etc/hosts

3、关闭SELinux

将 SELinux 设置为许可,运行以下命令:

# 临时关闭SELinux
sudo setenforce 0

# 将SELinux策略调为permissive(只记录警告不拒绝)
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

# 查看SELinux状态
getenforce

4、在防火墙中允许 FreeIPA 端口

如果正在你的服务器上运行系统防火墙,那么运行如下 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

5、安装FreeIPA软件包及其组件

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

6、配置FreeIPA服务端

参考:https://docs.oracle.com/zh-cn/learn/ol-freeipa/index.html
成功安装 FreeIPA 包及其依赖项后,使用以下命令启动 FreeIPA 安装设置。
它将提示几件事,例如配置集成 DNS、主机名、域名和领域名。

# 安装 FreeIPA
sudo ipa-server-install

上述命令的输出如下所示:
在这里插入图片描述


配置集成 DNS 服务

Do you want to configure integrated DNS (BIND)? [no]:,输入yes
image.png


配置服务器主机名

在这里插入图片描述


配置域名

image.png


配置领域(全大写)

image.png


7、配置ipa管理员账号和密码

FreeIPA 服务器在安装期间创建以下用户组:

  • admins
  • ipausers
  • trust admins

警告: 请勿删除 admin 组,因为它包含默认的 admin 用户。FreeIPA 服务器要求 admin 组正常运行。

输入并确认目录服务器超级用户FreeIPA admin 用户密码
目录服务器超级用户映射到目录中的 cn=Directory Manager。
在这里插入图片描述


设置目录服务器超级用户的密码

在这里插入图片描述


设置IPA服务器管理用户“admin”的密码

image.png


接受NETBIOS域名配置时间的默认值

在上面的窗口中输入 “yes” 后,需要一些时间来配置你的 FreeIPA 服务器,设置成功后,我们将得到下面的输出:
image.png
以上输出确认 FreeIPA 已成功安装。


8、访问 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

以上命令的输出:
image.png
完美,上面的输出确认管理员获得了令牌。现在,尝试访问 FreeIPA Web 控制台,在网络浏览器上输入以下 URL:

https://ipa.linuxtechi.lan/ipa/ui

或者

https://<Server-IPAddress>/ipa/ui

使用我们在安装过程中指定的用户名 admin密码
image.png
对于 FreeIPA Web 控制台,使用自签名 SSL 证书,这就是我们看到此窗口的原因,因此单击“接受风险并继续Accept the Risk and Continue”。
image.png
输入凭据后,单击“登录Log in”。
image.png
这证实我们已在 RHEL8上成功设置 FreeIPA。


ipa用户管理


ipa用户组管理

# 创建用户组ops
ipa group-add ops

# 获取FreeIPA服务器上所有现有用户组的列表
ipa group-find

ipa用户管理

# 将用户ops添加到opsadmin组中
ipa group-add-member ops --users=opsadmin

# 获取FreeIPA服务器上所有现有用户的列表
ipa user-find

猜你喜欢

转载自blog.csdn.net/omaidb/article/details/133033827