Windows Server 2022 域控制器、Ubuntu 22.04、sssd 2.6.3。系统通过“realm join”加入 AD。
/etc/sssd/sssd.conf:
[sssd]
domains = dev.domain.com
config_file_version = 2
services = nss, pam, sudo, ssh
[domain/dev.domain.com]
default_shell = /bin/bash
krb5_store_password_if_offline = True
cache_credentials = True
krb5_realm = DEV.DOMAIN.COM
realmd_tags = manages-system joined-with-adcli
id_provider = ad
fallback_homedir = /home/%u
ad_domain = dev.domain.com
use_fully_qualified_names = False
ldap_id_mapping = True
access_provider = ad
ad_gpo_access_control = permissive
ldap_user_extra_attrs = altSecurityIdentities:altSecurityIdentities
ldap_user_ssh_public_key = altSecurityIdentities
ldap_user_tokengroups = True
自系统设置以来,一切都很好,直到在 DC 上安装了 2024 年 2 月更新。在某些主机上,AD 用户无法本地或通过 SSH 登录,并收到“拒绝访问”消息。
通过从检查点恢复 DC 来撤消更改,但这并不能解决问题。
我在日志中看到的唯一看起来不合适的东西是 /var/log/sssd/sssd_pam.log 中的这个:
[pam] [cache_req_common_process_dp_reply] (0x0040): [CID#2] CR #3: 无法获取帐户信息 [14]: 错误地址
将 debug_level = 9 添加到 sssd.conf 也没有产生任何有用的结果。
但是,以 root 身份为任何 AD 用户运行“id username”都会成功并返回他们的 uid 和 gids,从而成功解析组名。
离开域、删除计算机帐户并重新加入会创建一个新的计算机帐户,但不能解决问题。
不知道在哪里可以找到更多信息...
编辑:发现另一个奇怪之处... sssctl domain-list 超时而没有任何输出。将“ad_server = dc1.dev.domain.com”添加到 sssd.conf 可以修复此问题,这表明存在 DNS 问题,但 DNS 看起来完全正常,查找正常。sssctl domain-status dev.domain.com 返回以下内容:
Online status: Online
Active servers:
AD Global Catalog: not connected
AD Domain Controller: dc1.dev.domain.com
Discovered AD Global Catalog servers:
- dc1.dev.domain.com
Discovered AD Domain Controller servers:
- dc1.dev.domain.com