Linux-PAM-1.5.2

Introdução a Linux PAM

O pacote Linux PAM contém Módulos Plugáveis de Autenticação usados pelo(a) administrador(a) local do sistema para controlar como os aplicativos autenticam usuários(as).

Esse pacote é conhecido por construir e funcionar adequadamente usando uma plataforma LFS 11.3.

Informação do Pacote

Transferências Adicionais

Documentação Opcional

Dependências do Linux PAM

Opcionais

Base de Dados Berkeley-5.3.28, libnsl-2.0.0, libtirpc-1.3.3, libaudit e Prelude

Opcional (Para Reconstruir a Documentação)

docbook-xml-4.5, docbook-xsl-nons-1.79.2, fop-2.8, libxslt-1.1.37 e ou Lynx-2.8.9rel.1 ou W3m

[Nota]

Nota

Shadow-4.13 e Systemd-252 precisa ser reinstalado e reconfigurado depois de instalar e de configurar o Linux PAM.

Observações de Usuário(a): https://wiki.linuxfromscratch.org/blfs/wiki/linux-pam

Instalação do Linux PAM

Se você baixou a documentação, [então] desempacote o tarball emitindo o seguinte comando.

tar -xf ../Linux-PAM-1.5.2-docs.tar.xz --strip-components=1

Se quiser regenerar a documentação você mesmo(a), [então] corrija o script configure, de forma que detectará o lynx:

sed -e 's/dummy elinks/dummy lynx/'                                   \
    -e 's/-no-numbering -no-references/-force-html -nonumbers -stdin/' \
    -i configure

Compile e vincule o Linux PAM executando os seguintes comandos:

./configure --prefix=/usr                       \
            --sbindir=/usr/sbin                  \
            --sysconfdir=/etc                    \
            --libdir=/usr/lib                    \
            --enable-securedir=/usr/lib/security \
            --docdir=/usr/share/doc/Linux-PAM-1.5.2 &&
make

Para testar os resultados, um arquivo de configuração adequado /etc/pam.d/other precisa existir.

[Cuidado]

Reinstalação ou Atualização do Linux PAM

Se você tiver um sistema com Linux PAM instalado e funcionando, seja cuidadoso(a) ao modificar os arquivos em /etc/pam.d, pois seu sistema possivelmente se torne totalmente inutilizável. Se você deseja executar os testes, [então] não precisa criar outro arquivo /etc/pam.d/other. O arquivo existente pode ser usado para os testes.

Você também deveria estar ciente de que make install sobrescreve os arquivos de configuração em /etc/security, assim como em /etc/environment . Se você tiver modificado esses arquivos, [então] certifique-se de produzir uma cópia de segurança deles.

Para uma primeira instalação, crie um arquivo de configuração emitindo os seguintes comandos como o(a) usuário(a) root:

install -v -m755 -d /etc/pam.d &&

cat > /etc/pam.d/other << "EOF"
auth     required       pam_deny.so
account  required       pam_deny.so
password required      pam_deny.so
session  required       pam_deny.so
EOF

Agora execute os testes emitindo make check. Certifique-se de que os testes não produziram erros antes de continuar a instalação. Observe que os testes são muito longos. Redirecione a saída gerada para um arquivo de registro, de forma que você possa inspecioná-lo completamente.

Para uma primeira instalação, remova o arquivo de configuração criado anteriormente emitindo o seguinte comando como o(a) usuário(a) root:

rm -fv /etc/pam.d/other

Agora, como o(a) usuário(a) root:

make install &&
chmod -v 4755 /usr/sbin/unix_chkpwd

Explicações do Comando

--enable-securedir=/usr/lib/security: Essa chave configura o local de instalação para os módulos PAM.

--disable-regenerate-docu : se as dependências necessárias (docbook-xml-4.5, docbook-xsl-nons-1.79.2, libxslt-1.1.37 e Lynx-2.8.9rel.1 ou W3m) estiverem instaladas, [então] as páginas de manual e os arquivos de documentação html e de texto, serão geradas e instaladas. Além disso, se fop-2.8 estiver instalado, [então] a documentação PDF será gerada e instalada. Use essa chave se não desejar reconstruir a documentação.

