NSS: fonte vital de informações do sistema no Linux

O NSS (Name Service Switch), ou Comutador de Serviço de Nomes, é um recurso fundamental em sistemas operacionais tipo Unix, como o Linux.

Ele atua como um intermediário entre os aplicativos e as diversas fontes de dados que o sistema utiliza para encontrar informações sobre usuários, grupos, hosts e outros serviços.

Imagine o NSS como uma central de atendimento telefônico. Quando um aplicativo precisa de uma informação, ele liga para o NSS.

O NSS, por sua vez, consulta um diretório telefônico (que, no caso, é o /etc/nsswitch.conf) para saber qual é o número correto para ligar.

E que pode ser um arquivo local, um servidor DNS, um servidor LDAP, ou qualquer outra fonte de dados configurada.

O arquivo /etc/nsswitch.conf é como um mapa de rotas, indicando como o sistema deve procurar informações sobre usuários, grupos, hosts e outros dados.

Ele define a ordem e as fontes a serem consultadas quando o sistema precisa resolver nomes, como arquivos locais, DNS, LDAP, NIS, etc.

Por exemplo, ao buscar informações sobre usuários, o sistema consultará primeiro o arquivo local /etc/passwd e, se não encontrar, buscará no servidor LDAP.

Para resolver nomes de hosts, o sistema consultará primeiro o arquivo local /etc/hosts e, em seguida, os servidores DNS.

O NSS (Name Service Switch) possui um mecanismo de cache para melhorar o desempenho, armazenando temporariamente informações já consultadas. Por exemplo:

hosts: files nis dns

A busca de hosts ocorre primeiro em /etc/hosts, busca NIS e o servidor de nome de domínio(/etc/resolv.conf e named).

Por essas características, o NSS é um componente fundamental do sistema Linux que garante que as informações necessárias estejam sempre disponíveis para os aplicativos, de forma eficiente e flexível.

Como ele funciona?

Quando um aplicativo faz uma consulta de nome (por exemplo, para resolver um nome de host ou procurar um usuário), o NSS consulta uma lista de módulos de serviço configurados.

O NSS tenta cada módulo na ordem até que um deles retorne um resultado bem-sucedido. Se nenhum módulo tiver sucesso, o NSS retornará um erro.

Cada módulo é responsável por consultar um serviço de diretório específico.

Fonte: links no texto

2 curtidas