top of page

Microsoft Forefront Threat Management Gateway.

https://www.youtube.com/watch?v=-__mgMVdVe4

С 1:27:25 начало установки 

 

Требования.

TMG пришёл на смену ISA (Microsoft Internet Security and Acceleration Server (ISA Server)).

Минимальные требования приведены на рис.1.

ISA могла работать с любым количеством внутренних (т.е. защищаемых экранируемых) сетей, т.е. сетевых интерфейсов. Но только одна внешняя сеть была доступна, т.е. на ISA мог быть установлен только один сетевой интерфейс, имеющий внешний адрес. При такой схеме резервный канал организовать было нельзя. Поэтому в общей схеме перед ISA приходилось ставить что-то ещё (например, сторонние продукты).

TMG поддерживает неограниченное количество внешний сетей.

Я буду использовать Server 2008 R2 Standard. Можно порыться в интернете на предмет возможности установки TMG на 2012, но меня вполне устроит 2008.

TMG есть в двух редакциях Standard и Enterprise. Отличие (кроме цены конечно) в масштабируемости. При выборе Enterprise какую-нибудь роль (например Firewall Back-end) может выполнять не один сервер, а целый набор серверов с установленным TMG. Они будут под копирку сконфигурированы и выполнять одну и ту же функцию. Это хорошее решение для отказоустойчивости или если один сервер не

справляется с потоком трафика. 

     Для моих задач вполне подойдёт Standard. Если впоследствии ожидается рост, то всегда можно провести апгрэйд версии Standard на Enterprise (в отличии от ISA, где сделать этого было нельзя).

     Для начала запускаем Run Preparation Tool, в результате чего средство подготовки автоматически проведет необходимые процедуры перед

установкой. По завершении можно приступать к установке TMG.

В процессе установки потребуется указать сетевой диапазон, с которым TMG будет работать. Для удобства можно указыть не диапазон IP-адресов, а сетевые интерфейсы целиком. На базе конфигурации этих сетевых адаптеров и будет выбран соответствующий диапазон.

Полностью с процедурой установки можно ознакомиться в видео https://www.youtube.com/watch?v=-__mgMVdVe4

После (или перед) установки отключите всё ненужное на сетевых картах.

Типы брэндмауэров.

 

Первым поколением брандмауэра (и, вероятно, самым простым) был брандмауэр с фильтрацией пакетов (packet-filtering), впервые появившийся в 1980-х годах. Как показано на рис. 1-3, этот брандмауэр был упрощен тем, что просто использовал списки доступа для разрешения или запрета трафика на основе следующих элементов:

- Транспортные протоколы, такие как TCP или UDP

- IP-адрес отправителя и получателя

- Другие IP протоколы, такие как GRE (протокол 47)

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

Потоки трафика в брандмауэре с фильтрацией пакетов (packet-filtering) имели следующие шаги:

1. Клиент отправляет попытку подключения к хосту назначения.

2. Брандмауэр с фильтрацией пакетов оценивает этот запрос и ищет соответствующее правило в списке управления доступом (ACL).

3. Предполагая, что трафик разрешен, запрос поступает на сервер назначения.

4. Конечный сервер отвечает на запрос, сделанный исходным компьютером.

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

Брандмауэры второго поколения были межсетевыми экранами на уровне цепей (circuit-level). Они были умнее, чем первое поколение, поскольку они включали в себя возможность понимать и отслеживать состояние разговора между источником и получателем. Эта функция также называется инспекцией состояния (stateful inspection), поскольку брандмауэр фактически знает состояние соединения между источником и получателем. Таблица сеансов на основе памяти в устройстве поддерживает состояние соединения.

Таблица состояний имеет следующие общие компоненты:

- Source IP address (IP-адрес источника)

- Source port (Исходный порт)

- Destination IP address (IP-адрес назначения)

- Destination port (Порт назначения)

- IP protocol

- State (such as TCP connection state per RFC 793) (например, состояние соединения TCP согласно RFC 793)

- Time

Если вы задумывались о архитектуре TCP / IP, вы замечали, что первое и второе поколение защищало только слои нижнего уровня (часть транспортного уровня и всего сетевого уровня). Как насчет прикладного уровня? Ответ пришел с брандмауэром третьего поколения с проверкой уровня приложения (application-layer). Брандмауэр уровня приложения может понимать команды на прикладном уровне и определять, являются ли они действительными. Брандмауэры третьего поколения также включают все возможности брандмауэров предыдущего поколения. С годами параметры и интеллект этих устройств менялись. Эти изменения были сделаны для обеспечения большей безопасности и осведомленности о данных, пересекающих устройство. Брандмауэры прикладного уровня включают в себя функциональность брандмауэров предыдущего поколения, в то же время добавляя больше информации протокола. На рис. 1-4 представлены три поколения брандмауэров, каждый из которых соответствует архитектуре TCP / IP.

