Как при помощи токена сделать удаленный доступ более безопасным?

uhhnvzhtvwpdue0jq-ej2nnvg_k.jpeg

В 2016 году компания Avast решила провести эксперимент над участниками выставки Mobile World Congress. Сотрудники компании создали три открытые Wi-Fi точки в аэропорту возле стенда для регистрации посетителей выставки и назвали их стандартными именами «Starbucks», «MWC Free WiFi» и «Airport_Free_Wifi_AENA». За 4 часа к этим точкам подключились 2000 человек.


В результате эксперимента был составлен доклад, в котором сотрудники компании Avast проанализировали трафик всех подключившихся к открытым Wi-Fi точкам людей. Также была раскрыта личная информация 63% подключившихся: логины, пароли, адреса электронной почты и т.п. Если бы не представленный на выставке доклад, то участники эксперимента никогда бы и не поняли того, что кто-то получил доступ к их данным.


Мы подключаемся к сети своей компании из дома, гостиницы или кафе и даже не понимаем, какой ущерб можем ей нанести.


Согласно статистическим исследованиям, более 40 процентов сотрудников компаний работают удаленно хотя бы один день в неделю.


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


Факторы угроз


Удаленное рабочее место пользователя порождает, в сравнении с локальным офисным рабочим местом, три дополнительных фактора угроз:


  1. Удаленный пользователь находится вне зоны физического контроля организации. Требуется доказательство того, что к корпоративному ресурсу подключается именно сотрудник компании, а не злоумышленник.
  2. Данные удаленного пользователя распространяются по каналам, которые находятся вне зоны контроля организации. Эти данные подвержены перехвату, несанкционированному изменению и «подмешиванию» постороннего трафика.
  3. Для удаленного рабочего места сама компания не может обеспечить физическую безопасность. Также используемый компьютер может не соответствовать требованиям по конфигурации


Поэтому при организации удаленного доступа должны соблюдаться три основных принципа информационной безопасности:


  • конфиденциальность (важная информация должна быть доступна только ограниченному кругу лиц);
  • целостность (изменения информации, приводящие к ее потере или искажению, должны быть запрещены);
  • доступность (информация должна быть доступна авторизованным пользователям, когда она им необходима).


Как защитить удаленный доступ?


Для организации работы удаленных сотрудников можно использовать следующие механизмы защиты:


  • надежное средство аутентификации пользователей (пароли, аппаратные средства, биометрические данные и др.);
  • систему управления доступом (централизованное управление доступом к IT-ресурсам компании);
  • средство организации VPN (аппаратные устройства, программные решения, расширения брандмауэра и др.);
  • средство противостояния атакам (защита внутренней сети и сотрудников от атак).


Мы расскажем об одном из механизмов защиты — это VPN.


Зачем нужен VPN?


VPN-подключение обеспечивает более безопасное соединение с корпоративной сетью и Интернетом.


alw-w2avqi6yvojikf7oi02dez0.jpeg

Сферы применения VPN:


  • выход в Интернет;
  • доступ в корпоративную сеть снаружи;
  • объединение компонентов корпоративной сети.


Сетевая инфраструктура вашей компании может быть подготовлена к использованию VPN с помощью программного или аппаратного обеспечения.


Существует большое количество платных и бесплатных сервисов VPN.


Такие сервисы в основном работают на 4 протоколах:


  1. IPSec, функционирующий в транспортном и туннельном режимах. Шифрование сообщений в пакете данных с помощью транспортного режима называется полезной нагрузкой, а зашифровка всего пакета — туннелированием.
  2. PPTP — это туннельный протокол «точка-точка», использующий туннельный метод, в котором данные сохраняются в виде PPP-пакетов. Они, в свою очередь, помещаются в IP-пакеты и передаются до места назначения.
  3. L2TP — протокол туннелирования второго уровня, работающий на двух основных узлах: концентраторе доступа L2TP (LAC), сетевом сервере L2TP (LNS). LAC представляет собой устройство, которое завершает вызов, в то время, как LNS аутентифицирует PPP-пакеты.
  4. TLS и SSL — криптографические протоколы, использующие сочетание аутентификации и шифрования для обмена данными между сервером и клиентом.


