Добро пожаловать в Gene Office ! |
Обновлено 15.02.2013 г. |
Прежде, чем приступим к настройке обновлений для нашего свежеустановленного, свежепропатченного и доведенного до ума аплянса, уясним для себя несколько особенностей в его обновлении по сравнению с версией под Windows. 1. все файлы антивирусной базы абсолютно аналогичны в обеих версиях керио. 2. файл библиотеки интерфейса - он же сканирующий механизм антивируса - имеет имя libsavi.so и керио умеет различать версии этого файла по его названию (версия присутствует в названии файла от поставщика). 3. структура файла конфигурации сервера обновлений антивируса аналогична версии для Windows, названия файлов листинга также одинаковы. но имена архивов библиотек - разные, как следствие - содержимое файла листинга для API тоже разное. Конфликт. 4. структура файлов для антивируса и ИДС Snort совершенно одинаковы в обеих версиях. 5. используемые в Snort файлы сигнатур совершенно одинаковые для обеих версий. 6. работа веб-фильтра ничем не отличается в обеих версиях.
Что отсюда следует: 1. источник обновлений для обеих версий для всех обновляемых компонентов - антивируса, веб-фильтра и ИДС - не имеет никаких особенностей в зависимости от версии керио за исключением содержимого листинга библиотек и самих библиотек. 2. порядок обновлений компонентов антивируса и ИДС на уровне файловой системы (для ИДС нет иного варианта) совершенно одинаковый для обеих версий. Даже скрипты будут одинаковы - control_snort.
А это значит, что пакет KUAS на основе локального сервера обновлений готов к работе с линукс-версиями керио ! Лишь поправим привычные термины при патче - и все.
Начнем. Для начала устраним противоречие в названиях папок и их содержанием для Windows- и Linux-версий антивируса Sophos. Суть проблемы: в файле ukerav.php (как принято его называть с подачи автора патча), используемого керио для получения описания конфигурации сервера обновлений, в обеих версиях используется один и тот же маршрут: APIdir=apis/files Но для Windows-версии по этому пути должен находиться файл savi-windows.tar.gz, а для Linux-версии - savi-linux32.tar.gz. Казалось бы, что ничего страшного, но листинг - файл api-files.list - для обеих версий имеет одно название, но разное содержание. Поэтому, созданные ранее локальные сервера обновлений для Windows-версий Керио с Linux-версиями работать просто не будут. Значит, надо или модифицировать локальный сервер, или изменить файл конфигурации. А почему бы не сделать универсальный файл api-files.ist, описывающий сразу два архива с библиотеками - и savi-windows.tar.gz и savi-linux32.tar.gz и пусть керио сам выбирает..... И менять ничего не надо - красота, типо..... Только не прокатит такая красота - версии постарше такого вообще не понимают, последние версии через раз выдают непредсказуемые ошибки, особенно коннект. Так что - не будем создавать сами себе ненужные проблемы. Еще небольшое отступление про расположение локального сервера обновлений. Принято считать, что раз керио имеет встроенный веб-сервер, то и флаг бы ему в руки - пусть обновляет сам себя. Но, как правило, такое решение требует изменения значений портов, принятом в керио для доступа ко всем его функциям, что не всегда удобно и приемлемо. А кроме того: как быть, если в организации много серверов с Керио, причем разных версий и на разных платформах? Что, каждый сервер настраивать отдельно и обновлять самостоятельно? А вот у меня под управлением 54 таких девайса - так что же, забыть про выходные, что-ли? Потому и последуем правильному суждению основателя фирмы Oracle: каждому сервису - свой сервер. И сделаем сервер обновлений на отдельном хосте в нашей сети и настроим все Керио-девайсы на его использование. Логично, и выходные свободны. Потому, хоть и не будем полностью забывать про возможность использования керио для самообслуживания, но делать будем все по-серьезному, а не одноразово. Тем более, что мы уже все давно сделали - тут вот написано как. А вот тут - чем наполняем. А вот тут - как наполняем. Т.е. - у нас все уже есть. Осталось внести коррективы в соответствии с вышеизложенной особенностью Софоса. Очевидно, что устранить противоречие можно единственным путем: расположить файлы библиотек API для Windows и для Linux по разным папкам нашего веб-сервера, а каждому керио в зависимости от его типа сообщать свой путь в этой папке веб-сервера, т.е. использовать разные файлы конфигурации. Так и поступим, предположив, что в нашей сети много и давно работают машины в Windows-версиями керио, а вот этот пришелец - аплянс - только появился :) Потому и оставим все виндусовое так, как оно было, а для пришельца создадим отдельную папку на нашем веб-сервере: и создадим новый конфигурационный файл следующего содержания: IDEdir=sophos/ides Не забудем про ликвидацию вин-варианта конца строк. Назовем этот файл update.php (вообще-то такое имя и используется в керио для этих целей) и расположим его в корне нашего веб-сервера обновлений. С сервером все. Теперь при патче каждого керио-аплянса будем использовать то же самое имя сервера обновлений, что и для вин-версий керио - updater, но при патче антивирусной библиотеки указем имя файла конфигурации не ukerav.php как в винде, а update.php. Все, проблема закончилась. Еше раз - что мы получили: локальный веб-сервер обновлений будет раздавать обновлений для всех типов, видов и версий продуктов Керио, наполняя свое содержимое привычным и надежным способом - скриптами пакета KUAS.
Посмотрим в логи обновлений антивируса керио: [17/Feb/2013 13:56:19] {avir_plugins} (PID:
3798) Sophos_plugin: The plugin is prepared for updating phase В данном случае антивирус уже обновлен до актуальной версии, но указанные нами параметры корректно работают. Как бы вот оно и все с антивирусом. А теперь посмотрим на обновления веб-фильтра. И здесь ничего особенно: если при патче указан сервер обновлений updater и использованы указанные здесь параметры, то все само собой заработает (у нас же всегда есть актуальный ключ - мы же используем пакет KUAS). Посмотрим лог: [17/Feb/2013 14:55:43] {webfilter}
Kerio Web Filter successfully activated [17/Feb/2013 14:56:33] {webfilter} (3818)
[ 37 ] BEGIN
Содержание нас вполне устраивает. И с веб-фильром тоже все. Остался Снорт - с ним мы разберемся чуть позже. Скачаем демо-версию пакета KUAS и запустим скрипты make_sophos и make_getkey.
На этом можно было бы и закончить, но мы посмотрим более детально на внутреннее устройство керио и ради спортивного азарта поднимем на нем его локальный сервер обновлений. т.е. отступим от того, о чем говорили в самом начале :)
Поскольку при патче мы не меняли стандартные порты 80 и 443, то и в файле winroute.cfg укажем именно их:
Т.е. вход в панель управления теперь будет по адресу https://172.16.100.99/admin
Создадим в директории /var/winroute каталог webiface. Скопируем при помощи WinSCP файлы getkey.php и update.php в директорию /var/winroute/webiface и прилинкуем их в штатную папку керио /opt/kerio/winroute/webiface
так же поступим с директориями sophos и snort - сюда мы будем складывать обновления нашего локального сервера.
Создадим структуру веб-сервера обновлений с учетом новой директории /sophos/linux и скопируем туда через WinCSP все необходимые файлы
посмотрим на содержимое файла листинга API для Линукса
убедимся, что патченая библиотека софоса avir_sophos.so использует именно нужный нам файл конфигурации update.php
убедимся, что софос использует актуальные обновления
и тут тоже
вот здесь мы видим. что имена файлов сигнатур не соответствуют кериотским переделкам - это родные файлы производителя антивируса - т.е. то, что мы используем в пакете KUAS, а значит - обновление работает:
в базе данных есть файлы расшифровки сообщений .dat
а здесь мы можем быстро переключаться с внешнего сервера обновлений на внутренний и обратно - просто активируем нужный адрес для имени сервера обновлений updater
ради спортивного интереса скопируем файл конфигурации winroute.cfg из родной винды вместе с его концами строк - линуксовый керио его принял:
посмотрим в консоль на антивирус - все ОК:
посмотрим на веб-фильтр - тоже все ОК:
Ну, вот и с антивирусом все, и веб-фильтром тоже.
Самое главное в этом вопросе - определиться с расположением локального сервера обновлений. Ну, и, конечно, найти источники реальных обновлений.
|
||
(С) Gene Office 2011 |