Назад | Перейти на главную страницу

Пересылка почты Haproxy

У меня небольшая проблема в том, что я пытаюсь пересылать почту через Haproxy, но на совершенно другие серверы.

Проблема, с которой я столкнулся, заключается в том, что существует несколько бэкэндов, которые идут в разные места и на разные сайты. В настоящее время я использую следующую конфигурацию прослушивания для этого, однако я знаю, что hdr_sub (host) не получает правильную информацию для получения электронных писем по назначению.

listen Mail_Handler
        mode                     tcp
        bind                     :25
        # Set timeouts
        timeout client          15s
        timeout connect         30s
        timeout server          30s
        rate-limit sessions     30

        ################## ACL Handlers ####################
        acl domain1.com hdr_sub(host) -i domain1.com
        acl domain2.com hdr_sub(host) -i domain2.com

        use_backend domain1.com if domain1.com
        use_backend domain2.com if domain2.com

Так, например, у меня есть domain1.com и domain2.com, а запись MX для domain1.com

0 domain1.com

Как можно гарантировать, что почта, отправляемая обработчику MX для domain1.com, действительно достигает domain1.com и то же самое с domain2.com. Я тоже фильтрую почтовый сервер, чтобы предотвратить получение потенциальными злоумышленниками настоящего IP

Могу ли я использовать какой-либо конкретный заголовок, который позволит мне определить, для чего предназначена почта? Или как-нибудь иначе? Если есть какие-то преимущества, я использую Haproxy 1.4.

Ценю вашу помощь.

Как объяснено в configuration.txt, когда вы используете режим TCP ... "проверка уровня 7 выполняться не будет". а hdr_sub - проверка уровня 7 (7.5.3. Соответствие на уровне 7).

Вы можете работать только на уровне 4 и ниже (7.5.1. Соответствие на уровне 4 и ниже).