
Tenho usuários em banco de dados externo. Até agora - ssh, postfix, dovecot e alguns outros - use entradas sem problemas.
Eu tenhoMaildirsdentro/home/[usuário]e se o homedir existir - está tudo bem - enviando, recebendo.
Se homedir não existirPostfix/Pombalimprime erro, ssh - após o login resulta em um novo homedir feito - ele usapam_mkhomedir.soentrada em /etc/pam.d/[em alguns arquivos].
Postfix/Pombal- usar com sucessopam.dcom backend de banco de dados, mas ignora entradas compam_mkhomedir- Eu li muitas dicas sobre qual arquivo e em que posição colocá-lo.
Talvez seja uma questão de nomear o arquivo /etc/pam.d/[file] ??
Responder1
O Postfix não é responsável pela criação de diretórios pessoais. O Postfix assume que os diretórios iniciais já existem ao usar o local
agente de entrega integrado .
Se você usar o Dovecot como LDA, o Dovecot também dependerá do fato de que o diretório inicial existe.
Com usuários virtuais você pode definir a variável lda_mailbox_autocreate = yes
para que o Dovecot crie automaticamente os diretórios necessários.
E como o Dovecot (e o Postfix) não "fazem login" em um usuário para entrega de mensagens, o sistema pam_mkhomedir
nunca é acionado. O PAM é usado apenas para autenticação neste caso.
Responder2
Apenas para o benefício de outras pessoas que se deparam com isso pesquisando no Google a questão do Dovecot, como acabei de fazer: o Dovecot pode ser usado pam_mkhomedir
se você configurá-lo dessa maneira. A documentação está emhttp://wiki2.dovecot.org/PasswordDatabase/PAM#PAM_sessions
Em um sistema Debian/Ubuntu típico, você pode colocar isto em /etc/pam.d/dovecot
:
#%PAM-1.0
@include common-auth
@include common-account
@include common-session
(O mkhomedir
módulo é invocado dentro common-session
)
E então edite /etc/dovecot/conf.d/auth-system.conf.ext
na seção dizendo:
passdb {
driver = pam
# [session=yes] ...
#args = dovecot
}
para que eles args
digam:
args = session=yes dovecot