Estou tentando entender a abordagem correta para oferecer suporte a e-mail via Postfix/Dovecot para usuários autenticados em rede e vários serviços de rede, como o Gitlab.
Meu servidor de autenticação de rede é o Ubuntu 22.04, usando OpenLDAP e Kerberos. Todos os meus usuários autenticados em rede herdam das classes posixAccount
de PostfixBookMailAccount
objeto e enquanto minhas contas de serviço herdam apenas da última. Esta é uma tentativa de permitir login em várias máquinas apenas dos meus usuários, mas não das contas de serviço, mas para dar suporte a e-mail para ambos.
Tentei configurar o Dovecot para usar o pam
driver que funcionou para o e-mail do usuário, mas o Gitlab não funcionou. Modifiquei as configurações do PAM (que utilizavam Kerberos, mas não LDAP) adicionando LDAP antes do Kerberos. Isso incluiu configurar o PAM LDAP para pesquisar com base em mailEnabled
em vez de posixAccount
para pesquisa do usuário, mas algo pode estar errado, pois ainda funcionou para usuários, mas não para serviços.
Também tentei configurar o Dovecot para usar o ldap
driver e fazer uma busca semelhante, mailEnabled
mas algo também está errado, pois não funcionou para nenhuma conta.
Parece que eu poderia capitular e simplesmente criar contas de usuário para serviços como o Gitlab, mas isso desperta minha paranoia de segurança.
Antes de girar minhas rodas muito mais longe ou ir na direção errada, eu gostaria primeiro de entender se faz sentido distinguir essas duas fontes de e-mail ou se estou apenas pensando demais. Se eu deveria distinguir, alguém pode me indicar materiais de referência que descrevam essa abordagem ou fornecer algumas dicas se houver / quais considerações fazer ao configurar Postfix/Dovecot. Até agora, não tenho nenhuma combinação que se adapte a ambos os tipos de conta. Minha pesquisa na web não revelou nada sobre qual abordagem adotar e, portanto, nenhum material relevante.
Meu 10-auth.conf
contém:
auth_krb5_keytab = /etc/dovecot/dovecot.keytab
auth_mechanisms = plain login gssapi
onde o keytab foi preenchido com imap
, nslcd
e smtp
principais.
Quando configurado para PAM, meu auth-network.conf.ext
se parece com:
passdb {
driver = pam
}
userdb {
driver = passwd
args = uid=vmail gid=vmail home=/srv/vmail/%u mail=maildir:/srv/vmail/%u/Maildir
}
e quando configurado para LDAP é:
passdb {
args = /etc/dovecot/dovecot-ldap.conf.ext
driver = ldap
}
userdb {
driver = prefetch
}
userdb {
args = /etc/dovecot/dovecot-ldap.conf.ext
driver = ldap
}