以下是在CentOS 7上部署FreeIPA的详细实战步骤,涵盖服务器端安装、客户端加入及常见问题解决,综合多篇权威指南整理而成:
🛠 一、服务器端安装(FreeIPA Server)
1. 环境准备
-
主机名与DNS
hostnamectl set-hostname ipa-server.example.com # 设置FQDN格式主机名[3,4](@ref) echo "192.168.1.100 ipa-server.example.com" >> /etc/hosts # 静态解析[3,5](@ref) -
关闭防火墙(测试环境)
systemctl stop firewalld && systemctl disable firewalld # 生产环境建议开放端口[4](@ref) -
安装依赖包
yum update -y yum install -y freeipa-server freeipa-server-dns bind bind-utils # 包含DNS服务[3,6](@ref)
2. 安装与配置
ipa-server-install --setup-dns --auto-forwarders # 启用集成DNS[3,6](@ref)
交互式配置提示:
-
Domain name:
example.com(实际域名) -
Realm name:
EXAMPLE.COM(大写域名) -
管理员密码:设置强密码(≥8字符)
-
DNS配置:
- 选择集成DNS(输入
yes) - 设置DNS转发器(如
8.8.8.8)
- 选择集成DNS(输入
-
确认安装:输入
yes开始自动部署(耗时5-10分钟)
3. 启动服务
systemctl start ipa # 启动服务
systemctl enable ipa # 设置开机自启[4](@ref)
4. 验证服务状态
ipa-server-status # 检查服务运行
kinit admin # 获取Kerberos票据
klist # 查看票据信息(确认认证成功)[4](@ref)
💻 二、客户端加入FreeIPA域
1. 客户端环境准备
hostnamectl set-hostname client.example.com # 设置客户端FQDN
echo "192.168.1.100 ipa-server.example.com" >> /etc/hosts # 解析服务端IP[1,2](@ref)
2. 安装客户端工具
yum install -y freeipa-client # 安装客户端包[1,5](@ref)
3. 加入域
ipa-client-install --domain=example.com --server=ipa-server.example.com --mkhomedir
关键参数说明:
-
--mkhomedir:首次登录时自动创建用户家目录 -
交互提示:
- 输入管理员账号(
admin)及密码 - 确认配置(输入
yes)
- 输入管理员账号(
4. 验证客户端
ssh admin@client.example.com # 使用域账号登录
id # 检查用户信息(应显示ipa域用户)
sudo -i # 测试sudo权限(需提前配置规则)[2](@ref)
⚠️ 三、关键配置与问题解决
1. 防火墙规则(生产环境)
firewall-cmd --permanent --add-service={freeipa-ldap,freeipa-ldaps,dns,kerberos}
firewall-cmd --reload # 开放LDAP(389)、Kerberos(88)、DNS(53)等端口[3](@ref)
2. 时间同步(必需)
yum install -y chrony
systemctl enable --now chronyd # Kerberos要求时间误差≤5分钟[4,6](@ref)
3. 常见问题处理
-
SELinux阻止操作:
setenforce 0 # 临时关闭 # 或修改/etc/selinux/config永久禁用[4](@ref) -
证书错误:
curl -k https://ipa-server.example.com/ipa/config/ca.crt -o /etc/ipa/ca.crt # 导入CA证书[4](@ref) -
DNS解析失败:
检查/etc/resolv.conf是否指向FreeIPA服务器IP
📊 四、管理功能演示
-
添加域用户:
ipa user-add testuser --first=Test --last=User # 创建用户 ipa passwd testuser # 设置密码[4](@ref) -
配置sudo规则(Web UI):
- 登录
https://ipa-server.example.com→ Policy → Sudo → Add Rule - 指定用户组、主机和命令(如允许
admins组在所有主机执行all命令)
- 登录
💎 总结
-
核心价值:FreeIPA实现了Linux环境的统一身份认证、精细权限控制及高可用架构。
-
生产建议:
- 使用正规CA证书替代自签名证书
- 部署多主复制集群避免单点故障
- 定期备份
/var/lib/ipa/目录
通过以上步骤,CentOS 7环境可快速构建企业级身份管理体系。完整日志可查看
/var/log/ipaserver-install.log,进阶配置参考官方文档。
浙公网安备 33010602011771号