Я немного разочарован!

Моя цель состояла в том, чтобы создать ОЧЕНЬ простой SMTP-прокси под Debian для обработки почты из порта (51234) и пересылки на стандартный 25-порт. Я собираю и устанавливаю " делегат ", который может легко справиться с этим.

Это работает очень хорошо, вот так:

делегированный SERVER = "smtp://anotherSmtpServer:25" -P51234

Странно то, что он работает на моей виртуальной тестовой машине и на локальном выделенном сервере, но мне не удается использовать его в Интернете. Я проверяю это так.

telnet [mySrv] 51234

Конечно, без firewal, без deny host, без ined/xined, делегированная служба прослушивает правильный порт ...

2 подсказки:

  • Порт отвечает на проблемы с интернетом с помощью nmap:«51234/tcp open tcpwrapped»
  • взгляните на tcpdump следующее:

22: 50: 54.864398 IP [myIp] .1699> [mySrv] .51234: S 2486749330: 2486749330(0) победа 65535

22: 50: 54.864449 IP [mySrv] .51234> [myIp] .1699: S 2486963525: 2486963525(0) ack 2486749331 победа 5840

22: 50: 54.948169 IP [myIp] .1699> [mySrv] .51234:. 1 победа 64240

22: 50: 54.965134 IP [mySrv] .43554> [myIp] .auth: S 2485396968: 2485396968(0) победа 5840

22: 50: 55.243128 IP [myIp]> [mySrv]: аутентификация tcp порта ICMP [myIp] недоступна, длина 68

22: 50: 55.249646 IP [mySrv] .51234> [myIp] .1699: F 1: 1(0) ack 1 победа 46

22: 50: 55.309853 IP [myIp] .1699> [mySrv] .51234:. Ack 2 победа 64240

22: 50: 55.310126 IP [myIp] .1699> [mySrv] .51234: F 1: 1(0) ack 2 победа 64240

22: 50: 55.310137 IP [mySrv] .51234> [myIp] .1699:. акк 2 победа 46

Часть "auth" кажется мне подозрительной, но не звонила. Я мог бы, конечно, сделать с некоторой помощью. Большое спасибо !

2 ответа2

1

"Auth" - это порт 113, auth/ идент. Tcpdump показывает вам имя протокола, потому что это хорошо известная служба. Он должен быть указан в / etc / services. Это означает, что на порту 113 mySrv нет ничего, что неудивительно, никто на самом деле не использует этот сервис; это не так полезно.

Я ничего не знаю о делегате, так что ничего там. Если вы не можете заставить это работать, вы можете вместо этого использовать DNAT-правило iptables для сопоставления портов. Посмотрите это руководство, если вам интересно. Это будет простое сопоставление портов, а не прокси уровня приложения, как это делает сам список делегатов. Например:

iptables -t nat -A PREROUTING -d [srvIp] --dport 51234 -j DNAT --to-destination [smtpID]:25
0

Я немного поработал над решением, и проблема была настолько очевидна ... Это связано с программным обеспечением. Делегат запрещает транзакции хоста вне его сети.

Добавляя РАЗРЕШЕНИЯ = «::» программное обеспечение сделал свою работу flawlessy. Вот сетевое решение cmd lines, которое я использовал на мгновение:

iptables -t nat -D PREROUTING -p tcp -d [MyIP] --dport 51234 -j DNAT --to-destination [THeSMTPRelay]:25

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .