Before-queue интеграция

04 июля 2024

ID 43928

При интеграции "после передачи сообщения в очередь" (before-queue интеграции) для передачи сообщений на проверку программе Kaspersky Security 8 для Linux Mail Server и возвращения их почтовому серверу Postfix требуется соблюдение следующих условий:

  • Фильтр должен быть настроен для перехвата сообщений от почтового сервера Postfix по сокету socket-in. Этот сокет указывается в файле конфигурации программы в п. 8 инструкции ниже.
  • Фильтр должен передавать сообщения для проверки модулю Scan Logic по сокету scanner. Этот сокет указывается в ходе работы скрипта первоначальной настройки.
  • Фильтр должен возвращать сообщения почтовому серверу Postfix по сокету socket-out. Этот сокет указывается в файле конфигурации программы в п. 8 инструкции ниже.

При интеграции Kaspersky Security 8 для Linux Mail Server с почтовым сервером Postfix socket-in, scanner и socket-out могут указывать как на сетевой, так и на локальный сокет.

Чтобы выполнить before-queue интеграцию Kaspersky Security 8 для Linux Mail Server с Postfix, выполните следующие действия:

  1. Откройте конфигурационный файл master.cf.
  2. В файл master.cf после строки вида

    smtp inet n - n - - smtpd

    добавьте следующие строки:

    #klms-postfix-prequeue-start

    -o smtpd_proxy_filter=$sock_postfix_format

    -o smtpd_proxy_options=speed_adjust (для интеграции с Postfix 2.7 или выше)

    #klms-postfix-prequeue-end

    где $sock_postfix_format – IP-адрес и номер порта, на котором фильтр ожидает входящие соединения, в формате <IP-адрес>:<порт> (для сетевого сокета).

  3. В конец конфигурационного файла master.cf добавьте следующие строки:
    • Для inet-сокета:

      #klms-begin

      127.0.0.1:$forward_port inet n - n - 10 smtpd

      -o receive_override_options=no_unknown_recipient_checks, no_header_body_checks,no_address_mappings

      -o smtpd_helo_restrictions=

      -o smtpd_client_restrictions=

      -o smtpd_sender_restrictions=

      -o smtpd_recipient_restrictions=permit_mynetworks,reject

      -o mynetworks=127.0.0.0/8,[::1]/128

      -o smtpd_authorized_xforward_hosts=127.0.0.0/8,[::1]/128

      #klms-end

      где строка 127.0.0.1:$forward_port inet n - n - 10 smtpd требуется для того, чтобы почтовый сервер Postfix принимал от фильтра обработанные сообщения, ожидая данные на порту $forward_port.

    • Для unix-сокета:

      #klms-begin

      klms_postfix-prequeue unix - - n - 10 smtp

      -o smtp_send_xforward_command=yes

      $unix_socket_name unix n - n - 100 smtpd

      -o receive_override_options=no_unknown_recipient_checks, no_header_body_checks,no_address_mappings

      -o smtpd_helo_restrictions=

      -o smtpd_client_restrictions=

      -o smtpd_sender_restrictions=

      -o smtpd_recipient_restrictions=permit_mynetworks,reject

      -o mynetworks=127.0.0.0/8,[::1]/128

      -o smtpd_authorized_xforward_hosts=127.0.0.0/8,[::1]/128

      #klms-end

      где строка $unix_socket_name unix n - n - 100 smtpd требуется для того, чтобы почтовый сервер Postfix принимал от фильтра обработанные сообщения, ожидая данные на unix-сокете $unix_socket_name.

  4. Откройте файл /var/opt/kaspersky/klms/installer.dat (для Linux) или /var/db/kaspersky/klms/installer.dat (для FreeBSD).
  5. Добавьте в файл следующие строки:

    POSTFIX_INTEGRATION_TYPE=prequeue

    START_SMTP_PROXY=1

  6. Откройте файл /etc/opt/kaspersky/klms/klms_filters.conf (для Linux) или /usr/local/etc/kaspersky/klms/klms_filters.conf (для FreeBSD).
  7. В секции [global] установите значение false для параметра header-guard.
  8. В секции [smtp_proxy] укажите следующие параметры:

    socket-in=<IP-адрес и номер порта> или <UNIX-сокет>, указанные в пункте 2 инструкции для $sock_postfix_format

    socket-out=<IP-адрес и номер порта> или <UNIX-сокет>, указанные в пункте 3 инструкции для $forward_port или $unix_socket_name, в формате inet:<порт>@<IP-адрес> (для сетевого сокета) или unix:<путь к UNIX-сокету> (для UNIX-сокета).

    Пример 1:

    socket-in=inet:10025@127.0.0.1

    socket-out=inet:10026@127.0.0.1

    Пример 2:

    socket-in=unix:/var/run/ksmg/ksmg_smtp_sock

    socket-out=unix:/var/spool/postfix/public/ksmg_forward_sock

  9. Перезапустите службу klms.
  10. Перезапустите почтовый сервер Postfix.

Вам помогла эта статья?
Что нам нужно улучшить?
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!