Redhat
sss_cache 一直在尋找 LOCAL 域,而不是清除 LDAP 記錄
我已將使用者添加到 LDAP 中的組。使用者出現在 ldapsearch 中。但是,當我使用
getent group my_group
.我是否正確假設這是因為 SSSD 記憶體了組成員身份?
當我嘗試清除組的 SSSD 記憶體時,它什麼也沒做:
# sss_cache -d LDAP -g my_group (Mon Dec 14 10:40:41:816191 2015) [sss_cache] [confdb_get_domain_internal] (0x0010): Unknown domain [LOCAL] (Mon Dec 14 10:40:41:816364 2015) [sss_cache] [confdb_get_domains] (0x0010): Error (2 [No such file or directory]) retrieving domain [LOCAL], skipping! # echo $? 0
具體來說,使用者仍然沒有出現在
getent group my_group
列表中。當我在命令中指定“LDAP”域時,為什麼它在尋找“LOCAL”域?
這是 SSSD 配置
# cat /etc/sssd/sssd.conf [sssd] config_file_version = 2 reconnection_retries = 3 sbus_timeout = 30 services = nss, pam domains = LOCAL,LDAP debug_level = 5 [nss] filter_groups = root filter_users = root reconnection_retries = 3 entry_cache_timeout = 300 entry_cache_nowait_percentage = 75 [pam] reconnection_retries = 3 offline_credentials_expiration = 2 offline_failed_login_attempts = 3 offline_failed_login_delay = 5 [domain/LDAP] cache_credentials = true id_provider = ldap auth_provider = ldap ldap_uri = ldaps://my_hostname.my_domain.com ldap_search_base = dc=my_domain,dc=com ldap_id_use_start_tls = true ldap_tls_reqcert = never ldap_tls_cacert = /etc/pki/tls/certs/ca-bundle.crt debug_level = 5
- 這是一個錯誤
sss_cache
嗎?- 我應該
rm -f /var/lib/sss/db/cache_LDAP.ldb
改為嗎?- 那個時候,我是不是應該
cache_credentials = false
進去sssd.conf
?
- 我不認為這是一個錯誤
sss_cache
,您的配置引用了一個名為 的域LOCAL
,但該域未定義。剛下線再試一次LOCAL
..domains
- 那是不同的。
sss_cache
通過將過期時間戳設置為過去來工作。這會強制下次查找,但不會完全刪除條目,因此在客戶端離線的情況下它們仍然存在- 這實際上取決於您是否希望在與伺服器的連接失去時允許您的使用者登錄。