任务目标

随着内部镜像使用的人员逐渐增多,Harbor 镜像仓库若各自维护独立的用户账户,会导致管理分散、权限难以统一控制,同时也不利于密码策略和账号生命周期的集中管理。通过将 Harbor 与现有的 Active Directory 域进行 LDAPS 对接,可以实现企业级统一身份认证,所有用户直接使用 AD 域账号登录 Harbor,无需额外注册和记忆多套密码。管理员也可以在 AD 侧集中完成账号的创建、禁用、密码策略配置等操作,Harbor 侧只需关注项目权限分配,从而提升管理效率、降低维护成本,并借助 LDAPS 加密传输保障认证过程的安全性。

一、网络与环境准备

为域控制服务器配置静态 IPv4 地址,首选 DNS 服务器:127.0.0.1 (指向本机)

在 Harbor 服务器上修改 /etc/hosts 文件,添加 192.168.106.105 到 ad.momo.vip 的静态解析记录,目的是在没有 DNS 服务器或解析条件受限的情况下,强制客户端通过本地解析找到域控服务器。

二、部署 Active Directory 域服务

接着,通过服务器管理器添加 Active Directory 域服务角色,并同时安装 DNS 服务器所需的管理工具。

AD DS 是整个身份认证和目录服务的核心,而 DNS 是域环境正常运行的前提。

完成安装后,将该服务器提升为域控制器,选择“新建林”,根域名设为 ad.momo.vip,林和域功能级别均选用 Windows Server 2025,勾选 DNS 服务器并设置 DSRM 密码。

这一步是正式宣告该服务器成为域环境的第一台域控制器,并创建全新的 AD 林和根域。服务器将自动重启,完成 AD DS 的部署。

具体流程参考如下:

在工具处打开“用户和计算机”,创建组织单位OU:yxwa,创建用户momo用于后续检验测试。

三、部署 Active Directory 证书服务

然后,继续安装 Active Directory 证书服务,选择证书颁发机构角色服务,并在提示时添加所需的管理工具。

AD CS 的引入是为了构建公钥基础设施,为域内设备颁发证书,从而支持 LDAPS 这样的安全通信协议。

完成角色安装后,进入 AD CS 配置向导,选择“企业 CA”和“根 CA”,创建新的私钥,加密提供程序选用 RSA,密钥长度 2048,哈希算法 SHA256,CA 公用名称设为 ad-WIN-47B8BD42J4U-CA-1,可分辨名称后缀为 DC=ad,DC=momo,DC=vip。

选择企业 CA 可以使证书服务与 AD 深度集成,自动注册和颁发证书;作为根 CA,则意味着该证书颁发机构处于 PKI 信任链的最顶层。

配置完成后,AD CS 即成功部署。

具体流程参考如下:

四、为域控制器申请 LDAPS 证书

为了使 LDAPS 协议生效,需要为域控制器申请一张“域控制器”类型的证书。

打开 MMC 控制台,添加证书管理单元并作用于本地计算机,在“个人”存储中发起新证书申请,选择 Active Directory 注册策略,勾选“域控制器”模板并完成注册。

LDAPS 要求服务器端必须拥有一张受客户端信任的证书,用于加密传输和身份验证。

域控制器模板中包含服务器身份验证所需的增强型密钥用法,是启用 LDAPS 的关键。

证书注册成功后,重启服务器或重启 AD CS 服务,确保 LDAPS 的 636 端口正常监听。

五、Harbor 配置 LDAPS 认证

最后,在 Harbor 管理后台配置 LDAPS 认证。

在Harbor的配置管理处将认证模式改为“LDAP”。

LDAP URL 填写 ldaps://ad.momo.vip:636,搜索 DN 根据实际组织单元填写,基础 DN 设为 DC=ad,DC=momo,DC=vip,过滤器使用 (objectClass=person),用户 UID 属性设为 cn,并启用证书检查。

其中搜索 DN 是 Harbor 用来绑定 AD 进行用户查询的服务账户,基础 DN 限定了用户搜索的范围,过滤器决定哪些条目被视为可登录用户。

由于当前环境中的 AD 证书为自签名证书,并未导入到 Harbor 的受信任证书存储中,如果启用证书校验会导致连接失败,因此暂时选择跳过证书检查,优先保证 LDAPS 加密通道能够正常建立。

配置完成后,点击测试LDAP 服务器验证连接是否正常,测试通过后保存配置,即可实现 Harbor 与 AD 域的 LDAPS 安全认证对接。

为什么AD域控需要下发证书,但是harbor不需要检验证书?

AD域控需要申请证书,是因为LDAPS协议要求服务器端必须持有有效的证书来加密通信并证明自身身份;而Harbor可以不校验证书,是因为AD颁发的证书是企业自签名的,不在Harbor的默认信任列表中,如果开启校验会导致连接失败。在内部网络环境相对可控的前提下,可以暂时跳过证书身份验证环节,仅使用加密传输,从而保证LDAPS通道能够正常建立。

使用对应域控账号和密码进行登录,登录成功。