Problemas de permissão para o postfix se conectar ao soquete clamav-milter

3

Estou executando o postfix post-3.3.1_1,1 e o clamav-milter clamav-milter-0.100.1_1 no FreeBSD 11.2. O postfix e o milter estão configurados para se comunicar por meio de um soquete. Eu não consigo colocar o milter e o postfix juntos, eu devo estar ignorando alguma coisa.

No meu maillog , recebo estas mensagens:

xSep 21 11:33:57 mail2 postfix/smtpd[85759]: warning: connect to Milter service unix:/var/run/clamav/clmilter.sock: Permission denied

O postfix é executado como user: group postfix: postfix. Clamav é executado como clamav: clamav. (Quando eu executo o clamav como postfix: postfix, o problema ainda persiste.) O postfix do usuário também é membro do grupo clamav.

As permissões no próprio socket são:

srwxrwxrwx 1 clamav clamav 0B Sep 21 11:46:26 2018 /var/run/clamav/clmilter.sock

Em clamav-milter.conf eu executo valores padrão, alterando o usuário para postfix não funcionou:

MilterSocket unix:/var/run/clamav/clmilter.sock

# MilterSocket unix:/var/spool/postfix/var/run/clamav/clmilter.sock
# MilterSocket inet:8890

# ClamdSocket unix:/var/run/clamav/clmilter.sock

#MilterSocket inet:7357

# Define the group ownership for the (unix) milter socket.
# Default: disabled (the primary group of the user running clamd)
#MilterSocketGroup postfix

# Sets the permissions on the (unix) milter socket to the specified mode.
# Default: disabled (obey umask)
#MilterSocketMode 660

# Remove stale socket after unclean shutdown.
#
# Default: yes
FixStaleSocket yes

# Run as another user (clamav-milter must be started by root for this option to work)
#
# Default: unset (don't drop privileges)
User postfix

No rc.conf

clamav_milter_enable="YES"
clamav_milter_socket="/var/run/clamav/clmilter.sock"
clamav_milter_socket_user="postfix"
clamav_milter_socket_group="postfix"

No main.cf do postfix também é bastante normal:

smtpd_milters = unix:/var/run/clamav/clmilter.sock inet:127.0.0.1:8891
    
por Lexib0y 21.09.2018 / 13:59

1 resposta

0

Por padrão, o postfix do FreeBSD é executado em chrooted para /var/spool/postfix . Altere sua linha smtpd_milters para que esse diretório seja sua raiz. Por exemplo:

smtpd_milters = unix:/clamav/clamav-milter.ctl, ...
    
por 23.09.2018 / 21:28