信创主机加入 AD 域是做什么的
realmd 提供一套高层命令,把 Linux 主机接入 Windows Active Directory:realm discover 探测域能力,realm join 完成加入,底层由 SSSD 承担认证与账户解析、adcli 负责计算机账户创建与 Kerberos keytab 写入。典型场景是替换终端时保留原有域身份体系,让用户继续用域账号登录、沿用既有密码策略与权限分配,而不是重建一套本地账户。
基本信息
| 依赖包 | realmd、sssd、adcli、samba-common-tools、krb5-workstation |
|---|---|
| 前置条件 | DNS 指向域控、时间与域控同步、域账号具备加域权限 |
| 加入命令 | realm join -U 管理员账号 域名 |
| 登录放行 | realm permit 用户或组,或 permit --all |
| 账户解析 | NSS 与 PAM 由 SSSD 提供,验证用 id 命令 |
典型使用场景
- 终端替换但保留 AD 身份体系,用户不必记忆两套账号口令
- 集中管理登录权限:通过域组控制谁能登录信创终端,人员调整只改域侧
- 沿用现有口令策略与账号生命周期(停用、离职回收)体系
- 与域内文件共享、打印、邮件等服务统一身份,减少重复授权
- 混合办公环境中让信创终端与 Windows 终端并存,统一由域控管理
- 合规要求身份集中管理,避免本地账户各自为政难以审计
发现与加入
发现与加入
dnf install -y realmd sssd adcli samba-common-tools krb5-workstation
systemctl enable --now chronyd # 先做时间同步,Kerberos 对时间敏感
realm discover example.com # 探测域配置与所需组件
realm join -U Administrator example.com # 用具备加域权限的账号加入
realm list # 确认已加入的域与登录策略
realm permit domainuser@example.com # 只放行指定用户
realm permit --all # 放行全部域用户,评估后再决定
id domainuser@example.com # 验证域账号能被解析
systemctl enable --now sssd组件职责与排查点
| 组件 | 职责 | 异常时的现象 |
|---|---|---|
| realmd | 发现域、执行加入与登录策略 | join 失败,报无法发现域或认证错误 |
| adcli | 创建计算机账户、写入 keytab | 计算机账户异常,重复加域 |
| SSSD | 认证与账户解析(NSS/PAM) | 域账号无法解析,id 查不到用户 |
| Kerberos | 票据体系与加域认证 | 时间偏差导致认证失败 |
| chrony | 与域控时间同步 | 时间超出容差,票据被拒 |
加域前先做完两件事:确认 DNS 能正确解析域控的 SRV 记录,确认系统时间与域控偏差在默认容差内;这两项不满足时各种「认证失败」报错都会出现,但根因都在前置条件。
加域会改动 PAM 与 NSS 链路,配置不当可能导致本地登录也受影响;务必保留一个可用的本地管理员应急账号,并在测试机验证通过后再批量执行。