Como verificar se um método de autenticação está habilitado no Linux

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar quais métodos de autenticação estão habilitados em um sistema Linux. Exploraremos os principais arquivos de configuração que regem como os usuários são autenticados e autorizados.

Você começará examinando os arquivos de configuração do PAM (Pluggable Authentication Modules) localizados em /etc/pam.d/ para entender a estrutura básica da autenticação. Em seguida, você inspecionará o arquivo de configuração do SSSD (System Security Services Daemon) em /etc/sssd/sssd.conf para ver se ele está configurado para fontes de identidade remotas. Por fim, você verificará a configuração do NSS (Name Service Switch) em /etc/nsswitch.conf para determinar a ordem em que o sistema procura informações de usuário e grupo. Ao final deste laboratório, você terá uma compreensão fundamental de onde procurar para identificar os métodos de autenticação ativos em um sistema Linux.

Verificar a configuração do PAM com ls /etc/pam.d

Nesta etapa, começaremos a explorar como o Linux lida com a autenticação e autorização do usuário. Um componente chave é o PAM, que significa Módulos de Autenticação Plugáveis (Pluggable Authentication Modules). O PAM fornece uma maneira flexível de gerenciar como os usuários fazem login, alteram senhas e acessam recursos do sistema.

Pense no PAM como um conjunto de regras que os aplicativos (como a tela de login ou sudo) consultam antes de permitir que um usuário execute uma ação. Essas regras são definidas em arquivos de configuração, localizados principalmente no diretório /etc/pam.d/.

Vamos dar uma olhada nos arquivos de configuração do PAM neste sistema. Usaremos o comando ls, que lista o conteúdo do diretório.

Abra seu terminal, se ainda não estiver aberto. Lembre-se, você pode encontrar o ícone do Xfce Terminal no lado esquerdo da sua área de trabalho.

Digite o seguinte comando e pressione Enter:

ls /etc/pam.d/

Você verá uma lista de arquivos. Cada arquivo normalmente corresponde a um serviço ou aplicativo que usa o PAM para autenticação. Por exemplo, você pode ver arquivos como common-auth, login, sudo, sshd, etc.

atd
chfn
chsh
common-account
common-auth
common-password
common-session
common-session-noninteractive
cron
... (output may vary)

Esses arquivos contêm as regras específicas do PAM para cada serviço. Não vamos nos aprofundar nos detalhes do conteúdo dos arquivos por enquanto, mas é importante saber onde essas configurações residem.

Entender o PAM é crucial para gerenciar o acesso do usuário e a segurança no Linux. Ao listar o conteúdo de /etc/pam.d/, você deu o primeiro passo para ver como a autenticação é configurada neste sistema.

Clique em Continuar para prosseguir para a próxima etapa.

Verificar a configuração do SSSD com cat /etc/sssd/sssd.conf

Nesta etapa, analisaremos outro componente importante relacionado ao gerenciamento de usuários e autenticação: SSSD. SSSD significa System Security Services Daemon. É um serviço que fornece acesso a fontes de autenticação e identidade remotas, como LDAP, Active Directory ou FreeIPA.

O SSSD pode armazenar em cache credenciais e informações, o que melhora o desempenho e permite que os usuários se autentiquem mesmo que a conexão de rede com a fonte remota esteja temporariamente indisponível.

O arquivo de configuração principal para o SSSD geralmente está localizado em /etc/sssd/sssd.conf. Usaremos o comando cat para exibir o conteúdo deste arquivo. O comando cat é um utilitário simples usado para exibir o conteúdo dos arquivos.

Digite o seguinte comando em seu terminal e pressione Enter:

cat /etc/sssd/sssd.conf

Você verá os detalhes da configuração do SSSD. O conteúdo deste arquivo dependerá se o SSSD está configurado para se conectar a alguma fonte de identidade externa. Em um sistema básico, o arquivo pode ser mínimo ou conter configurações padrão.

[sssd]
domains =
config_file_version = 2
services = nss, pam

