
Configuré Postfix para que mis buzones(formato de dirección de correo)para mis usuarios virtuales se configuran así:
┌───┐
│ # │ 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
Ahora estoy configurando el servidor Dovecot (IMAPS/SASL) y quiero usarunoUsuario del sistema que administrará todos los buzones de correo de todos los usuarios virtuales de Postfix. Vi muchos artículos donde los administradores crean usuarios vmail
como, por ejemplo:
# useradd -r -m -d /home/vmail vmail
y lo usan como usuario predeterminado de Dovecot configurando estas dos líneas en /etc/dovecot/conf.d/10-master.conf
:
mail_access_groups = vmail
default_login_user = vmail
Pero en mi caso el grupo postfix
tiene"setuid"bit, lo que significa que estas carpetas siempre serán manipuladas por el usuario postfix
.
Entonces, ¿cuál es el punto de crear un usuario vmail
? ¿Por qué no utilizar user postfix
for Dovecot para hacer eso? ¿Existe algún riesgo al hacer esto? También están estos dos usuarios que creó el procedimiento de instalación de 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 qué no usar uno de esos? También existen estos dos consejos en el archivo de configuración /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
Respuesta1
Es el principio de separación de preocupaciones, que aquí tiene beneficios de seguridad.
Después de otorgar la responsabilidad de entregar el correo a dovecot, ya no es responsabilidad de postfix, por lo que postfix no necesita ese acceso.