пятница, 4 октября 2013 г.

Авто аутентификация по NTLM для работы с Kerio

Сквозная аутентификация в Kerio по NTLM не удобна тем, что для работы мессенджеров, почтовиков настроенных на внешние мэйл сервера, различных прог которые "хотят" интернет, необходимо открывать браузер и пытаться выйти через него на любой внешний ресурс, для автоматической аутентификации на сервере Kerio. Для устранения сего недуга, было принято следующее решение.

Подготовка.


После настройки кериИ, при запуске браузера, можно обнаружить окно с авторизацией вместо редиректа. Тут проблема может заключаться в настройке браузера клиента. (Chrome, Firefox, баги IE7 и т.п.)

Далее я опишу действия с GPO в домене, для различных браузеров.

Microsoft Internet Explorer


Включаем "автоматический вход" только в зоне местной интрасети:

Конфигурация пользователя > Политики > Административные шаблоны > Компоненты Windows > Internet Explorer > Панель управления браузером > Вкладка безопасности > Зона интасети > Параметры входа

Добавляем FQDN имя сервера Kerio в зону узлов локальной интрасети.

Конфигурация пользователя > Политики > Административные шаблоны > Компоненты Windows > Internet Explorer > Панель управления браузером > Вкладка безопасности > Список назначений зоны безопасности для веб сайтов

Пример: Включить, назначения для зоны>Показать>Имя значения=kerio.domain.local, Значение=1 (значение 1 означает интрасеть).


Firefox


В адресной строке введим "about:config", затем выполняем поиск опции "network.automatic-ntlm-auth.trusted-uris"
Устанавливаем значение данной опции равное DNS имени межсетевого экрана. (например "kerio.domain.local")

Для большого количества любителей Firefox, юзаем дополнение Group Policy Addon (административный шаблон GPO) для выполнения централизованного конфигурирования данного обозревателя: https://addons.mozilla.org/en-US/firefox/addon/gpo-for-firefox/

Google Chrome


Chrome использует конфигурацию обозревателя Internet Explorer

При возникновении неожиданных ошибок прохождения автоматической аутентификации NTLM клиентскими ПК, на базе операционных систем Windows 7 и Windows 2008 r2, при использовании версии Kerio Control Software Appliance или Virtual Appliance, топаем сюда: http://support.microsoft.com/kb/976918

Суть решения проблемы


Создаём JavaScripts x2 штуки:

1. Скрипт для автологина Kerio при входе в ПК
var $serverURL="http://kerio.domain.local:4080/nonauth/login.php?NTLM=1&internal=0"; 
var oIE = WScript.CreateObject("InternetExplorer.Application"); 
oIE.Visible = 0; 
oIE.navigate($serverURL); 
while ((oIE.Busy) || (oIE.ReadyState != 4)) WScript.Sleep(300); 
WScript.Sleep(100); 
oIE.Quit();
2. Скрипт для автологаута Kerio при разлогировании/завершении работы на ПК
var $serverURL="http://kerio.domain.local:4080/nonauth/logout.php?x_xc=0xa9e7b520&x_xd=undefined"; 
var oIE = WScript.CreateObject("InternetExplorer.Application"); 
oIE.Visible = 0; 
oIE.navigate($serverURL); 
while ((oIE.Busy) || (oIE.ReadyState != 4)) WScript.Sleep(300); 
try { 
oIE.document.all.tags('form')[1].submit(); 
oIE.Quit(); 
} catch (error) { 
// Здесь действия если пользователь не залогинился в KWF 
oIE.Quit();
}

Далее


Создадим GPO в нашем домене.

Отключаем в нём конфу компа, будем юзать только юзерскую часть.


Затем для тех кто не знает, вся схема картинке, там есть 2 момента, на 3м пункте в открывшуюся папку кидаем скрипт 4, для скриптов вход в систему и выход, папки будут разными, пометил ! знаком. Для "Выхода из системы" всё аналогично.


В фильтре удаляем прошедших проверку и распространяем на группу из AD в которую входят пользователи интернета 1, дабы не обременять политикой юзверей без интернета, и линкуем GPO к домену 2. 


Профит.

Комментариев нет:

Отправить комментарий