Перейти к содержимому


Фото
- - - - -

Конфликт DrWeb и почтового клиента на Astra Linux.


  • Please log in to reply
26 ответов в этой теме

#1 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 25 Январь 2021 - 11:53

Приветствую. Столкнулись с проблемой конфликта DrWeb версии 11.1.0.1905131322 и нашего местного почтового клиента. По порядку. ОС Astra Linux 1.6 SE c 6 обновлением безопасности. Веба версию написал, сертифицированная версия МО. Что интересно, добавления в исключения локально не помогают, централизованно тоже. Конфликтует со spider gate. Если отключить его, почтовый клиент запускается. Проблема именно с запуском. Включенный на ПК spIDer Gate не даёт запустить почтовый клиент под мандатными метками отличными от 0. С нулём запускает нормально.

Вдобавок, была скачена версия DrWeb версии 11.1.7.2008171418. С ней почтовый клиент работает без нареканий. Даже исключения не нужны. Почтовый клиент летает как на нулевой метке, так и на других мандатных метках.

Подскажите, как можно решить данную проблему на нужной нам сертифицированной версии. Почему исключения не работают? Либо как добавлять в исключения правильно, чтобы работало? Добавляли все папки, все файлы почтового клиента, не помогало, пробовали как централизованно, так и локально. Почтовый клиент кустарного производства, но он нам очень нужен! И без веба также не обойтись, а решать проблему выключением Spider Gate - непозволительная роскошь. 

Прошу помочь, любые идеи приветствуются.


Сообщение было изменено Misza: 25 Январь 2021 - 11:55


#2 npc_irs

npc_irs

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 25 Январь 2021 - 12:13

А какие порты использует ваш так называемый "почтовый клиент"?



#3 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 25 Январь 2021 - 13:22

А какие порты использует ваш так называемый "почтовый клиент"?

 

1281-1284 - НС

1285-1288 - ДСП

1289-1292 - С
1293-1296 - СС
1408 СУБД



#4 dmitrii.s

dmitrii.s

    Member

  • Members
  • 112 Сообщений:

Отправлено 25 Январь 2021 - 13:37

Добрый день.
Существует ли возможность предоставить следующую информацию?
Вывод из терминала после выполнения команды:
$ drweb-ctl cfshow

Затем выполнить:
$ sudo drweb-ctl cfset root.defaultloglevel debug
$ sudo drweb-ctl cfset root.log /tmp/log
$ sudo drweb-ctl rel

Воспроизвести проблему и приложить в следующем ответе файл /tmp/log ?

По работе с исключениями, обратите внимание, что следует добавить в исключения путь к исполняемым файлам приложения, которое используется в качестве почтового клиента.


Сообщение было изменено dmitrii.s: 25 Январь 2021 - 13:39


#5 dmitrii.s

dmitrii.s

    Member

  • Members
  • 112 Сообщений:

Отправлено 25 Январь 2021 - 14:28

udp:

Для настройки вывода логов на повышенных мандатных уровнях следует:

В файл /etc/pam.d/fly_dm до всех записей, начинающихся на session, добавить (или изменить) строку

session optional pam_drweb_session.so type=open log=/tmp/sessionLog log_level=Debug

 

После настройки и воспроизведения проблемы, просьба приложить файл /tmp/sessionLog.



#6 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 25 Январь 2021 - 15:17

Прикрепляю файлы, для файлов cfshow и fly-dm дописал в конце txt, чтобы обойти защиту отправки файлов.

Прикрепленные файлы:

  • Прикрепленный файл  log   5,71Мб   3 Скачано раз
  • Прикрепленный файл  cfshow.txt   18,83К   5 Скачано раз
  • Прикрепленный файл  fly-dm.txt   855байт   2 Скачано раз


#7 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 25 Январь 2021 - 15:19

Быть может, вы обладаете сведениями, когда будет проводиться инспекционный контроль (либо сертификация) Министерством Обороны для версии 11.1.7.2008171418?

Либо, возможно, она уже сертифицирована. Можно ли это как-то проверить?


Сообщение было изменено Misza: 25 Январь 2021 - 15:20


#8 dmitrii.s

dmitrii.s

    Member

  • Members
  • 112 Сообщений:

Отправлено 25 Январь 2021 - 15:56

