Como instalar o postfix para enviar e-mails apenas para admin?

3

Eu tenho um VPS rodando o Ubuntu 13.10 na Digital Ocean.

Eu gostaria de instalar o postfix no servidor, mas quero que ele seja capaz de enviar e-mails apenas para o meu endereço de e-mail sempre que uma mensagem do sistema quiser ser enviada para o root.

Agora tenho meu postfix instalado como local only . Isso envia as mensagens para /var/mail/root .

Em vez disso, gostaria que minhas mensagens fossem enviadas para meu e-mail real ( [email protected] ), mas não quero permitir que outros usuários / sites enviem e-mails (por exemplo, de% co_de do PHP %).

Isso é possível?

    
por Richard Rodriguez 25.02.2014 / 02:44

3 respostas

6

Existem várias maneiras de fazer isso

Usando o SSMTP:

Você pode encontrar um artigo detalhado aqui . (Por favor, considere Zulakis 'comentário abaixo sobre segurança: Eu deixo a solução ssmtp aqui para seu conhecimento, mas prefiro a solução postfix )

Instalar o ssmtp

sudo aptitude install ssmtp

Edite o arquivo de configuração:

sudo vim /etc/ssmtp/ssmtp.conf

E configure-o com sua conta do Gmail:

[email protected]
mailhub=smtp.gmail.com:587
[email protected]
UseSTARTTLS=YES
AuthUser=username
AuthPass=password
FromLineOverride=yes

Usando o Postfix

Se você quiser usar sua instalação do postfix, poderá configurá-la para funcionar com sua conta do Gmail. Você pode encontrar um artigo detalhado aqui .

Verifique se você tem todas as dependências necessárias

mailutils libsasl2-2 ca-certificates libsasl2-modules

Edite a configuração do postfix:

sudo vim /etc/postfix/main.cf

E configure-o com sua conta do Gmail:

relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes

Crie o arquivo com sua senha:

vim /etc/postfix/sasl_passwd

Adicione as seguintes linhas

[smtp.gmail.com]:587    [email protected]:PASSWORD

Permitir raiz apenas

Eu não sei exatamente o que você quer dizer com

I don't want to allow other users/sites to send e-mail (like for example from PHP's mail())

Mas, para bloquear o acesso de e-mail por usuário ou por domínio, você pode editar o seguinte arquivo:

vim /etc/mail/access

Adicione regras como:

To:[email protected]        REJECT            # Reject a1 user from recieving mails
From:[email protected]     REJECT           # Reject a1 user from sending mails

Espero que isso ajude.

    
por 04.03.2014 / 17:30
1

Adicione uma entrada de alias no seu arquivo alias_maps como

root:       [email protected]

Isso enviará todos os e-mails de root para [email protected]

    
por 25.02.2014 / 07:15
1

acho que o que você está pedindo é apenas parcialmente possível, uma vez que os dois requisitos ( aceitar (e encaminhar) e-mails administrativos e rejeitar mensagens de outros usuários ) não são ortogonal.

por exemplo. o que acontece se um serviço quiser enviar um email para root através da interface mail() do PHP? deveria ser permitido? proibido? o que acontece (como é geralmente o caso) se um serviço é executado como um usuário sem privilégios em vez de root ?

então eu acho que o que você realmente quer é usar somente o MTA para enviar e-mails administrativos da sua máquina local.

isso pode ser feito configurando seu MTA para fazer o seguinte (estas são instruções genéricas para configurar qualquer MTA, não específico para postfix ):

  • aceita apenas e-mails do localhost (portanto, não aceita e-mails de fora ); faça isso configurando seu MTA para ouvir em 127.0.0.1 e / ou configurando um firewall que bloqueie todo o tráfego recebido na porta 25 .

  • aceite apenas emails para contas administrativas ( root , webmaster , postmaster , abuse , ...) e configure um alias para encaminhar esses emails para [email protected]

como você controla seu próprio servidor, há pouco uso no bloqueio de determinados aplicativos (por exemplo, php ) de enviar e-mails por meio de seu próprio servidor de e-mail. Basta configurar esses aplicativos para usar um servidor de e-mail diferente (se necessário) ou reavaliar sua necessidade.

    
por 03.03.2014 / 11:20