Настройка Windows Server 2008 в качестве SSL VPN-сервера с удаленным доступом (часть 1)

Опубликовано: 10 Апреля, 2023
Настройка Windows Server 2008 в качестве SSL VPN-сервера с удаленным доступом (часть 1)

Если вы хотите прочитать следующую часть этой серии статей, перейдите к разделу Настройка Windows Server 2008 в качестве SSL VPN-сервера с удаленным доступом (часть 2).

 

Удаленный доступ — одна из сегодняшних «больших вещей». Поскольку все большее число людей нуждается в доступе к информации, хранящейся на рабочих и домашних компьютерах, возможность доступа к этой информации из любого места имеет решающее значение. Прошли те времена, когда вы могли сказать: «Я сообщу вам эту информацию, когда доберусь до своего компьютера». Вам нужна эта информация сейчас, если вы хотите быть конкурентоспособными в сегодняшней бизнес-среде.

В каменный век вычислительной техники для удаленного доступа к информации на вашем компьютере использовалось коммутируемое соединение. Коммутируемые соединения RAS работали по обычным линиям POTS (обычная старая телефонная служба) и имели скорость до 56 кбит/с. Скорость была серьезной проблемой при коммутируемом соединении RAS, но еще большей проблемой была стоимость соединений, когда для доступа требовался междугородний номер.

С появлением и развитием Интернета коммутируемые соединения RAS стали менее актуальными. Причиной этого стало введение соединений виртуальной частной сети (VPN). Соединения VPN обеспечивали такое же соединение «точка-точка», что и соединения удаленного доступа RAS, но делали это быстрее и дешевле, поскольку скорость соединения VPN могла быть такой же быстрой, как и соединение с Интернетом, а стоимость соединения не зависела от скорости. назначения. Единственная стоимость - это интернет-ссылка.

Виртуальная частная сеть

VPN-подключение позволяет компьютеру установить виртуальное и частное подключение к сети через Интернет. Соединение является виртуальным, потому что, когда компьютер устанавливает VPN-подключение через Интернет, компьютер, выполняющий VPN-подключение, действует как узел, напрямую подключенный к сети, как если бы к этой сети был подключен кабель Ethernet. Пользователь может получить доступ ко всем тем же ресурсам, к которым он может подключиться, как если бы он был напрямую подключен к сети. Однако в случае подключения VPN-клиента к VPN-серверу это соединение является виртуальным, поскольку фактическое Ethernet-подключение к сети назначения отсутствует. Соединение является частным, потому что содержимое потока данных, перемещающегося внутри VPN-соединения, зашифровано, поэтому никто через Интернет не может перехватить и прочитать содержимое сообщений, передаваемых по VPN-соединению.

Серверы и клиенты Windows поддерживают VPN-подключения со времен Windows NT и Windows 95. Хотя клиенты и серверы Windows поддерживают VPN-подключения более десяти лет, тип поддержки VPN со временем эволюционировал. Windows Vista с пакетом обновления 1 (SP1) и Windows Server 2008 теперь поддерживают три типа VPN-соединений. Это:

  • РРТР
  • L2TP/IPSec
  • SSTP

PPTP — это протокол туннелирования «точка-точка». PPTP — это самый простой метод, который вы можете использовать для установления VPN-подключения, но, к сожалению, он также и наименее безопасный. Причина, по которой PPTP является наименее безопасным вариантом, заключается в том, что учетные данные пользователя не передаются по защищенному каналу. То есть шифрование VPN-соединения происходит после обмена учетными данными. Несмотря на то, что фактическая учетная информация не передается между VPN-клиентом и сервером, обмен хеш-значениями может быть использован опытными хакерами для получения доступа к VPN-серверам и подключения к корпоративным сетям.

Более безопасным VPN-протоколом является L2TP/IPSec. L2TP/IPSec был совместной разработкой Microsoft и Cisco. L2TP/IPSec более безопасен, чем PPTP, поскольку безопасный сеанс IPSec устанавливается до отправки учетных данных по сети. Хакеры не могут получить доступ к учетным данным пользователя и, следовательно, не могут украсть их, чтобы использовать их позже. Что еще более важно, IPSec обеспечивает взаимную аутентификацию компьютеров, поэтому ненадежные машины не могут подключиться к шлюзу L2TP/IPSec VPN. IPSec обеспечивает взаимную аутентификацию компьютеров, целостность данных, конфиденциальность и неотказуемость. L2TP поддерживает механизмы аутентификации пользователей PPP и EAP, что обеспечивает высокий уровень безопасности входа в систему, поскольку требуется аутентификация как пользователя, так и компьютера.

Windows Vista SP1 и Windows Server 2008 теперь поддерживают новый протокол VPN — протокол защищенного туннелирования сокетов или SSTP. SSTP использует HTTP-соединения с шифрованием SSL для установления VPN-подключения к VPN-шлюзу. SSTP является безопасным, поскольку учетные данные пользователя не отправляются до тех пор, пока не будет установлен безопасный туннель SSL с VPN-шлюзом. SSTP также известен как PPP через SSL, поэтому это означает, что вы можете использовать механизмы аутентификации PPP и EAP, чтобы сделать ваше соединение SSTP более безопасным.