ZenMate VPN Unlimited CyberGhost VPN TunnelBear HideGuard VPN Opera VPN
Тип лицензии пробная/бесплатная пробная (7 дней) пробная/бесплатная пробная/бесплатная бесплатная бесплатная
IPSec + + + +
PPTP + + + + +
L2TP + + + +
HTTPS +
Стоимость (в месяц) 4.99 $ 4.17 $ 4.99 $ 4.99 $ 0 $ 0 $


Также существуют сервисы VPN для корпоративного использования. Один из самых известных — это OpenVPN. Он является безопасным и недорогим сервисом.


Его плюсами являются:


  1. Безопасность. Использование нескольких криптографических протоколов (HMAC, 3DES, AES, RSA) и 2048-битного ключа позволяют осуществить надежное шифрование всех данных.
  2. Гибкие возможности OpenVPN позволяют запускать соединение через Proxy/Socks, по различным протоколам и при принудительной блокировке DHCP-протокола, а также сквозь файрволы.
  3. Поддерживается большинством устройств, в том числе на платформах Apple iOS и Google Android.


Можно ли организовать VPN подключения без использования сторонних программ?


Иногда нет смысла использовать сторонние сервисы, если аналогичные возможности встроены в операционную систему.


Мы хотим продемонстрировать, как настроить безопасное VPN-подключение по протоколу SSTP, используя стандартные возможности Windows.


Защита VPN-соединения в таком случае выполняется посредством механизмов шифрования трафика с помощью цифрового сертификата (SSL), предоставляемого со стороны VPN-сервера. Программное обеспечение клиентской операционной системы в процессе установки VPN-соединения выполняет проверку сертификата VPN-сервера, в частности, проверяет не отозван ли сертификат сервера, а также проверяется стоит ли доверять корневому сертификату Центра сертификации, выдавшего сертификат для VPN-сервера. Именно поэтому одним из требований для успешной работы VPN-подключения по протоколу SSTP, является возможность автоматического обновления списка корневых сертификатов через Интернет.


Протокол SSTP является современным и безопасным протоколом. Дополнительным преимуществом является его возможность работы через повсеместно доступный порт протокола HTTPS (TCP 443), используемый для обычного веб-браузинга, то есть VPN-соединение по протоколу SSTP будет работать практически через любое Интернет-соединение.


VPN и двухфакторная аутентификация


Само по себе VPN-соединение является зашифрованным. А вот использование логина и пароля для аутентификации в VPN совсем небезопасно. Но есть выход — это двухфакторная аутентификация. Она позволяет пользователю подтвердить свою личность двумя способами. Желательно использовать для ее настройки аппаратное средство (токен или смарт-карту). Тогда при установке VPN-соединения пользователю потребуется не пароль, а само устройство и его PIN-код.


Основное преимущество аппаратного устройства при использовании VPN — это уникальность закрытого ключа. Она обусловлена тем, что закрытый ключ с устройства нельзя скопировать и воспроизвести. Ведь если средство аутентификации не обладает уникальностью, то нельзя быть уверенным в том, что пользователь, получивший доступ, является тем самым пользователем, которому этот доступ был назначен.


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


Настройка VPN-сервера


Настройку VPN-подключения мы начнем с развертывания простого VPN-сервера на базе Windows Server 2012 R2.


Такой сервер, установленный на стандартном оборудовании, вполне можно использовать для небольшой офисной сети с потребностью организации удаленного подключения для нескольких десятков сотрудников (30–50 человек).


Конфигурация VPN-сервера


Откроем Диспетчер серверов и щелкнем по ссылке Добавить роли и компоненты.


