Como centralizar meu e-mail?

2

Eu recebo um monte de mensagens em cerca de 20 servidores diferentes que eu gostaria de obter para um. As caixas estão rodando Linux e agora a minha solução é criar um relay TCP.

Eu quero que o tráfego a qualquer momento entre na porta 25 para que seja retransmitido para uma caixa em algum outro lugar que não esteja na mesma LAN. Eu tenho um script Perl que faz aproximadamente isso, mas é ineficiente e pode falhar. Eu prefiro encontrar uma maneira de usar iptables /

    
por Peter Mortensen 07.03.2010 / 13:51

6 respostas

9

Talvez não seja necessário ter 20 servidores para email? Você pode simplesmente configurar o MTA (Mail Transfer Agent) no servidor central para aceitar emails para o (s) domínio (s) em que está interessado e definir o DNS para cada domínio para que o registro MX aponte para o servidor central.

Se isso não for possível, faça com que seus servidores atuem como gateways de e-mail e retransmitam o e-mail para o servidor central. Isso cuidaria da eficiência & problemas de confiabilidade. Como você faz isso depende do MTA que você escolheu. É claro que você ainda precisa configurar o servidor central para aceitar e-mails para todos os domínios.

E se você quiser experimentar a sua sorte com o iptables (não recomendado), então você pode fazer algo como:

iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 25 -j DNAT --to 192.168.1.50:25
iptables -A INPUT -p tcp -m state --state NEW --dport 25 -i eth1 -j ACCEPT
    
por 09.06.2009 / 02:25
7

Eu recomendo abordar esse problema em uma camada superior na pilha de rede. Em vez de encaminhar as portas, você deve simplesmente executar um servidor SMTP simples em cada host que canalize tudo para o servidor central.

Dependendo de suas necessidades, você pode usar:

  • postfix
  • ssmpt
  • qmail
  • ...
por 09.06.2009 / 00:50
3

Talvez você possa resolver o problema no DNS.

Basta apontar os registros MX desses 20 servidores para o servidor que você deseja usar.

    
por 24.06.2009 / 13:04
1

Adicione a seguinte linha ao arquivo /etc/postfix/main.cf de cada máquina e emita um postfix reload

relayhost = smtprelay.yourdomain.com

Você precisará garantir que, em smtprelay.yourdomain.com , mynetworks inclua a máscara de rede das máquinas que você deseja retransmitir por meio dessa máquina.

    
por 24.06.2009 / 05:28
0

Se suas máquinas já estiverem executando um servidor SMTP, por que não configurar um alias em cada um para apontar para o seu servidor de e-mail central?

    
por 09.06.2009 / 01:11
0

Além disso, leve em consideração o assunto. Considere encaminhar mensagens de contas de usuários específicas para uma caixa de correio centralizada, usando / etc / aliases, assim:

# Person who should get root's mail
root:           [email protected]

Esta é uma boa maneira de seguir coisas como as notificações de sudo / sshd / yum de diferentes servidores em uma caixa de correio.

    
por 24.06.2009 / 10:47

Tags