nsswitch 缓存和 nscd

nsswitch 缓存和 nscd

我安装了一个 LDAP 目录服务器,将所有用户数据存储在一台服务器中,并且我有一个持续的身份验证机制,使用 pam 向其请求用户信息。这工作得很好,但是,每当我的一个客户端与主服务器断开连接时,就没有用户可以登录。我的想法是在每个客户端上安装 nscd 并更改 nsswitch 查找顺序,以便所有请求首先找到缓存。它的配置方式如下:

passwd:         cache files ldap
group:          cache files ldap
shadow:         cache files ldap
hosts:          files dns
networks:       files
protocols:      db files
services:       db files
ethers:         db files
rpc:            db files
netgroup:       nis

我添加了“缓存”规范来实现此目的。我的 nscd 配置如下:

enable-cache        passwd      yes
positive-time-to-live   passwd      36600
negative-time-to-live   passwd      20
suggested-size      passwd      211
check-files     passwd      yes
persistent      passwd      yes
shared          passwd      yes
max-db-size     passwd      33554432
auto-propagate      passwd      yes

enable-cache        group       yes
positive-time-to-live   group       36600
negative-time-to-live   group       60
suggested-size      group       211
check-files     group       yes
persistent      group       yes
shared          group       yes
max-db-size     group       33554432
auto-propagate      group       yes

enable-cache        hosts       yes
positive-time-to-live   hosts       36600
negative-time-to-live   hosts       20
suggested-size      hosts       211
check-files     hosts       yes
persistent      hosts       yes
shared          hosts       yes
max-db-size     hosts       33554432

enable-cache        services    yes
positive-time-to-live   services    28800
negative-time-to-live   services    20
suggested-size      services    211
check-files     services    yes
persistent      services    yes
shared          services    yes
max-db-size     services    33554432

我尝试断开以太网连接以测试查找是否正确完成,但当我检查 /var/log/auth 日志时,我发现我的客户端仍在寻找 ldap 服务器。

能出什么问题吗?我使用的是 Ubuntu 10.04

谢谢

相关内容