Como criar o diretório Maildir com permissões suficientes para Postfix?

Como criar o diretório Maildir com permissões suficientes para Postfix?

Eu tenho o CentOS 5.5 com Postfix instalado. Eu quero usarlocalagente de entrega com configuração padrão, mas quero que ele armazene correspondência comDiretório Maildircaixas de correio de estilo.

Quando defino as caixas de correio a serem armazenadas (como padrão) em:

mail_spool_directory = /var/spool/mail/

E eu crio manualmente o maildir, então fica assim:

[root@dx2200 /]# ls -lah /var/spool/mail/
total 32K
drwxrwxr-x  4 root  mail 4.0K Mar 15 15:01 .
drwxr-xr-x 13 root  root 4.0K Mar 15 14:33 ..
drwxr-xr-x  5 root  root 4.0K Mar 15 14:52 marshra
drwxr-sr-x  5 pedro mail 4.0K Mar 15 15:01 pedro
[root@dx2200 /]# 
[root@dx2200 /]# ls -lah /var/spool/mail/pedro/
total 40K
drwxr-sr-x 5 pedro mail 4.0K Mar 15 15:01 .
drwxrwxr-x 4 root  mail 4.0K Mar 15 15:01 ..
drwxr-sr-x 2 pedro mail 4.0K Mar 15 15:01 cur
drwxr-sr-x 2 pedro mail 4.0K Mar 15 15:01 new
drwxr-sr-x 2 pedro mail 4.0K Mar 15 15:03 tmp
[root@dx2200 /]#

E então tento enviar email para o usuário local pedro, a mensagem não está sendo entregue e meu /var/log/maillogdiz:

Mar 15 15:11:00 dx2200 postfix/local[4266]: warning: maildir access problem for UID/GID=1014/1014: error writing message: Permission denied
Mar 15 15:11:00 dx2200 postfix/local[4266]: warning: perhaps you need to create the maildirs in advance
Mar 15 15:11:00 dx2200 postfix/local[4266]: 8D5D11310056: to=<[email protected]>, orig_to=<pedro>, relay=local, delay=0.04, delays=0.02/0.01/0/0.01, dsn=5.3.0, status=bounced (maildir delivery failed: error writing message: Permission denied)

Eu tive problema semelhante comvirtualagente de entrega e mudar virtual_mailbox_basedo /var/spool/vmaildiretório inicial /home/vmailajudou. Eu tenho que fazer isso também comlocalAgente de entrega ?E SE- por que não consigo armazenar correspondência /var/spool?

Responder1

Editar: resposta completamente reescrita de acordo com os comentários

O problema pode estar relacionado ao SELinux. Você pode executar, por exemplo, sestatuspara verificar se está ativado ou desativado.

Para entrega maildir, o postfix muda para o usuário correspondente, portanto, o diretório de destino precisa ser gravável pelo usuário. Este parece já ser o caso. Por motivos de privacidade, sugirochmod -R o-rwx /var/spool/mail/*

Apenas para completar:Se arquivos mbox forem usados, o diretório de spool precisa ser gravável pelo mailgrupo obtido usando chmod -R g+rwX /var/spool/mail.

Responder2

para permitir a gravação da política SELinux como uma linha de comando

semanage permissive -a postfix_local_t 

Responder3

Eu tive o mesmo erro com diretórios de usuários em um subdiretório que tinha permissões erradas. Por exemplo, o diretório inicial de “user1” era /home/subdir/user1. E o subdir não tinha permissões de execução para "outros".

chmod 755 /home/subdir

corrigiu o problema para mim. Os diretórios de usuários ainda possuem permissões "700".

A mensagem de erro era enganosa porque a permissão negada não estava no diretório do usuário, mas em um diretório acima dele.

Responder4

suas permissões:

drwxr-sr-x 2 pedro mail xxxx cur,new,tmp

só pedro(você) pode escrever, mail(servidor) só pode ler.

  1. mudar usuário para email,
  2. chmod 700
  3. tente novamente

informação relacionada