IP-безопасность (IP Security -IPSec) - это механизм и политика шифрования всех пакетов данных, проходящих между компьютерами. IPSec работает на третьем уровне модели OSI и, следовательно, использует пакеты для всего трафика между компьютерами, разделяющими политику IPSec.
IPSec часто рассматривается как один из наилучших способов защиты всего трафика в сетевой среде, и применим для защиты серверов и рабочих станций, как в подверженных высокому риску сценариях доступа к Internet, так и в локальных сетевых конфигурациях, как дополнительный слой безопасности.
Основы IPSec
Как упоминалось ранее, весь трафик между взаимодействующими компьютерами ( инициированный приложением, операционной системой, службами и другими компонентами) шифруется. IPSec помещает свой собственный заголовок в каждый зашифрованный пакет и отправляет пакеты на сервер назначения, где пакеты должны быть расшифрованы. Главное преимущество подобного подхода состоит в том, что в этом случае предотвращается подслушивание и существенно затрудняется неавторизованный доступ.
Очевидно, что IPSec создает дополнительную нагрузку на процессор, эффективно шифруя и дешифруя данные при перемещении их между взаимосвязанными компьютерами. Существуют сетевые интерфейсные карты со встроенной поддержкой IPSec, которые в определенной степени разгружают процессор от упомянутой работы. Такие карты весьма желательно использовать в производственных сетевых окружениях.
Ключевые функции IPSec
IPSec в среде Windows Server 2003 реализует целый набор ключевых функций, которые перечислены ниже.
• Конфиденциальность данных. Вся информация, передаваемая с одного компьютера, оснащенного IPSec, на другой полностью шифруется таким алгоритмом, как 3DES, который эффективно препятствует просмотру важных данных.
• Целостность данных. Целостность пакетов IPSec обеспечивается ESP-заголов-ками, которые проверяют, не подменена ли информация в IPSec-пакетах.
• Запрет повторных передач. IPSec предотвращает повторную передачу захваченных пакетов, с помощью которой, как известно, осуществляется атака типа "повтора" ("replay" attack).
• Аутентификация пакетов. IPSec использует сертификаты или аутентификацию Kerberos для того, чтобы гарантировать, что отправитель IPSec-пакета является авторизованным пользователем.
• Обход дерева трансляции сетевых адресов. Реализация IPSec в Windows Server 2003 теперь позволяет маршрутизацию поверх существующей трансляции сетевых адресов (Network Address Translation - NAT), концепции, рассматриваемой более подробно в последующих разделах.
• Поддержка 2048-битных ключей Диффи-Хеллмана. Реализация IPSec в Windows Server 2003 поддерживает фактически непробиваемые 2048-битные ключи Диффи-Хеллмана, которые гарантируют, что ключ IPSec не может быть легко взломан.
Обход дерева NAT (NAT-T)
IPSec в Windows Server 2003 поддерживает технологию обхода дерева трансляции сетевых адресов (Network Address Translation Transversal - NAT-T). Чтобы разобраться, как работает NAT-T, необходимо четко понимать, как работает NAT.
Трансляция сетевых адресов (Network Address Translation - NAT) была разработана из-за того, что не всем клиентам доступно достаточное количество IP-адресов в сети Internet. В этой связи были установлены диапазоны частных адресов (10.x.x.x, 192.168.x.x и так далее), дабы позволить всем клиентам организации иметь собственный уникальный адрес в пределах их частного пространства (локальной сети). Эти адреса были подобраны таким образом, чтобы не маршрутизироваться через открытые адресные пространства, поэтому понадобился механизм их трансляции в допустимые уникальные общедоступные адреса. 

NAT была разработана специально для исполнения этой роли. Обычно она выполняется на брандмауэрах или маршрутизаторах с тем, чтобы осуществлять трансляцию между частной и общедоступной сетями. RRAS на Windows Server 2003 также реализует функции NAT.
Поскольку конструкция IPSec-пакетов сама по себе не предусматривает трансляцию адресов, IPSec-поток должен пройти через NAT-сервер, так как нет возможности физически маршрутизировать информацию по назначению. Поэтому главным барьером на пути широкого применения IPSec является то обстоятельство, что многие клиенты Internet сегодня адресуются через NAT.
NAT-T, являющееся новым средством в реализации IPSec в Windows Server 2003, в качестве стандарта для Internet было совместно разработано компаниями Microsoft и Cisco Systems. NAT-T работает, исходя из предпосылки, что NAT-сети нуждаются в рассечении и последующей инкапсуляции IPSec-пакетов в UDP-пакеты с нормальными UDP-заголовками. NAT обращается с пакетами UDP безупречно, и они впоследствии маршрутизируются на правильный адрес в рамках внешнего адресного пространства.
NAT-T работает хорошо, но требует, чтобы обе стороны транзакции IPSec понимали протокол, дабы корректно изымать IPSec-пакеты из UDP-инкапсуляции. В новейших клиентах и серверах IPSec технология NAT-T стала реальностью, и служит тому, чтобы существенно расширить сферу применения IPSec.