Прикрепляю файлы, для файлов cfshow и fly-dm дописал в конце txt, чтобы обойти защиту отправки файлов.

Прошу прощения, не совсем верно описал Вам информацию по настройке логирования.

1) В Вашем файле /etc/pam.d/fly_dm самая первая строка: session optional pam_drweb_session.so type=open log=/tmp/sessionLog log_level=Debug

Удалите её.

 

2) Затем, в этом же файле следует изменить предпоследнюю строку:

сейчас она у Вас выглядит так session optional pam_drweb_session.so type=open

Приведите её, пожалуйста, к виду:

session optional pam_drweb_session.so type=open log=/tmp/sessionLog log_level=Debug

 

3) После сохранения файла, перезагрузки ОС и логина под пользователем с мандатным уровнем выше 0, у Вас должен создаться файл /tmp/sessionLog

 

4) Теперь воспроизведите проблему и пришлите, пожалуйста, файл /tmp/sessionLog.


Сообщение было изменено dmitrii.s: 25 Январь 2021 - 15:56


#9 amorozov

amorozov

    Member

  • Members
  • 163 Сообщений:

Отправлено 25 Январь 2021 - 19:22

Логи Session тут вряд ли помогут. LinuxFirewall/GateD не под ним запукаются.

 

Исключать надо не шелл-скрипты и директории, а бинарь, который использует сеть.


Сообщение было изменено amorozov: 25 Январь 2021 - 19:22


#10 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 26 Январь 2021 - 13:15

Исправил. Лог Прикрепляю.

Прикрепленные файлы:


Сообщение было изменено Misza: 26 Январь 2021 - 13:16


#11 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 26 Январь 2021 - 13:33

Все исполняемые файлы, которые использует почтовый клиент в исключение были добавлены

 

Логи Session тут вряд ли помогут. LinuxFirewall/GateD не под ним запукаются.

 

Исключать надо не шелл-скрипты и директории, а бинарь, который использует сеть.



#12 amorozov

amorozov

    Member

  • Members
  • 163 Сообщений:

Отправлено 27 Январь 2021 - 15:32

В добавленном выше cfshow.txt вижу только исключение shell-скриптов. Альтернативно можно попробовать пропустить порты:
sudo drweb-ctl cfset LinuxFirewall.InterceptHook \
$'local dwl = require "drweb.lookup"
function intercept_hook(ctx)
    -- do not check if group == Root.TrustedGroup
    if ctx.divert == "output" and ctx.group == "drweb"
    then
        return "pass"
    end

    if ctx.divert == "output"
    then
        if ctx.dst.port >= 1281 and ctx.dst.port = 1285 and ctx.dst.port = 1289 and ctx.dst.port = 1293 and ctx.dst.port = 0 and ctx.src.port <= 1024
        and ctx.src.port ~= 20
    then
        return "pass"
    end
    return "check"
end'


#13 amorozov

amorozov

    Member

  • Members
  • 163 Сообщений:

Отправлено 27 Январь 2021 - 20:22

Ох... Из за > и < код побило при вставке. Правильно так:

$ sudo drweb-ctl cfset LinuxFirewall.InterceptHook $'local dwl = require "drweb.lookup"
function intercept_hook(ctx)
    -- do not check if group == Root.TrustedGroup
    if ctx.divert == "output" and ctx.group == "drweb"
    then
        return "pass"
    end

    if ctx.divert == "output"
    then
        if ctx.dst.port >= 1281 and ctx.dst.port <= 1284
        then
            return "pass"
        end
        if ctx.dst.port >= 1285 and ctx.dst.port <= 1288
        then
            return "pass"
        end
        if ctx.dst.port >= 1289 and ctx.dst.port <= 1292
        then
            return "pass"
        end
        if ctx.dst.port >= 1293 and ctx.dst.port <= 1296
        then
            return "pass"
        end
        if ctx.dst.port == 1408
        then
            return "pass"
        end
    end

    -- do not check connections from privileged ports
    -- except FTP active mode
    if ctx.src.port >= 0 and ctx.src.port <= 1024
        and ctx.src.port ~= 20
    then
        return "pass"
    end
    return "check"
end'


#14 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 28 Январь 2021 - 12:09

Благодарю! Огромное спасибо, заработало!

 

Ох... Из за > и < код побило при вставке. Правильно так:

