O que estou perdendo na configuração do PAM para o Redhat Apache?

1

Estou tentando fazer com que o PAM use o arquivo "passwd" e "shadow" do sistema de hospedagem para autenticar um usuário que está usando o aplicativo da Web.

Estou usando o RedHat 6, o apache é o 2.2, módulo mod_authnz_pam para o apache.

O PAM no apache (httpd.conf) é configurado da seguinte forma:

<Location />
  AuthType Basic
  AuthName "basic_auth"
  AuthBasicProvider PAM
  AuthPAMService httpd
  Require valid-user
</Location>

Eu criei um arquivo chamado httpd em /etc/pam.d com a seguinte configuração

auth    required    pam_unix.so
account required    pam_unix.so
session required    pam_unix.so

O SELinux está ativado. "getenforce" retorna "Impingir" Eu também corri O SELinux está ativo, o getenforce retornou o Enforcing Eu também corri o seguinte

setsebool -P allow_httpd_mod_auth_pam 1

Então, sou solicitado a solicitar credenciais de usuário quando tento visitar o endereço IP. Mas quando eu entrei na credencial do meu sistema eu recebi os seguintes registros

unix_chkpwd[29856]: check pass; user unknown

unix_chkpwd[29856]: password check failed for user (username)

localhost httpd: pam_unix(httpd:auth): authentication failure; logname= uid=48 euid=48 tty= ruser= rhost=xxx.xx.xx.x user=username

O SELinux está ativo, o getenforce retornou o Enforcing Eu também corri o seguinte

setsebool -P allow_httpd_mod_auth_pam 1

meu nome de usuário definitivamente existe no arquivo passwd e shadow, mas de alguma forma o PAM está dizendo que ele não existe.

O que mais eu sinto falta?

    
por ShamanOfTheFrontier 18.12.2017 / 21:29

1 resposta

0

Configure /etc/pam.d/httpd como este ou similar.

#%PAM-1.0
auth       include    system-auth
account    required   pam_nologin.so
account    include    system-auth
password   include    system-auth
session    optional   pam_keyinit force revoke
session    include    system-auth
session    required   pam_loginuid.so

A idéia é que você tenha a pilha de pam olhando para os outros arquivos, em vez de tentar verificar o login. system-auth é normalmente chamado por muitos outros serviços de pam, como login , su e sudo .

    
por 19.12.2017 / 02:38