Конфиденциальность — это не безопасность

Здесь я должен отметить, что VPN-соединения больше связаны с конфиденциальностью, чем с безопасностью. Хотя я признаю, что конфиденциальность является основным компонентом безопасной связи, конфиденциальность сама по себе не обеспечивает безопасность. Технологии VPN обеспечивают конфиденциальность общения через Интернет, что не позволяет злоумышленникам прочитать содержимое ваших сообщений. Технологии VPN также позволяют убедиться, что только авторизованные пользователи могут подключаться к сети через VPN-шлюз. Однако конфиденциальность, аутентификация и авторизация не обеспечивают комплексного решения для обеспечения безопасности.

Например, предположим, что у вас есть сотрудник, которому вы предоставили доступ к VPN. Поскольку ваши VPN-протоколы Windows Server 2008 поддерживают аутентификацию пользователей EAP, вы решили развернуть смарт-карты для своих пользователей и использовать протокол L2TP/IPSec VPN. Комбинация смарт-карт и L2TP/IPSec помогает гарантировать, что требуется надежная проверка подлинности машины и пользователя. Ваша смарт-карта и решение L2TP/IPSec работают хорошо, и все довольны.

Все счастливы, пока однажды один из ваших пользователей не подключится к вашему SQL-серверу для доступа к информации о заработной плате и не начнет делиться этой информацией с другими сотрудниками. Что случилось? Разве VPN-соединение не было безопасным? Да, VPN-подключение было безопасным в той мере, в какой оно обеспечивало конфиденциальность, аутентификацию и авторизацию, но одной вещи, которую оно не обеспечивало, был контроль доступа, а контроль доступа является наиболее важным аспектом компьютерной безопасности. На самом деле можно утверждать, что без контроля доступа все остальные меры безопасности имеют относительно небольшую ценность.

Чтобы VPN-решение было по-настоящему безопасным, вам необходимо убедиться, что ваш VPN-шлюз способен осуществлять контроль доступа на основе пользователей/групп, чтобы вы могли реализовать доступ с минимальными привилегиями для пользователей VPN. Усовершенствованные VPN-шлюзы и брандмауэры, такие как брандмауэр ISA, могут выполнять этот тип строгого контроля доступа на основе пользователей/групп в VPN-подключениях. Кроме того, продвинутые брандмауэры, такие как брандмауэр ISA, могут выполнять проверку пакетов и прикладного уровня с отслеживанием состояния соединений VPN-клиентов.

Несмотря на то, что VPN-сервер Windows Server 2008 не обеспечивает контроль доступа пользователей/групп, существуют другие способы реализовать строгий контроль доступа на самих серверах данных, если вы не хотите платить за расширенный брандмауэр и VPN-шлюз. В этой статье мы сосредоточимся только на компоненте VPN-сервера. Если вы хотите узнать больше о брандмауэре ISA и его расширенных возможностях VPN-сервера, посетите сайт www.isaserver.org.

Зачем внедрять новый протокол VPN?

У Microsoft уже было два жизнеспособных протокола VPN, которые позволяли пользователям подключаться к корпоративной сети, так зачем вводить третий? SSTP — это большое преимущество для пользователей Windows VPN, потому что SSTP не имеет проблем с брандмауэрами и устройствами NAT, которые есть у PPTP и L2TP/IPSec. Чтобы PPTP работал через устройство NAT, устройство NAT должно поддерживать PPTP через «редактор NAT» PPTP. Если на устройстве NAT нет редактора NAT для PPTP, соединение PPTP не будет установлено.

L2TP/IPSec имеет проблемы с устройствами NAT и брандмауэрами, потому что брандмауэр должен иметь порт L2TP UDP 1701, открытый для исходящего трафика, порт IPSec IKE, открытый исходящий UDP 500, и порт обхода NAT IPSec, открытый исходящий UDP 4500 (порт L2TP не требуется при использовании NAT-T). Большинство брандмауэров в общественных местах, таких как гостиницы, конференц-центры, рестораны и другие места, разрешают открывать только небольшое количество исходящих портов, таких как HTTP, TCP-порт 80 и HTTPS (SSL), TCP-порт 443. Если вам нужна поддержка для протоколы, отличные от HTTP и SSL, когда вы выходите из офиса, вы играете в кости. Вы можете получить или не получить требуемые порты, необходимые для PPTP или L2TP/IPSec.

Напротив, соединения SSTP VPN туннелируются через SSL с использованием TCP-порта 443. Поскольку все брандмауэры и устройства NAT имеют открытый TCP-порт 443, вы сможете использовать SSTP из любого места. Это значительно упрощает жизнь дорожникам, которым необходимо использовать VPN-подключения для подключения к офису, а также значительно облегчает жизнь корпоративному администратору, которому необходимо поддерживать дорожников, а также сотрудникам службы поддержки. у поставщиков услуг, предоставляющих доступ в Интернет отелям, конференц-центрам и другим общественным местам.

