Erro ao enviar email da linha de comando como usuário não root

4

Estou tentando enviar mensagens da linha de comando como um usuário não-root no CentOS. Estou usando o seguinte comando, mas recebendo um erro:

$ echo test | mail -s "test" [email protected] -c [email protected]
WARNING: RunAsUser for MSP ignored, check group ids (egid=102, want=51)
can not write to queue directory /var/spool/clientmqueue/ (RunAsGid=102, required=51): Permission denied

Eu adicionei o usuário ao grupo 51 (smmtp) e posso cd e gravar nesse diretório como usuário.

Por que estou recebendo o erro?

Algumas permissões relevantes:

# ls -la  /var/spool/clientmqueue/
total 8
drwxrwx---   2 smmsp smmsp 4096 Mar  8 14:25 .
drwxr-xr-x. 13 root  root  4096 Oct 21 15:09 ..

# ls -la /usr/sbin/sendmail
lrwxrwxrwx 1 root root 21 Oct 21 15:09 /usr/sbin/sendmail -> /etc/alternatives/mta

# ls -la /etc/alternatives/mta
lrwxrwxrwx 1 root root 27 Oct 21 15:09 /etc/alternatives/mta -> /usr/sbin/sendmail.sendmail

# ls -la /usr/sbin/sendmail.sendmail
-rwxr-sr-x 1 root smmsp 833512 Nov 11  2010 /usr/sbin/sendmail.sendmail
    
por Leons 06.03.2015 / 21:02

3 respostas

1

O Sendmail espera que o endereço de e-mail seja a última coisa no comando linha. Se você tiver algum parâmetro após o endereço de e-mail, ele os analisará como endereços de e-mail. No exemplo acima, ele está tentando analisar "-c" como um endereço de e-mail e apresentando um erro não relacionado.

# BAD
$ echo test | mail [email protected] -s "test"
# BAD
$ echo test | mail [email protected] -c [email protected]
# GOOD
$ echo test | mail -s "test" -c [email protected] [email protected] 

Os endereços de e-mail TO devem seguir os endereços de e-mail do CC, o assunto do e-mail e quaisquer outros parâmetros que você precisar passar para o sendmail.

    
por 06.03.2015 / 21:02
0

Mesmo que o binário tenha permissões corretas, programas em /usr/sbin não são executáveis diretamente (não vistos no caminho) para um usuário normal, escreva o caminho inteiro.

Use assim:

echo "Subject: sendmail test" | /usr/sbin/sendmail -v [email protected]
    
por 19.05.2016 / 13:47
-1

verifique as permissões e propriedade da pasta sendmail em / usr / lib Depois de consertar, funcionou para mim.

    
por 19.07.2016 / 16:10

Tags