以下是在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)  

​交互式配置提示​​:

  1. ​Domain name​​: example.com(实际域名)

  2. ​Realm name​​: EXAMPLE.COM(大写域名)

  3. ​管理员密码​​:设置强密码(≥8字符)

  4. ​DNS配置​​:

    • 选择集成DNS(输入yes
    • 设置DNS转发器(如8.8.8.8
  5. ​确认安装​​:输入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


📊 ​​四、管理功能演示​

  1. ​添加域用户​​:

    ipa user-add testuser --first=Test --last=User  # 创建用户  
    ipa passwd testuser                             # 设置密码[4](@ref)  
    
  2. ​配置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,进阶配置参考官方文档

posted on 2025-06-30 13:46  LeeHang  阅读(483)  评论(0)    收藏  举报