Usando o tutorial PAM no Linux

Usando o tutorial PAM no Linux
“Pam não é um sistema novo. Data de 1997. Usuários e administradores do sistema Linux usam Pam no Linux para autenticação e outras tarefas. Programas como GDM, FTP, Telnet, SSH, IMAP, Login e muitos outros agora usam Linux-Pam para autenticar usuários.

Ao usar o PAM, esses programas podem determinar se um usuário é quem eles afirmam ser. Com o PAM, os usuários podem obter acesso fornecendo nomes de usuário e senhas armazenadas em protocolos virtuais, como Kerberos ou LDAP. Os usuários também podem fornecer certificados, tokens ou biometria para autenticação.

E, diferentemente dos protocolos de autenticação típicos, PAM ou módulos de autenticação travável, é uma interface de programação de aplicativos (API). Assim, em vez de reescrever códigos para cada programa ou aplicação para garantir a compatibilidade do PAM, o PAM modifica os códigos de origem convenientemente.

O diagrama abaixo detalha alguns dos programas que você pode se integrar com o PAM e os métodos utilizados.”

Tutorial do Linux Pam

Idealmente, o PAM fornece um sistema de login unificado para programas e aplicativos Linux. Mas para usar PAM corretamente, este tutorial será útil.

Verifique os sistemas Linux que são compatíveis com Pam

O uso de Pam começa com a verificação se o programa que você pretende usar é com reconhecimento ou não. E você pode verificar isso usando este comando;

Como alternativa, você pode usar o comando abaixo para listar os programas ou serviços Linux que usam Pam. O comando permite que você verifique o conteúdo do diretório.

Uma listagem usando o comando acima sempre produzirá um resultado semelhante ao que está na figura abaixo;

Abrir qualquer arquivo de serviço mostrará que cada arquivo tem três colunas. A primeira coluna significa o grupo de gerenciamento, a coluna do meio representa as bandeiras de controle e a terceira é o módulo usado para cada categoria.

Na figura acima, a "conta" representa o grupo de gerenciamento, "exigido" é a bandeira de controle, enquanto o "pam_nologin.Então ”é o módulo usado. Uma quarta coluna pode existir ocasionalmente e isso representará os parâmetros do módulo.

Crie ou edite arquivos de configuração do PAM para PAM-ified Serviços ou programas

Como servidor Linux ou administrador do sistema, você pode listar todos os módulos PAM apropriados para implementar a política de acesso para qualquer programa. A lista é conhecida como uma pilha. Você precisará invocar cada módulo, conforme listado na pilha do arquivo de configuração para um programa específico. Obviamente, isso deve acontecer antes de autenticar qualquer usuário.

Você pode alterar o arquivo de configuração configurado para um programa, caso um determinado módulo falhe. Essa modificação permitirá que você implemente políticas mais complexas, como a autenticação com o LDAP primeiro ou a tentativa de arquivos locais, caso falhem.

Por exemplo, o HWBrowser é escrito para usar o Linux Pam para autenticar usuários. O /etc /pam.D controla o mesmo conjunto de módulos nos arquivos de configuração. Você pode editar o arquivo de configuração do programa para permitir que você aplique as políticas de acesso desejadas.

Essa é a aparência padrão do arquivo de configuração do programa antes de editar;

Como é evidente acima, o arquivo contém uma listagem das DLLs para uso, com alguns contendo detalhes adicionais.

3. Usando PAM para restringir raiz Acesso ou admissão ao SSH

Notavelmente, o PAM também é útil para desativar o acesso do usuário root a programas ou sistemas via SSH e outros programas de login. Você pode conseguir isso restringindo o acesso aos serviços SSHD e Login.

O/lib/segurança/pam_listfile.O mesmo acontece com o seu módulo preferido, pois oferece imensa flexibilidade para limitar as capacidades e privilégios de determinadas contas. Abra e edite os arquivos de destino no /etc /pam.d/ usando qualquer um dos comandos abaixo;

OU

Qualquer que seja o caso, adicione o resultado abaixo aos dois arquivos;

Empilhamento usando linux pam

Finalmente, não gostaríamos de terminar um tutorial de PAM sem discutir o empilhamento, pois o PAM suporta. Este conceito permite que um serviço ou programa específico use vários mecanismos. Você pode criar uma pilha no arquivo de configuração criando várias entradas para o programa de destino com um arquivo Module_type semelhante.

Você pode invocar os módulos na ordem em que eles aparecem na pilha. O campo Control_flag especifica o resultado final.

Notavelmente, o PAM CONTROL_FLAGS tem o seguinte comportamento;

  • Necessário- esses módulos devem passar para produzir um resultado bem-sucedido. Outros módulos necessários na pilha serão testados mesmo quando um ou mais na categoria falharem. No entanto, o erro do primeiro módulo falhado afetará o resultado.
  • requisito- isso é semelhante ao módulo necessário. Mas, no caso de falha de um módulo necessário, o sistema não tentará outros módulos necessários na pilha para o processamento.
  • suficiente- se todos os módulos necessários anteriores forem passados ​​com sucesso e um módulo suficiente passes, os outros módulos não serão devidos para processamento. O sistema ignorará os módulos restantes e retornará um resultado bem -sucedido.
  • Opcional- Um módulo opcional deve ter sucesso caso não haja módulos necessários na pilha e nenhum dos módulos suficientes passou. Mas se houver outro módulo de sucesso na pilha, o sistema ignorará qualquer módulo opcional com falha.

Isso /etc /pam.Conf é um exemplo de empilhamento típico em Pam para o programa de login no tipo auth_module.

Conclusão

Pam é uma API robusta que permite que serviços e programas em sistemas Linux autentiquem usuários. Embora permaneça vital para a autenticar os usuários em um ambiente Linux, entender e usar o Linux Pam pode ser um pesadelo para técnicos iniciantes. Este tutorial teve como objetivo facilitar todo o processo. Felizmente, alcançou seu objetivo.

Fontes:

  • https: // www.IBM.com/docs/en/aix/7.2?tópico = arquivo de configuração de módulos-pam
  • https: // www.Tecmint.com/configure-pam-in-cento-ubuntu-linux/
  • http: // www.Linuxgeek.rede/documentação/autenticação.phtml
  • https: // docs.oráculo.com/cd/e19683-01/816-4883/pam-32/index.html.