Типы клиентов TMG 2010.

 

SecureNAT (Самый простой в конфигурировании)

Web Proxy

Firewall Client (когда мы ставим клиенту ПО под названием Forefront TMG Client)

SecureNAT.

Никакого ПО ставить не нужно, а значит отпадают вопросы совместимости. На Linux можно поставить любой браузер, в настройках которого можно прописать прокси. И это уже будет Web Proxy клиент. А если мы не можем ничего поставить? Например, это "железяка" типа Cisco. Тут нам и пригодится SecureNAT. Настройка проста - достаточно прописать дефолтный Gateway, который приводит на внутренний интерфейс TMG.

 При SecureNAT отсутствует аутентификация. Чтобы был контроль, мы можем создавать правила, что SecureNAT разрешен только для определенных устройств.

Web Proxy.

Web Proxy клиент позволяет обрабатывать запросы к веб-содержимому (трафик hhtp, https, ftp и т.д.). Чтобы юзеры могли просматривать веб-контент, достаточно установить браузер и в его настройках указать прокси-сервер.

Если вы не настраивали SecureNAT, то через Web Proxy вам будут доступны только запросы по веб-содержимому (например, http, https). А остальное работать не будет. Например, вам нужно, чтобы наружу работали dns-запросы. Для этого надо для вашего DNS-сервера сделать правило, разрешающее трафик наружу. Ваш DNS-сервер таким образом будет SecureNAT клиентом.

Для  Web Proxy клиента, в отличии от SecureNAT, требуется аутентификация. Вернее мы можем в свойствах (при настройке на сервере) поставить галку "Требовать аутентификацию".  

На рисунке слева - это настройки на сервере, справа - на клиенте.

На сервере уже всё прописано и работает по умолчанию. Зайдите на сервере в Networking и выберите свойства внутреннего интерфейса.

 

На клиенте, можно поставить галку, чтобы "байпасить" прокси сервер для локальных адресов. Нажав Advanced, можно вписать имена или адреса для исключения (если адресов или имен несколько, указываем через точку с запятой). Можно вбить *.tvoydomain.ru, чтобы исключить все узлы в этом домене.

 

Настройку можно сделать через GPO, чтобы всё у клиента прописывалось автоматически.

Т.к. TMG в домене, по умолчанию аутентификация будет Integrated. Если не в домене, придется настраивать через Radius. Basic аутентификация пригодится для устаревших приложений, которые не понимают других методов. Basic предполагает передачу пароля простым текстом, так что если у вас канал не защищенный, лучше воздержитесь от использования этого метода.​ 

Здесь же можно поставить галку "Требовать аутентификацию". Но обратите внимание на предупреждение, что некоторые сайты не поддерживают аутентификацию, такие как Windows Update. Если такие сайты у вас есть, то рекомендуется принуждать юзеров аутентифицироваться на уровне правила доступа или правила публикации. Т.е. вы настраиваете отдельные правила для веб-доступа и отдельные для другого контента. И на этих правилах будете требовать аутентификацию. 

В Advanced можно регулировать нагрузку на сервера. По умолчанию стоит неограниченное количество соединений. Можно указать определенное число. Например, только 100 соединений. Все остальные будут отваливаться. И здесь же можно указать тайм-аут соединения.

Настройки во вкладке Web Browser будут применяться к веб-браузерам клиентов, если в настройках веб-браузера клиента включено автоопределение (Automatically detect setting).

Автоопределение предполагает, что кто-то сообщит вам имя (адрес) прокси-сервера. К примеру, это можно настроить через DHCP (опция 252) или через маркер в AD. Также можно использовать DNS, создав там отдельную запись. Об этом и о автоконфигурации в целом чуть позже. Помните, что для включения автоопределения, необходимо на сервере во вкладке Auto Discovery поставить галку  "Publish ...".

Firewall клиент.

С браузером разобрались. Указываем в его свойствах настройки и можно ходить в интернет. Но если у вас на ПК есть другие приложения, например ICQ, то это приложение надо настраивать отдельно. Т.е. точно также как и с браузером прописывать настройки в свойствах. Если у вас таких приложений много, то для общей настройки поможет Firewall клиент. По сути, функция Firewall клиента - это перехват WinSock вызовов (которые используют наши WinSock приложения) и перенаправление их на сервер, который у него прописан (или сервер ищется автоматически, об этом далее поговорим). 

