我正在测试 FreeIPA 集成。我尝试的方案之一是将服务器脱机并使用客户端进行测试,但我遇到了一个问题。我使用新创建的 FreeIPA 用户登录了客户端,然后我停止了 FreeIPA 服务器并再次通过 SSH 连接到客户端。到目前为止一切顺利。
但我找不到删除缓存的 FreeIPA 用户的方法。我试过了,sss_cache -E
但没有用。据我所知,account_cache_expiration
/etc/sssd/sssd.conf 中的设置应该在给定时间后删除缓存的用户,但默认情况下为 0(无限制时间)
我使用的服务器是 CentOS 7.4/FreeIPA 4.5.0,客户端是 Linux Mint 18.3/SSSD 1.13.4
PS:这个问题是关于类似问题的,但尚未得到解答sssd 和 ldap 身份验证缓存
答案1
sss_cache 不会故意删除缓存,因为这样您将无法登录到离线客户端,缓存的密码(到目前为止)与其余数据存储在同一个缓存中。
如果您确实想要删除缓存,可以使用 sssctl 子命令之一来执行此操作。
但有选择地删除一个条目是不可能的。顺便说一句,如果您从服务器中删除了用户,则只需在客户端在线时请求用户就会有所帮助。
答案2
您不能从缓存中仅删除一个用户。
如果要彻底清除缓存,则需要删除以下内容:
/var/lib/sss/db
在那之后,
systemctl restart sssd
确保您与 LDAP 服务器有网络连接,否则没有人能够登录。