Postfix / Dovecot não usa pam_mkhomedir

1

Eu tenho usuários no banco de dados externo. Até agora - ssh, postfix, dovecot e alguns outros - use entradas sem problemas.
Eu tenho Maildirs dentro de / home / [user] e se o homedir existir - tudo está ok - enviando, recebendo.
Se homedir não existe Postfix / Dovecot imprime erro, ssh - após o login resulta em novo homedir feito - ele usa a entrada pam_mkhomedir.so em /etc/pam.d/ [em alguns arquivos].
Postfix / Dovecot - usa pam.d com backend de banco de dados, mas ignora entradas com pam_mkhomedir - Eu li muitas dicas em qual arquivo e em que posição colocá-lo.
Talvez seja uma questão de nomear o arquivo /etc/pam.d/[file] ??

    
por Arek B. 17.11.2011 / 19:32

2 respostas

2

O postfix não é responsável pela criação de diretórios pessoais. O postfix supõe que os diretórios pessoais já existam ao usar o agente de entrega local integrado.

Se você usar o Dovecot como o LDA, o Dovecot também depende do fato do diretório home existir.

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 "log-in" um usuário para entrega de mensagens, o pam_mkhomedir nunca é acionado. O PAM é usado apenas para autenticação neste caso.

    
por 18.11.2011 / 22:56
1

Apenas para o benefício de outras pessoas que se deparam com isso pesquisando o problema do Dovecot como aconteceu comigo: O Dovecot pode usar pam_mkhomedir se você configurá-lo dessa maneira. A documentação está em link

Em um típico sistema Debian / Ubuntu, você pode colocar isso em /etc/pam.d/dovecot :

#%PAM-1.0

@include common-auth
@include common-account
@include common-session

(O módulo mkhomedir é invocado dentro de common-session )

Em seguida, edite /etc/dovecot/conf.d/auth-system.conf.ext na seção que diz:

passdb {
  driver = pam
  # [session=yes] ...
  #args = dovecot
}

para que os args digam:

  args = session=yes dovecot
    
por 30.01.2017 / 15:29