Как перенаправить порт smtp с 25 на одном ip на 2525 на другом внешнем mail.domain.com? [закрыто]

Как перенаправить порт smtp с 25 на одном ip на порт 2525 на другом внешнем mail.domain.com?

Пример: у меня ip как xxx.xx.xx.xxx и порт прослушивания как 25 для smtp, теперь я хочу перенаправить или перенаправить запросы на этот порт на порт 2525 в домене mx1.somefreehosting.com .

Можно ли это сделать с помощью nginx, например веб-сервера, или мне нужно использовать iptables? Я хочу убедиться, что массовая рассылка или спам устранены. Я сослался на этот вопрос , но я не смог его прокомментировать, так как у меня меньше очков репутации.

Мотив - настроить учетную запись электронной почты на моем Nokia Lumia, которая не может отправлять электронную почту через smtp (может быть из-за порта).

РЕДАКТИРОВАТЬ: (См. Комментарии с Нильсом) Я хочу создать промежуточный компьютер, который просто перенаправляет SMTP-соединение на некоторый внешний MTA. Я не эксперт, поэтому, возможно, не смогу написать технически правильные слова.

Мой vps будет слушать myip: 25 и перенаправлять его на внешний ip: 2525. Не знаете, насколько это осуществимо?

0
задан 13 April 2017 в 15:14
2 ответа

Postfix можно легко настроить для этого, но на других почтовых серверах я не уверен. По моему опыту, большинство из них не очень хороши в плане гибкости.

Решение на основе iptables было очень простым, похожим на то, что мы можем прочитать и в этом вопросе:

iptables -t nat -A OUTPUT -d ip.of.target.mx -p tcp --dport 25 -j DNAT --to-destination ip.of.target.mx:2525

У этого решения есть недостаток, заключающийся в том, что оно перенаправляет весь трафик, идущий к этому порту, а не только трафик, излучаемый вашим mx.

Возможно, кто-то придет с решением, основанным на прямом mx-config, если оно существует.


Сетевые провайдеры очень рады отфильтровать трафик исходящего tcp порта 25. Они делают это, потому что в основном используются для рассылки спама вирусными машинами. Если вы хотите, чтобы исходящий трафик приходил на 25 порт, вам нужно использовать MX сетевого провайдера, который не всегда очень хорошо настроен (например, вы не можете отправлять через него почту на почтовые серверы, требующие аутентификации).

В ваших проблемах я обычно делаю то, что настраиваю свой пост и на другом порту (например, на 24 порту). С postfix это очень просто.

Если вы хотите сделать что-то подобное, но с iptables, вам нужно перенаправлять ваш входящий трафик, а не исходящий. Если вы хотите внутренне перенаправить входящий tcp-порт 2525 на 25, вы можете прочитать этот вопрос:

iptables -A PREROUTING -t nat -i -p tcp --dport 2525 -j REDIRECT --to-port 25
2
ответ дан 4 December 2019 в 12:31

Из ваших комментариев "Средняя машина, которая просто переадресует SMTP-соединение на какую-то внешнюю MTA" и "Мои vps будут слушать myip:25 и перенаправлять его на внешнюю ip:2525" я предполагаю, что это то, что вам нужно сделать на вашей SMTP-переадресующей средней машине:

iptables -t nat -A PREROUTING  -p tcp --dport 25 -j DNAT --to-destination IP_OF_EXTERNAL_MTA:2525
iptables -t nat -A POSTROUTING -p tcp -d IP_OF_EXTERNAL_MTA --dport 2525 -j MASQUERADE
sysctl -w net.ipv4.ip_forward=1

Первая - это сама переадресация портов, вторая - проверка того, что соединение с внешним MTA маскируется с IP-адресом источника, если ваш VPS, а последняя - включение переадресации IP-пакетов в целом.

Я предполагаю, что здесь нет других правил iptables, уже установленных, например, некоторыми рамками брандмауэра, такими как "firewalld" или "ufw".

Но я сомневаюсь, что это действительно то, чего вы хотите. Вы уверены, что это не наоборот, и ваш VPN должен слушать на 2525 (чтобы предотвратить блок портов), а внешний MTA слушает на 25?

Опять же, более простой способ обойти блок 25 порта - это использовать 465/SMTPS или 587/submission

.
1
ответ дан 4 December 2019 в 12:31

Теги

Похожие вопросы