本文主要是介绍Linux 上清理 SSSD Cache,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. 简介
系统安全服务守护程序 (SSSD
) 提供对身份和身份验证提供程序的访问。 基本上,SSSD
不依赖于本地配置的身份验证,而是用于查找其本地缓存。 此缓存中的条目可能来自不同的远程身份提供商,例如 LDAP
目录、FreeIPA
或 Active Directory
。
SSSD
缓存来自这些远程位置的用户和凭据的结果,以便在身份提供者离线时,用户凭据仍然可用并且用户仍然可以登录。 这有助于提高性能并促进可扩展性,单个用户可以登录多个系统,而不是在任何地方使用本地帐户。
如果存储的记录变得过时并且不再与身份提供者同步,则缓存的结果可能会出现问题,因此了解如何刷新 SSSD
缓存以修复各种问题并更新缓存非常重要。
在这里,我们将介绍几种不同的方法来刷新 SSSD
缓存。
2. sss_cache 工具
可以使用 sss_cache
实用程序清除缓存,该实用程序用于通过使 SSSD
缓存中的记录无效来执行缓存清理。 无效记录必须从信息实际所在的身份提供商服务器(例如 FreeIPA
或 Active Directory
)重新加载。
-E
参数可用于使所有缓存条目无效,sudo
规则除外。
sss_cache -E
或者,我们也可以简单地使用 -u
标志,后跟帐户用户名,仅从缓存中使特定用户无效。
sss_cache -u username
有关更多信息,请参阅 sss_cache 手册页。
3. 删除缓存文件
SSSD
将其缓存文件存储在 /var/lib/sss/db/
目录中。
虽然使用 sss_cache
命令更好,但也可以通过简单地删除相应的缓存文件来清除缓存。
在执行此操作之前,建议停止 SSSD
服务。
systemctl stop sssd
之后我们要删除 /var/lib/sss/db/
目录中的所有文件。
rm -rf /var/lib/sss/db/*
完成后,我们可以再次启动 SSSD
备份。
systemctl restart sssd
SSSD
现在应该以空缓存正确启动,任何用户登录现在将首先直接转到定义的身份提供程序进行身份验证,然后在本地缓存。
建议仅在域内执行身份验证的身份提供商服务器可用时才清除缓存,否则一旦缓存被刷新,用户将无法登录。
4. 总结
只需删除存储缓存记录的文件即可轻松删除 SSSD
缓存,或者可以使用 sss_cache
工具更干净地完成此操作,该工具将使缓存中的指定记录无效。
这篇关于Linux 上清理 SSSD Cache的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!