Помните! На одном устройстве может быть сконфигурировано сразу все три клиента. Но помните! Если вы запрашиваете http, https, эти запросы автоматически будут обрабатываться как Web Proxy клиент.

Дистрибутив Firewall клиента можно взять с установочного диска самого TMG-сервера (папка Client, файл MS_FWC).

При установке указываем сервер TMG или ищем его автоматически, если настроено автообнаружение. Пока у нас его нет, укажем сервер вручную.

Пока идет установка, посмотрим настройки на стороне сервера. Заходим на вкладку Forefront TMG Client. Поддержка Forefront TMG клиента включена 

по умолчанию. Все настройки можно оставить без изменений.

Вернемся к клиенту. Он установлен, значок будет висеть в трее. Красного крестика нет, значит клиент нашел наш сервер.

Для дополнительной настройки параметров Firewall клиента на сервере в разделе Networking слева во вкладке Task выберите "Configure Forefront TMG Client Settings"

Здесь настраивается, какие приложения и как будут обрабатываться клиентами. Например, посмотри на Outlook. Он выключен. Outlook по умолчанию на предприятии завернут на корпоративный Exchange.  

Меняя настройки, не запутайтесь. Здесь бинарная логика. Т.е. поставив Disable = 0, вы включите работу приложения. 

Вообще сюда лазить придется редко. Самый распространенный случай - это клиент-банк, у которого надо открыть определенные порты.

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

Клиенту надо определить, что есть локальное адресное пространство (в этом случае будет байпаситься прокси) и что есть удаленное пространство (в этом случае запрос будет пробрасываться на прокси). В файле Locallat.txt указывается диапазон, который будет байпасится. Т.е. здесь указывается диапазон адресов, на которые можно ходить в обход прокси. Один адрес тоже можно прописать.

Создается файл на клиенте в \Documents and Settings\All Users\Application Data\Microsoft\Firewall Client 2004.

Подробнее на Technet.
 

Второй вариант, это использовать Ini файл. Например, у нас есть стандартный набор приложений, которые перехватываются и отправляются на прокси. На одном компе есть клиент-банк. И только на нем. Перехват этого приложения должен быть только на этом компе.

Называется этот файл Application.ini 

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

Auto Discovery.

Разберем различные способы включения функции Auto Discovery.

Через DNS.

В DNS надо создать запись типа A с именем WPAD и адресом TMG-сервера.

Через DHCP.

В DHCP нам надо добавить дополнительную опцию.

Нажимаем Add. Вбиваем данные, как на скриншоте (Code 252). 

Теперь новую опцию надо применить к нашему Scope, чтобы юзеры получали её при получении адреса по DHCP.

Теперь можно перейти на клиент, открыть Firewall client и на вкладке Setting переключиться на автоматическое обнаружение. 

Через AD.

Для создания маркера в AD необходимо с MS Download Center загрузить TMG AD Config Tool (а именно AdConfigPack.exe). После установки AdConfigPack.exe на TMG будет распакована утилита Tmgadconfig. Её надо запустить из командной строки (перейдя в директорию установки) 

Tmgadconfig add -default -type winsock  -url 

http://vashtmgserver.domain.ru:8080/wspad.dat

После того, как командная строка выдаст вам, что маркер зарегистрирован успешно, можно удалить запись wpad в DNS, которую мы ранее создавали. Далее переходим на клиент. Вбиваем статический адрес (т.к. через DHCP у нас автоопределение и так работает) и проверяем. 

Проверим, как работает соединение между клиентом и сервером. На TMG  переходим в Monitoring на вкладку Sessions.

Как видим в сессиях пока только сам TMG-сервер. Обратимся с клиента. Откроем браузер и вобьем любой адрес, http://99.99.99.99

Как видим, трафик пошел. Наш клиент 192.168.1.21

А почему Web Proxy? 

Как я ранее указывал, у вас могут быть хоть все три клиента вместе. Но если вы запрашиваете http, https вы всегда будете обрабатываться как Web Proxy.

Но, в тоже время, запрашивается какой-то трафик и как SecureNAT, т.к. наш клиент 192.168.1.21 сконфигурирован и как SecureNAT тоже (посмотрите на скриншоте другие сессии 192.168.1.21).

Можно поставить ICQ на этого клиента и тогда в сессиях мы увидим и Forefront TMG Client (т.е. Firewall Client), если он, конечно, установлен на клиенте.

Продолжение можно скачать здесь.

Публикация Exchange через TMG  https://www.techdays.ru/videos/2814.html

Скачать текстовый вариант можно здесь.

bottom of page