A política em /etc/pam.d/password-auth não está sendo aplicada

6

Eu atualizei login.defs e password-auth para incluir um comprimento mínimo em senhas (12), mas o minlen não está sendo aplicado quando tento alterar a senha de um usuário com passwd .

Nenhuma das políticas de caso de senha está sendo aplicada. Eu posso inserir 'aaaa1234' como uma senha válida, mas fraca e muito curta. Eu também sou capaz de digitar palavras do dicionário, como 'senha'. A mesma senha pode ser reutilizada.

Em resumo, nenhuma das configurações em /etc/pam.d/password-auth parece ser reconhecida.

A senha que estou inserindo para o seguinte comando é blue1234

# passwd testy
Changing password for user testy.
New password: 
BAD PASSWORD: it is based on a dictionary word
BAD PASSWORD: is too simple
Retype new password: 
passwd: all authentication tokens updated successfully.

Veja o que foi registrado em /var/log/secure da operação acima. Esta é a única linha do evento.

Apr  1 11:41:37 myserver passwd: pam_unix(passwd:chauthtok): password changed for testy

arquivos de configuração

# login.defs

# Password aging controls:
#
#       PASS_MAX_DAYS   Maximum number of days a password may be used.
#       PASS_MIN_DAYS   Minimum number of days allowed between password changes.
#       PASS_MIN_LEN     12
#       PASS_WARN_AGE   Number of days warning given before a password expires.
#
PASS_MAX_DAYS   30
PASS_MIN_DAYS   1
PASS_MIN_LEN     12
PASS_WARN_AGE   14

.

# /etc/pam.d/password-auth

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        required      pam_deny.so
auth        [default=die] pam_faillock.so authfail deny=3 unlock_time=604800 fail_interval=900
auth        required      pam_faillock.so authsucc deny=3 unlock_time=604800 fail_interval=900

account     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     required      pam_permit.so

password    requisite     pam_cracklib.so try_first_pass retry=3 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 minlen=12
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so

Por que a política de senha do pam não está sendo aplicada?

PS: esta é uma instalação mínima.

    
por a coder 01.04.2015 / 17:22

1 resposta

5

Você precisa verificar seu arquivo /etc/pam.d/passwd se ele incluir /etc/pam.d/password-auth ou /etc/pam.d/system-auth e fazer a alteração necessária no arquivo incluído.

Em suma:
Um aplicativo que usa o PAM pode ter um arquivo de configuração com seu nome em /etc/pam.d/ . Se um arquivo existir, as regras nesse arquivo serão processadas sempre que o aplicativo chamar uma função de autenticação PAM.

Arquivos como /etc/pam.d/system-auth e, em uma extensão maior, /etc/pam.d/password-auth são um pouco específicos da distribuição. Como nenhum aplicativo se identifica como "system-auth" ou "password-auth", esses arquivos na verdade nunca são chamados por conta própria. Em vez disso, o conteúdo desses arquivos é colocado em outros arquivos de configuração do PAM com a diretiva "include". Dessa forma, configurações comuns para vários aplicativos podem ser armazenadas em um único arquivo.

    
por 01.04.2015 / 18:09