[nss]
filter_groups = root
filter_users = root
reconnection_retries = 3

[pam]
reconnection_retries = 3

Esta saída mostra a estrutura básica do arquivo sssd.conf. A seção [sssd] contém configurações globais, e a linha services indica que o SSSD está fornecendo serviços para nss (Name Service Switch) e pam. As seções [nss] e [pam] contêm configurações específicas para esses serviços.

Mesmo que o SSSD não esteja totalmente configurado para uma fonte remota, sua presença e configuração básica em sssd.conf indicam que o sistema está configurado para potencialmente usá-lo para autenticação e pesquisas de identidade.

Examinar este arquivo ajuda você a entender se seu sistema está configurado para usar o SSSD e com quais serviços ele está integrado.

Clique em Continuar para passar para a próxima etapa.

Inspecionar a configuração do NSS com cat /etc/nsswitch.conf

Nesta etapa final deste laboratório introdutório, examinaremos a configuração do Name Service Switch (NSS). O NSS é uma parte crucial de como os sistemas Linux determinam onde procurar informações sobre usuários, grupos, nomes de host e outros dados relacionados à rede.

Quando um programa precisa procurar informações de um usuário (como seu ID de usuário ou diretório home), ele consulta a configuração do NSS para saber quais fontes verificar e em que ordem. Essas fontes podem incluir arquivos locais (como /etc/passwd e /etc/group), DNS, LDAP ou serviços como SSSD (que acabamos de analisar).

O arquivo de configuração para o NSS é /etc/nsswitch.conf. Usaremos o comando cat novamente para visualizar seu conteúdo.

Digite o seguinte comando em seu terminal e pressione Enter:

cat /etc/nsswitch.conf

Você verá linhas especificando quais fontes usar para diferentes tipos de informações. Cada linha começa com o tipo de informação (por exemplo, passwd, group, hosts) seguido por dois pontos e uma lista de fontes para verificar.

## /etc/nsswitch.conf
#
## Example configuration of GNU Name Service Switch functionality.
## If you have the `glibc-doc-reference' and `info' packages installed, try:
## `info libc "Name Service Switch"' for information.

passwd:         compat systemd
group:          compat systemd
shadow:         compat

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

Neste exemplo de saída:

  • passwd: compat systemd significa que, ao procurar informações do usuário, o sistema deve primeiro verificar as fontes configuradas por compat (geralmente referindo-se a arquivos tradicionais como /etc/passwd) e, em seguida, systemd.
  • hosts: files dns significa que, ao resolver nomes de host, o sistema deve primeiro verificar o arquivo /etc/hosts local (files) e, em seguida, usar DNS.

A ordem das fontes em cada linha é importante, pois o sistema as verifica sequencialmente até encontrar as informações solicitadas.

Entender nsswitch.conf ajuda você a solucionar problemas relacionados a logins de usuários, resolução de nomes de host e outros problemas relacionados à identidade, mostrando a ordem em que seu sistema procura essas informações.

Você agora teve uma breve olhada em três áreas-chave relacionadas ao gerenciamento de usuários e autenticação no Linux: PAM, SSSD e NSS. Esta é uma etapa fundamental para entender como seu sistema lida com identidades e acesso.

Clique em Continuar para concluir este laboratório.

Resumo

Neste laboratório, começamos a explorar como o Linux gerencia a autenticação do usuário, examinando arquivos de configuração importantes. Primeiro, usamos ls /etc/pam.d/ para listar os arquivos de configuração dos Módulos de Autenticação Plugáveis (PAM), que definem as regras de autenticação para vários serviços e aplicativos. Isso nos mostrou onde as políticas de autenticação principais são armazenadas no sistema.

Em seguida, começamos a investigar o System Security Services Daemon (SSSD) tentando visualizar seu arquivo de configuração em /etc/sssd/sssd.conf usando o comando cat. O SSSD é um serviço crucial para a integração com fontes de identidade e autenticação remotas, e examinar sua configuração ajuda a determinar se e como o sistema está configurado para autenticar em diretórios externos.