Выберем роль Удаленный доступ.


tvbsqaevlbyzetjo6wkkuy6mdnc.jpeg

Выберем службу ролей DirectAccess и VPN (RAS).


bscvrzmj8ppgyy2urgyqxthfsto.jpeg

Нажмем на кнопку [Установить]. В результате запустится процесс установки роли удаленного доступа.


dqgn6kitrqwlozh4czpkpn7vbfq.jpeg

В окне мастера начальной настройки удаленного доступа выберем Развернуть только VPN.


После этого добавим сервер. В окне Маршрутизация и удаленный доступ выберем пункт меню Действие и подпункт Добавить сервер. Далее подтвердим добавление.


Щелкнем по названию добавленного сервера правой кнопкой мыши и выберем Настроить и включить маршрутизацию и удаленный доступ.


dx2nj4cqdbwkdk1jkdzbgrct2ye.jpeg

Выберем пункт Особая конфигурация.


05fni_rteske939wjr-rgauot1u.jpeg

В качестве настраиваемой конфигурации укажем Доступ к виртуальной частной сети (VPN).


p1mzcolkwqpzclgvgo56xfz3vjo.jpeg

Запустим службу, для этого нажмем на кнопку [Запустить службу].


deig1t__0qccs2z1yy8sszxyuhe.jpeg

Сервер почти готов.


Для примера мы используем самый простой и очевидный способ — зададим статистический пул адресов для 5 пользователей.


Откроем свойства добавленного сервера.


twlsiitm8jght6dgih24mz6encu.jpeg

Выберем пункт Статистический пул адресов и нажмем на кнопку [Добавить].


В окне Новый диапазон IPv4-адресов укажем начальный и конечный IP-адрес.


2dl-mdf5099wuei0h3_wrqmmyrq.jpeg

Нажмем на кнопку [Применить]


hwnvh_swl04xkorc0-r0r2ss8ra.jpeg

Роль удаленного доступа сконфигурирована, теперь откроем порты в брандмауэре.


Открытие портов брандмауэра


Для протокола TCP откроем порты 1723 и 443.


b_qopfefjtq_ujvyawj9pbkwthm.jpeg

Для протокола UDP откроем порты 1701, 500 и 50.


9c4eiifyxzjhemydrajp0b_1kai.jpeg

На следующем этапе настроим локальную политику безопасности.


Настройка локальной политики безопасности


Откроем список локальных политик безопасности и выберем пункт Назначение прав пользователя.


80xadkue7q6jg9g6sivigc9jqh0.jpeg

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


Нажмите на кнопку [Добавить пользователя или группу].


axbbqwkchtii1ttxu8wo7wanj_a.jpeg

Найдите имя подразделения Пользователи домена и добавьте его.


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


Настройка доступа для конкретного пользователя


Откройте Диспетчер серверов, выберите пункт Средства и подпункт Пользователи и компьютеры Active Directory.


Найдите имя необходимого пользователя, зайдите в его Свойства, на вкладке Входящие звонки выберите настройку Разрешить доступ. Нажмите на кнопку [Применить].


inyxstkhcbzie6eesqgkf6qjzue.png

И напоследок проверим разрешен ли удаленный доступ в свойствах системы.


Для этого откроем свойства системы, выберем пункт Настройка удаленного доступа и установим переключатель Разрешить удаленные подключения к этому компьютеру.


phwlfm0k4yzurr0eb8gcdkmy5se.jpeg

Вот и все, настройка сервера на этом завершена. Теперь настроим VPN-соединение на компьютере, который будет использоваться для удаленного доступа.


Настройка VPN-соединения


Настройка VPN на компьютере с Windows 10 предельно проста. Для ее реализации понадобятся данные учетной записи (логин, пароль), IP-адрес сервера и соединение с Интернетом. Для организации аппаратной двухфакторной аутентификации понадобится токен.