Процесс подключения SSTP

Ниже показано, как работает процесс подключения SSTP:

  1. Клиент SSTP VPN устанавливает TCP-соединение со шлюзом SSTP VPN между случайным исходным портом TCP на клиенте SSTP VPN и TCP-портом 443 на шлюзе SSTP VPN.
  2. Клиент SSTP VPN отправляет сообщение SSL Client-Hello, указывающее, что клиент SSTP VPN хочет установить сеанс SSL со шлюзом SSTP VPN.
  3. Шлюз SSTP VPN отправляет свой сертификат компьютера клиенту SSTP VPN.
  4. Клиент SSTP VPN проверяет сертификат компьютера, проверяя хранилище сертификатов доверенных корневых центров сертификации, чтобы узнать, находится ли в этом хранилище сертификат ЦС, подписавший сертификат сервера. Затем клиент SSTP VPN определяет метод шифрования для сеанса SSL, генерирует ключ сеанса SSL и шифрует его с помощью открытого ключа шлюза SSTP VPN, а затем отправляет зашифрованную форму ключа сеанса SSL шлюзу SSTP VPN.
  5. Шлюз SSTP VPN расшифровывает зашифрованный ключ сеанса SSL с помощью закрытого ключа закрытого ключа сертификата своего компьютера. Вся будущая связь между клиентом SSTP VPN и шлюзом SSTP VPN шифруется с помощью согласованного метода шифрования и сеансового ключа SSL.
  6. Клиент SSTP VPN отправляет сообщение запроса HTTP через SSL (HTTPS) на шлюз SSTP VPN.
  7. Клиент SSTP VPN согласовывает туннель SSTP со шлюзом SSTP VPN.
  8. Клиент SSTP VPN согласовывает соединение PPP с сервером SSTP. Это согласование включает проверку подлинности учетных данных пользователя с использованием стандартных методов проверки подлинности PPP (или даже проверки подлинности EAP) и настройку параметров для трафика Интернет-протокола версии 4 (IPv4) или Интернет-протокола версии 6 (IPv6).
  9. Клиент SSTP начинает отправлять трафик IPv4 или IPv6 по каналу PPP.

Для тех из вас, кто интересуется характеристиками архитектуры протокола VPN, вы можете увидеть это на рисунке ниже. Обратите внимание, что SSTP имеет дополнительный заголовок по сравнению с двумя другими протоколами VPN. Это потому, что в дополнение к заголовку SSTP есть инкапсуляция HTTPS. L2TP и PPTP не имеют заголовков прикладного уровня, инкапсулирующих связь.

Изображение 24653
фигура 1

Мы будем использовать пример простой сети из трех машин, чтобы показать, как работает SSTP. Названия и характеристики трех машин:

Виста:
Виста бизнес-версия
Пакет обновления 1 для Vista
Не член домена

W2008RC0-VPNGW:
Windows Server 2008 Корпоративная редакция
Два сетевых адаптера — внутренний и внешний
Член домена

WIN2008RC-DC:
Windows Server 2008 Корпоративная редакция
Контроллер домена домена MSFIREWALL.ORG
DHCP-сервер
DNS-сервер
Сервер сертификатов (Корпоративный ЦС)

Обратите внимание, что вы должны использовать Vista Service Pack 1 в качестве VPN-клиента. Хотя в прошлом велись дискуссии о поддержке SSTP в Windows XP Service Pack 3, в конечном итоге это может оказаться не так. Недавно я установил релиз-кандидат для Windows XP с пакетом обновления 3 (SP3) на тестовую машину и не обнаружил доказательств поддержки SSTP. Это настоящий позор, так как на портативных компьютерах установлено большое количество Windows XP, и общее мнение в настоящее время заключается в том, что Vista слишком медленная для использования на ноутбуке в настоящее время. Возможно, проблемы с производительностью Vista будут устранены с помощью Vista Service Pack 1.

Конфигурация верхнего уровня примерной сети показана на рисунке ниже.

Изображение 24654
фигура 2

Резюме

В этой статье мы рассмотрели краткую историю удаленного доступа к компьютерным сетям. Затем мы обсудили основные протоколы VPN, поддерживаемые серверами и клиентами Windows, а затем рассмотрели некоторые проблемы безопасности, связанные с традиционными протоколами Windows VPN. Затем мы рассмотрели, как SSTP решает проблемы безопасности и доступности, связанные с PPTP и L2TP/IPSec. Наконец, мы кратко рассмотрели лабораторную сеть, которую будем использовать в следующей статье, посвященной сборке простого решения для клиента и сервера SSTP VPN с использованием Windows Server 2008 и Windows Vista с пакетом обновления 1. До встречи! -Том.