$ sudo drweb-ctl cfset LinuxFirewall.InterceptHook $'local dwl = require "drweb.lookup"
function intercept_hook(ctx)
    -- do not check if group == Root.TrustedGroup
    if ctx.divert == "output" and ctx.group == "drweb"
    then
        return "pass"
    end

    if ctx.divert == "output"
    then
        if ctx.dst.port >= 1281 and ctx.dst.port <= 1284
        then
            return "pass"
        end
        if ctx.dst.port >= 1285 and ctx.dst.port <= 1288
        then
            return "pass"
        end
        if ctx.dst.port >= 1289 and ctx.dst.port <= 1292
        then
            return "pass"
        end
        if ctx.dst.port >= 1293 and ctx.dst.port <= 1296
        then
            return "pass"
        end
        if ctx.dst.port == 1408
        then
            return "pass"
        end
    end

    -- do not check connections from privileged ports
    -- except FTP active mode
    if ctx.src.port >= 0 and ctx.src.port <= 1024
        and ctx.src.port ~= 20
    then
        return "pass"
    end
    return "check"
end'


#15 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 28 Январь 2021 - 12:13

Ещё такой момент. Ранее вы высылали код, который позволял работать СУБД при централизованном управлении DrWeb. https://forum.drweb.com/index.php?showtopic=334020&hl=%D1%81%D1%83%D0%B1%D0%B4- Вот тема.
Не могли бы вы вклинить в тот код нужные порты для почтового клиента, чтобы у нас работало исправно и СУБД и наш почтовый клиент при централизованном управлении?


Сообщение было изменено Misza: 28 Январь 2021 - 12:13


#16 amorozov

amorozov

    Member

  • Members
  • 163 Сообщений:

Отправлено 28 Январь 2021 - 14:51

[LinuxFirewall]
OutputDivertEnable = Yes
InterceptHook = "local dwl = require ""drweb.lookup""
function intercept_hook(ctx)
    -- do not check if group == Root.TrustedGroup
    if ctx.divert == ""output"" and ctx.group == ""drweb""
    then
        return ""pass""
    end

    if ctx.divert == ""output""
    then
        if ctx.dst.port >= 1281 and ctx.dst.port <= 1284
        then
            return ""pass""
        end
        if ctx.dst.port >= 1285 and ctx.dst.port <= 1288
        then
            return ""pass""
        end
        if ctx.dst.port >= 1289 and ctx.dst.port <= 1292
        then
            return ""pass""
        end
        if ctx.dst.port >= 1293 and ctx.dst.port <= 1296
        then
            return ""pass""
        end
        if ctx.dst.port == 1408
        then
            return ""pass""
        end
        if ctx.dst.port == 5432
        then
            return ""pass""
        end
    end

    -- do not check ALD connections
    if ctx.dst.port == 17302 or ctx.dst.port == 389
    then
        return ""pass""
    end
    -- do not check connections from privileged ports
    -- except FTP active mode
    if ctx.src.port >= 0 and ctx.src.port <= 1024
        and ctx.src.port ~= 20
    then
        return ""pass""
    end
    return ""check""
end"


#17 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 01 Февраль 2021 - 11:18

Спасибо большое. Заработал почтовый клиент, но веб блокирует передачу сообщений, они не приходят и не получаются. Клиент запускается, но письма не доходят.


Если отключить SpIDer Gate, письма начинают доходить.



#18 amorozov

amorozov

    Member

  • Members
  • 163 Сообщений:

Отправлено 01 Февраль 2021 - 16:31

Проблема в том числе при логине на нулевом уровне?

#19 Misza

Misza

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 02 Февраль 2021 - 10:53

Прошу прощения, не уточнил, нет, только на отличных от нуля уровнях конфиденциальности.



#20 amorozov

amorozov

    Member

  • Members
  • 163 Сообщений:

Отправлено 02 Февраль 2021 - 17:34

Тут может помочь правка privsock.conf как описано здесь:

https://download.geo.drweb.com/pub/drweb/unix/workstation/11.1/documentation/html/ru/index.html?dw_8_parsec.htm

Но будет побочный эффект: у пользователей на ненулевых уровнях появится полный доступ к сети (не только к серверам на повышенных уровнях)


Сообщение было изменено amorozov: 02 Февраль 2021 - 17:37



Читают тему: 0

0 пользователей, 0 гостей, 0 скрытых