在企业级IT基础设施中,将CentOS系统加入Windows域环境是一项常见且重要的任务,它有助于实现统一的用户身份验证、集中化的权限管理和便捷的资源访问控制,以下是关于如何在CentOS上进行加域操作的全面指南:
一、前期准备
1、安装必要的软件包:

使用yum
命令安装realmd
、sssd
、adcli
、oddjob
、oddjobmkhomedir
、sambacommontools
等软件包,这些工具是连接和配置域环境的关键组件。
2、设置主机名:
通过hostnamectl sethostname
命令设置主机名为域名格式(例如host01.test.local
),确保与将要加入的域相匹配。
3、配置DNS解析:
编辑/etc/resolv.conf
文件,添加域控制器的IP地址作为DNS服务器,确保能够正确解析域相关的域名。
4、同步时间:

使用timedatectl settimezone
命令设置正确的时区,并确保CentOS系统时间与Windows域控制器的时间同步,这对于Kerberos身份验证至关重要。
二、加入域
1、发现域:
使用realm discover
命令发现域环境,该命令会显示可用的域列表及其相关信息。
2、加入域:
执行realm join
命令,指定要加入的域名,并根据提示输入具有足够权限的域管理员账户凭据。
三、验证与配置
1、验证加入状态:

使用realm list
命令检查域加入状态,确认CentOS系统已成功加入域。
2、配置SSSD服务:
编辑/etc/sssd/sssd.conf
文件,根据实际需求调整相关配置参数,如domains
、config_file_version
、services
、id_provider
等。
确保配置文件的权限正确,然后启用并启动sssd
服务。
3、测试域账户登录:
尝试使用域账户登录CentOS系统,确保身份验证和授权工作正常。
四、常见问题及解决方法
1、DNS解析问题:
如果无法正确解析域名,请检查/etc/resolv.conf
中的DNS服务器设置是否正确,并确保网络连接正常。
2、时间同步问题:
如果遇到与时间相关的身份验证错误,请检查并同步系统时间。
3、权限问题:
确保使用的域管理员账户具有足够的权限来加入计算机到域。
五、FAQs
1、Q: CentOS加入域后,如何限制域用户的sudo权限?
A: 可以通过编辑/etc/sudoers
文件或使用visudo
命令为特定域用户组分配sudo权限,将%DOMAIN\\admins ALL=(ALL) ALL
添加到文件中,允许域管理员组的所有成员在CentOS系统上执行任何命令。
2、Q: 如何在CentOS上创建与AD用户对应的本地用户?
A: 在CentOS上创建本地用户时,可以使用useradd
命令并指定用户的UID和GID与AD用户匹配,以确保一致性,如果AD用户zhangsan
的UID为1001,则可以在CentOS上创建同名用户并设置相同的UID。