chmod -v 4755 /usr/sbin/unix_chkpwd: O bit setuid para o aplicativo auxiliar unix_chkpwd precisa ser ativado, de forma que processos não root possam acessar o arquivo de sombra.

Configurando Linux-PAM

Arquivos de Configuração

/etc/security/* e /etc/pam.d/*

Informação de Configuração

A informação de configuração é colocada em /etc/pam.d/. Aqui está um arquivo de amostra:

# Início /etc/pam.d/other

auth            required        pam_unix.so     nullok
account         required        pam_unix.so
session         required        pam_unix.so
password        required        pam_unix.so     nullok

# Fim /etc/pam.d/other

Agora, crie alguns arquivos genéricos de configuração. Como o(a) usuário(a) root:

install -vdm755 /etc/pam.d &&
cat > /etc/pam.d/system-account << "EOF" &&
# Início /etc/pam.d/system-account

account   required    pam_unix.so

# Fim /etc/pam.d/system-account
EOF

cat > /etc/pam.d/system-auth << "EOF" &&
# Início /etc/pam.d/system-auth

auth      required    pam_unix.so

# Fim /etc/pam.d/system-auth
EOF

cat > /etc/pam.d/system-session << "EOF" &&
# Início /etc/pam.d/system-session

session   required    pam_unix.so

# Fim /etc/pam.d/system-session
EOF

cat > /etc/pam.d/system-password << "EOF"
# Início /etc/pam.d/system-password

# use hash sha512 para encriptação; use sombreamento e tente usar algum 
# token de autenticação previamente definido (senha escolhida) 
# configurado por algum módulo anterior. Use o mesmo número de voltas 
# que o sombreamento.
password  required    pam_unix.so       sha512 shadow try_first_pass \
                                        rounds=500000

# Fim /etc/pam.d/system-password
EOF

Se você deseja ativar o suporte a senhas fortes, [então] instale libpwquality-1.4.5 e siga as instruções naquela página para configurar o módulo PAM pam_pwquality com suporte a senhas fortes.

Em seguida, adicione um arquivo de configuração /etc/pam.d/other restritivo. Com esse arquivo, os aplicativos que reconhecem o PAM não serão executados, a menos que exista um arquivo de configuração específico para esse aplicativo.

cat > /etc/pam.d/other << "EOF"
# Início /etc/pam.d/other

auth        required        pam_warn.so
auth        required        pam_deny.so
account     required        pam_warn.so
account     required        pam_deny.so
password    required        pam_warn.so
password    required        pam_deny.so
session     required        pam_warn.so
session     required        pam_deny.so

# Fim /etc/pam.d/other
EOF

A página de manual do PAM (man pam) fornece um bom ponto de partida para aprender a respeito dos diversos campos e entradas permitidas. O Guia do(a) Administrador(a) do Sistema Linux-PAM é recomendado para informação adicional.

[Importante]

Importante

Você deveria agora reinstalar os pacotes Systemd-252 e Shadow-4.13.

Conteúdo

Aplicativo Instalado: faillock, mkhomedir_helper, pam_namespace_helper, pam_timestamp_check, pwhistory_helper, unix_chkpwd e unix_update
Bibliotecas Instaladas: libpam.so, libpamc.so e libpam_misc.so
Diretórios Instalados: /etc/security, /usr/lib/security, /usr/include/security e /usr/share/doc/Linux-PAM-1.5.2

Descrições Curtas

faillock

exibe e modifica os arquivos de registro de falha de autenticação

mkhomedir_helper

é um binário auxiliar que cria diretórios home

pam_namespace_helper

é um aplicativo auxiliar usado para configurar um espaço de nome privado para uma sessão de usuário(a)

pwhistory_helper

é um aplicativo auxiliar que transfere hashes de senha de passwd ou shadow para opasswd

pam_timestamp_check

é usado para verificar se o carimbo padrão de tempo é válido

unix_chkpwd

é um binário auxiliar que verifica a senha do(a) usuário(a) atual

unix_update

é um binário auxiliar que atualiza a senha de um(a) determinado(a) usuário(a)

libpam.so

fornece as interfaces entre os aplicativos e os módulos PAM