Никаких дополнительных программ устанавливать не нужно, в самой Windows уже все есть.


Давай приступим к настройке. В качестве примера аппаратного средства я буду использовать устройство для безопасного хранения ключей и сертификатов Рутокен ЭЦП PKI.


nrcrm8wi6a_zgvgfkh5e4zmw7rs.jpeg

Для настройки подключения нам понадобится сертификат, который содержит политики Smart Card Logon и Client Authentication.


Процесс создания такого сертификата мы ранее уже описывали. Ссылка на описание здесь.


Откроем окно Центр управления сетями и общим доступом. Щелкнем по ссылке Создание и настройка нового подключения или сети.


bd60cfbxikcczdiusptjfghm1t8.jpeg

Откроется окно Настройка подключения или сети. Выберем пункт Подключение к рабочему месту и нажмем на кнопку [Далее].


Щелкнем по ссылке Использовать мое подключение к Интернету (VPN).


4lt66koan-hnkbqbqsitif0snfk.jpeg

В поле Адрес в Интернете укажем данные VPN-сервера.


В поле Имя объекта назначения укажем название VPN-подключение.


Установим флажок Использовать смарт-карту и нажмем на кнопку Создать.


ujkt8cmyrggvoaszsslt5srs9s0.jpeg

VPN-подключение создано. Но нам необходимо изменить его параметры.


Снова откроем окно Центр управления сетями и общим доступом и щелкнем по ссылке Изменение параметров адаптера.


nhzrvn1mag6uc1_4lffdiauh-qa.jpeg

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


uvulv8aqxyn1k0hst-wg-u8cjpo.jpeg

Перейдем на вкладку Безопасность и выберем следующие параметры.


c6b9buavtycbslovdmpw8yovtiy.jpeg

Таких настроек VPN-подключения достаточно для того, чтобы успешно подключиться по безопасному VPN-протоколу к указанной сети. Однако после того, как VPN-подключение выполнено, весь сетевой трафик с компьютера будет по умолчанию направляться на шлюз указанной сети. Это может привести к тому, что во время подключения к VPN работа с ресурсами Интернета будет не возможна. Для того, чтобы исключить данную проблему перейдем на вкладку Сеть, щелкнем по строке IP версии 4 (TCP/IPv4) и нажмем на кнопку Свойства.


una63clr1pbd2edzjx3bthvanku.jpeg

На странице со свойствами IP версии 4 нажмем на кнопку [Дополнительно].


Снимем флажок Использовать основной шлюз в удаленной сети.


zcg9mp68sev5pidgelcaxn7bjau.jpeg

Подтвердим все внесенные изменения. Процесс настройки завершен.


Теперь давайте проверим подключение.


В панели задач на рабочем столе щелкнем по значку Доступ к Интернету и выберем созданное VPN-подключение. Откроется окно Параметры.


Щелкнем по названию VPN-подключения и нажмем на кнопку Подключиться.


luu9hf3gvmmqoktzncoaa5qaqhq.jpeg

Введите PIN-код токена и нажмите на кнопку [ОК].


hiqgbgdqm_8fobdid2ftvkdonmo.jpeg

В результате созданное VPN-соединение будет установлено.


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


dzqofmxwkcizvlx2s71va2sjnyc.jpeg

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


Резюмируем


Когда VPN-соединение установлено, весь трафик начинает проходить через VPN-сервер.


Надежность защиты VPN-трафика заключается в том, что даже если злоумышленники каким-либо образом перехватят передаваемые данные, то им все равно не удастся ими воспользоваться, так как данные зашифрованы.


А если установить ещё и специальные приложения для контроля за трафиком и настроить их, то можно будет успешно фильтровать трафик. Например, автоматически проверять его на наличие вирусов.


Надеюсь нам удалось убедить вас, что VPN это просто, доступно, а главное безопасно!


© Habrahabr.ru