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

04 июля 2024

ID 43923

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

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

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

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

  1. Откройте конфигурационный файл main.cf.
  2. В конец файла main.cf добавьте следующие строки:

    #klms-begin-afterqueue-filter

    content_filter = klms_postfix-afterqueue:$sock_postfix_format

    #klms-end-afterqueue-filter

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

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

      #klms-begin-afterqueue-filter

      klms_postfix-afterqueue unix - - n - 20 smtp

      -o smtp_send_xforward_command=yes

      127.0.0.1:$forward_port inet n - n - 10 smtpd

      -o content_filter=

      -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

      -o smtpd_tls_security_level=none

      -o message_size_limit=0

      #klms-end-afterqueue-filter

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

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

      #klms-begin-afterqueue-filter

      klms_postfix-afterqueue unix - - n - 20 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

      -o smtpd_tls_security_level=none

      -o message_size_limit=0

      #klms-end

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

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

    POSTFIX_INTEGRATION_TYPE=afterqueue

    START_SMTP_PROXY=1

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

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

    socket-out=<IP-адрес и номер порта> или <UNIX-сокет>, указанные в пункте 4 инструкции для $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=inet:10025@127.0.0.1

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

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

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