Como configurar o PAM para usar diferentes configurações de idioma / localidade

1

Atualmente, estamos usando um cliente de banco de dados com um conjunto de caracteres ISO-8859-1. O servidor Ubuntu está executando com de_DE.utf8. Se o usuário usar um nome de usuário ou senha que contenha outros caracteres além do ASCII de 7 bits, estaremos com problemas.

/etc/pam.d/informix

#
# Then PAM configuration file for the Shadow 'informix' service
#

# More verbose
auth    required        pam_warn.so debug

# Environment
auth    required        pam_env.so readenv=1 envfile=/opt/IBM/informix/etc/locale user_readenv=0

# Disallows other than root logins when /etc/nologin exists
auth    requisite       pam_nologin.so

# Standard Un*x authentication.
@include common-auth

/ opt / IBM / informix / etc / locale

LANG="de_DE"
LC_CTYPE="de_DE"
LC_ALL="de_DE"

Mas a configuração do PAM não funciona:

/var/log/auth.log (com uma senha contendo não ascii de 7 bits)

Jul 19 15:46:54 myhost oninit: pam_warn(informix:auth): function=[pam_sm_authenticate] service=[informix] terminal=[<unknown>] user=[myuser] ruser=[myuser] rhost=[myclient]
Jul 19 15:46:54 myhost oninit: [lsass-pam] [module:pam_lsass]pam_sm_authenticate error [login:myuser][error code:40067]

Eu também tentei LANG = de_DE.iso88591 no / opt / IBM / informix / etc / locale sem sucesso algum. O que está errado?

    
por Michael S. 19.07.2016 / 15:52

1 resposta

0

Com um módulo PAM escrito por mim

.
.
/* Convert charset */
iso2utf((char*) pUsername, (char*) &szuser, sizeof(szuser));
iso2utf((char*) pPassword, (char*) &szpass, sizeof(szpass));

/* Setting pam items */
pam_set_item(pamh, PAM_USER, (char*) &szuser);
pam_set_item(pamh, PAM_AUTHTOK, (char*) &szpass);
.
.

funciona bem:

#
# Then PAM configuration file for the Shadow 'informix' service
#

# Informix user + password conversion
auth    sufficient      informix_pam.so

# Disallows other than root logins when /etc/nologin exists
auth    requisite       pam_nologin.so

# LDAP authentication
auth    required        pam_lsass.so try_first_pass
    
por Michael S. 28.07.2016 / 15:29