Usando o usuário “postfix” para “dovecot”

Usando o usuário “postfix” para “dovecot”

Eu configurei o Postfix para que minhas caixas de correio(formato maildir)para meus usuários virtuais são definidos assim:

┌───┐
│ # │ root > myserver > ~
└─┬─┘
  └─> ls -l /var/mail/
total 4
drwxr-sr-x 5 postfix postfix 4096 Dec  2 12:27 pistam.eu

┌───┐
│ # │ root > myserver > ~
└─┬─┘
  └─> ls -l /var/mail/domain.eu/
total 12
drwx--S--- 5 postfix postfix 4096 Dec  2 12:10 user_1
drwx--S--- 5 postfix postfix 4096 Dec  1 22:35 user_2

┌───┐
│ # │ root > myserver > ~
└─┬─┘
  └─> ls -l /var/mail/domain.eu/user_1/
total 12
drwx--S--- 2 postfix postfix 4096 Dec  2 12:27 cur
drwx--S--- 2 postfix postfix 4096 Dec 13 15:17 new
drwx--S--- 2 postfix postfix 4096 Dec 13 15:17 tmp

Agora estou configurando o servidor Dovecot (IMAPS/SASL) e quero usarumusuário do sistema que gerenciará todas as caixas de correio de todos os usuários virtuais do Postfix. Vi muitos artigos onde administradores criam usuários vmailcomo, por exemplo:

# useradd -r -m -d /home/vmail vmail

e eles o usam como usuário Dovecot padrão definindo estas duas linhas em /etc/dovecot/conf.d/10-master.conf:

mail_access_groups = vmail
default_login_user = vmail

Mas no meu caso o grupo postfixtem"setuido"bit, o que significa que essas pastas sempre serão manipuladas pelo usuário postfix.

Então, qual é o sentido de criar user vmail? Por que não usar o usuário postfixdo Dovecot para fazer isso? Há algum risco fazendo isso? Existem também estes dois usuários criados pelo procedimento de instalação do Dovecot:

┌───┐
│ # │ root > myserver > ~
└─┬─┘
  └─> cat /etc/passwd | grep dove
dovecot:x:112:118:Dovecot mail server,,,:/usr/lib/dovecot:/usr/sbin/nologin
dovenull:x:113:119:Dovecot login user,,,:/nonexistent:/usr/sbin/nologin

Por que não usar um desses? Existem também estas duas dicas no arquivo de configuração /etc/dovecot/conf.d/10-master.conf:

# Login user is internally used by login processes. This is the most untrusted
# user in Dovecot system. It shouldn't have access to anything at all.
#default_login_user = dovenull

# Internal user is used by unprivileged processes. It should be separate from
# login user, so that login processes can't disturb other processes.
#default_internal_user = dovecot

Responder1

É o princípio da separação de interesses, que aqui traz benefícios de segurança.

Depois que você atribui a responsabilidade de entregar a correspondência ao dovecot, ela não é mais responsabilidade do postfix, portanto o postfix não precisa desse acesso.

informação relacionada