Olá pessoal, resolvi compartilhar uma solução simples para um problema que perdurou por um tempo em alguns servidores de uma empresa a qual presto serviços. Temos um proxy que autentica usuários em uma base LDAP local e resolvemos utilizar este banco de usuários para fazer outras autenticações para facilitar as trocas de senha e liberações de acessos, basicamente.
O problema que eu enfrentava era de que um servidor que utiliza essa base de usuários do proxy para fazer autenticação do Samba e também do SSHFS (fuse) não pesquisava corretamente os usuários. Quando adicionávamos algum usuário a algum grupo, a mudança não "propagava" para o servidor Samba / SSHFS. Então conheci a ferramenta NSCD que me quebrou uma árvore! Basicamente esta ferramenta é um servidor cache de serviços de nomes. Configurei o intervalo de renovação de cache para 1 segundo máximo e está tudo perfeito agora! Não entendi o porque antes o LDAP não pesquisava corretamente e até gostaria de levantar esta pergunta aqui, há algum tipo de cache que a libnss-ldap cria ou até mesmo o PAM? Os servidores rodam com Debian Lenny e não achei em lugar algum algo sobre cache.
Enfim, que tiver este problema pode facilmente resolver com esta ferramenta. Instala-se normalmente com o apt-get e edita-se o arquivo /etc/nscd.conf. O que fiz foi somente modificar os valores padrão em:
positive-time-to-live passwd <VALOR>
negative-time-to-live passwd <VALOR>
lá pelas linhas 44 e 45.
Espero que seja útil para quem enfrenta esse mesmo problema chato!
Abraços!