Почему Cisco AnyConnect — это не просто VPN-клиент

Почему Cisco AnyConnect — это не просто VPN-клиент
На прошлой неделе вышла у меня дискуссия на тему удаленного доступа и различных VPN-клиентов, которые можно поставить на рабочее место сотрудника, отправляемого работать домой. Один коллега отстаивал «патриотическую» позицию, что надо использовать «абонентские пункты» к отечественным шифраторам. Другой настаивал на применении клиентов от зарубежных VPN-решений. Я же придерживался третьей позиции, которая заключается в том, что такое решение не должно быть придатком периметрового шифратора и даже не клиентской частью VPN-шлюза. Даже на производительном компьютере не совсем правильно ставить несколько защитных клиентов, которые будут решать разные задачи — VPN, идентификация/аутентификация, защищенный доступ, оценка соответствия и т.п. Идеально, когда все эти функции, а также иные, объединены в рамках единого клиента, что снижает нагрузку на систему, а также вероятность несовместимости между различным защитным ПО. Одним из таких клиентов является Cisco AnyConnect , о возможностях которого я бы и хотел вкратце рассказать.



Cisco AnyConnect является логичным развитием Cisco VPN Client, который за много лет не только был русифицирован, но и обогатился множеством различных функций и возможностей для защищенного удаленного доступа к корпоративной или облачной инфраструктуре с помощью одного из трех протоколов — TLS, DTLS и IPSec (поддерживается также FlexVPN ). Первый из них является достаточно традиционным для VPN-клиентов и использует TCP как транспортный для своей работы. Однако туннелирование через TLS означает, что приложения, основанные на TCP, будут его дублировать (один раз для организации TLS, второй — для своей работы уже внутри TLS). А протоколы на базе UDP будут… все равно использовать TCP. Это может привести к определенным задержкам, например, для мультимедиа-приложений, которые являются очень популярными при удаленной работе. Решением этой проблемы стала разработка протокола DTLS, который вместо TCP задействует UDP для работы TLS. AnyConnect поддерживает обе реализации TLS — на базе TCP и UDP, что позволяет гибко их использовать в зависимости от условий удаленной работы. Обычно TCP/443 или UDP/443 разрешены на межсетевых экранах или прокси и поэтому использование TLS и DTLS не составляет большой проблемы. Но в ряде случаев может потребоваться применение протокола IPSec, который также поддерживается AnyConnect'ом (IPSec/IKEv2).



А на каких устройствах может терминироваться VPN-туннель, создаваемый AnyConnect? Я просто их перечислю:
  • Межсетевые экраны Cisco ASA 5500 и Cisco ASA 5500-X
  • Многофункциональные защитные устройства Cisco Firepower
  • Виртуальные МСЭ Cisco ASAv и Cisco ASAv в AWS и Azure
  • Маршрутизаторы Cisco ISR 800/1000/4000 и ASR 1000 c сетевой ОС Cisco IOS или Cisco IOS XE
  • Виртуальные маршрутизаторы Cisco CSR 1000v.

Можно отметить, что с очень высокой вероятностью, у вас уже стоит что-то вышеупомянутое на периметре вашей корпоративной или ведомственной сети и вы можете задействовать эти устройства для организации защищенного удаленного доступа (главное, чтобы они справились с возрастающей нагрузкой ). Тем более, что сейчас у Cisco действует бесплатное предложение по получению лицензий AnyConnect.



Интересно, что в отличие от многих других VPN-клиентов, у вас существует множество вариантов инсталляции Cisco AnyConnect на персональный компьютер или мобильное устройство ваших работников. Если вы выдаете им такие устройства из собственных запасов или специально покупаете для сотрудников ноутбуки, то вы можете просто предустановить защитного клиента вместо с остальным ПО, требуемым для удаленной работы. Но что делать для пользователей, которые находятся далеко от корпоративных ИТ-специалистов и не могут предоставить им свой ноутбук для установки нужного ПО? Можно, конечно, задействовать и специализированное ПО типа SMS, SCCM или Microsoft Installer, но у Cisco AnyConnect есть и другой способ установки — при обращении к упомянутому VPN-шлюзу клиент сам скачивается на компьютер пользователя, работающий под управлением Windows, Linux или macOS. Это позволяет быстро развернуть VPN-сеть даже на личных устройствах работников, отправленных на удаленную работу. Мобильные же пользователи могут просто скачать Cisco AnyConnect из Apple AppStore или Google Play.



Но как я уже выше написал, Cisco AnyConnect, это не просто VPN-клиент, это гораздо больше. Но я бы не хотел переписывать здесь документацию на него, а попробовать описать ключевые функции в режиме вопросов и ответов на них (FAQ).

А как я могу гарантировать, что домашний пользователь не подцепит ничего в Интернет?


В AnyConnect есть такая функция — Always-On VPN, которая предотвращает прямой доступ в Интернет, если пользователь не находится в так называемой доверенной сети, которой может быть ваша корпоративная инфраструктура. Но обратите внимание, что данная функция работает очень гибко. Если пользователь находится в корпоративной сети, VPN автоматически отключается, а при ее покидании (например, если пользователь работает с ноутбука, планшета или смартфона), VPN опять включается; причем прозрачно и незаметно для пользователя. Тем самым пользователь всегда будет находиться под защитой корпоративных средств защиты, установленных на периметре, — межсетевого экрана, системы предотвращения вторжений, системы анализа аномалий, прокси и т.п. Многие компании, выдавая удаленным работникам корпоративные устройства, ставят условие использования их только для служебных целей. А чтобы контролировать исполнение этого требования включают в AnyConnect настройки, запрещающие пользователю ходить в Интернет напрямую.



А могу ли я шифровать не весь трафик, а только корпоративный?


Функция Always-On VPN очень полезна для защиты удаленного доступа с выданных вами устройств, но далеко не всегда мы можем заставить пользователя делать то, что хотим мы, особенно если речь идет о его личном компьютере, на котором мы не можем устанавливать свои правила. И пользователь не захочет, чтобы его личный трафик проходил через корпоративный периметр и ваши администраторы следили за тем, какие сайты пользователь посещает во время надомной работы. Как говорится, «сложно говорить о морали с администратором, который видел логи вашего прокси» :-)

В этом случае на Cisco AnyConnect можно включить функцию split tunneling, то есть разделения туннелей. Одни виды трафика, например, до корпоративной инфраструктуры и рабочих облаков трафик будет шифроваться, а трафик до соцсетей или онлайн-кинотеатров будет идти в обычном режиме, без защиты со стороны AnyConnect. Это позволяет учесть интересы и компании и ее работников, вынужденных делить персональный компьютер сотрудника между двумя областями жизни — личной и служебной. Но стоит помнить, что функция split tunneling может снизить защищенность вашей сети, так как пользователь может подцепить какую-нибудь заразу в Интернет, а потом уже по защищенному каналу она попадет в внутрь компании.



А могу ли я шифровать трафик определенных, например, корпоративных, приложений?


Помимо разделения трафика по принципу «доверенный/недоверенный», Cisco AnyConnect поддерживает функцию Per App VPN, которая позволяет шифровать трафик отдельных приложений (даже на мобильных устройствах). Это позволяет шифровать (читай, пускать в корпоративную сеть) только определенные приложения, например, 1C, SAP, Sharepoint, Oracle, а тот же Facebook, LinkedIn или персональный Office365 пускать в обход корпоративного периметра. При этом для разных групп удаленных устройств или пользователей могут быть свои правила безопасности.

А ведь пользователь может подцепить вредонос на домашний компьютер, который затем попадет в корпоративную сеть. Как с этим бороться?


С одной стороны Cisco AnyConnect может проверять наличие у вас системы защиты Cisco AMP for Endpoints и устанавливать ее при отсутствии. Но возможно у пользователя уже установлен собственный антивирус или этот антивирус уже был установлен вами при переводе работников на удаленную работу. Однако все мы знаем, что антивирус сегодня ловит очень мало серьезных угроз и неплохо бы дополнить его более продвинутыми решениями по обнаружению вредоносных программ, аномалий и иных атак. Если в вашей корпоративной инфраструктуре развернуто решение Cisco Stealthwatch, то вы можете легко интегрировать с ним и агенты Cisco AnyConnect, установленные на домашних компьютерах ваших работников. В AnyConnect встроен специальный модуль Network Visibility Module (NVM), который транслирует активность узла в специально разработанный для этой задачи протокол nvzFlow, который дополняет ее дополнительной информацией и передает на Netflow-коллектор , которым может являться как Cisco Stealthwatch Enterprise , так и какой-либо SIEM, например, Splunk. Среди прочего NVM-модуль может передавать следующую информацию, на базе которой можно выявлять аномальную и вредоносную активность на домашнем компьютере, которая осталась незаметной для установленного антивируса:
  • данные сетевой активности в схожем с IPFIX формате
  • идентификатор, адрес и имя устройства
  • имя пользователя
  • тип учетной записи пользователя
  • имена и идентификаторы запускаемых процессов и приложений, включая и данные по их «родителям».

Данный функционал по сути представляет собой облегченную UEBA (User Entity Behaviour Analytics), новую технологию анализа поведения пользователей и приложений/процессов, запускаемых от их имени.

А как мне аутентифицировать пользователей?


Когда пользователи работают на корпоративных компьютерах, то они проходят аутентификацию обычно в Active Directory или ином LDAP-справочнике. Хочется получить такую же возможность и при удаленном доступе и Cisco AnyConnect позволяет ее реализовать за счет поддержки аутентификации по логину/паролю, включая и одноразовые пароли, пользовательским или машинным сертификатам, аппаратным токенам (например, смарт-картам или Yubikey), и даже биометрии и иным способам многофакторной аутентификации. Все эти варианты могут быть легко интегрированы с вашими решениями по управлению идентификацией и аутентификацией с помощью протоколов RADIUS, RSA SecurID, SAML, Kerberos и т.п.



А если я использую облачные платформы, например, Amazon AWS или MS Azure, то как мне защитить доступ домашних пользователей к ним?


У Cisco существует виртуальный маршрутизатор Cisco CSR 1000, который может быть развернут в облачных средах, например, в Amazon AWS или MS Azure, и который может терминировать на себе VPN-туннели, создаваемые Cisco AnyConnect.

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


Давайте попробуем прикинуть, что может плохого или неправильного сделать пользователь на компьютере при удаленной работе? Установить ПО, содержащее уязвимости, или просто не устранять их своевременно с помощью патчей. Не обновлять свой антивирус или вообще его не иметь. Использовать слабые пароли. Установить ПО с вредоносным функционалом. Это то, что может поставить вашу корпоративную сеть под угрозу и никакой VPN вас не защитит от этого. А вот Cisco AnyConnect может за счет функции оценки соответствия, которая позволяет перед предоставлением доступа удаленного компьютера к корпоративным ресурсам проверить все необходимые и требуемые ИТ/ИБ-политиками настройки — наличие патчей, актуальные версии ПО, обновленный антивирус, наличие средств защиты, правильную длину пароля, наличие шифрования жесткого диска, определенные настройки реестра и т.п. Реализуется данная возможность либо с помощью функции Host Scan (для этого нужна Cisco ASA в качестве шлюза удаленного доступа), либо с помощью функции System Scan, которая обеспечивается с помощью системы контроля сетевого доступа Cisco ISE .



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


Нет, не надо. В Cisco AnyConnect встроен специальный роуминговый модуль, который позволяет не только автоматически и прозрачно переподключать VPN при переходе между различными типами подключений (3G/4G, Wi-Fi и т.п.), но и автоматически защищать ваше мобильное (ведь вряд ли вы будете носить с собой стационарный домашний компьютер) устройство с помощью решения Cisco Umbrella, которое будет инспектировать весь DNS-трафик на предмет доступа к фишинговым сайтам, командным серверам, ботнетам и т.п. Подключение к Umbrella потребуется в том случае, если вы разрешили пользователю функцию split tunneling и он может подключаться к различным ресурсам Интернет напрямую, минуя шлюз удаленного доступа.



А ваш AnyConnect не снизит качество видео- и голосовых телеконференций?


Нет. Как я уже описывал выше, Cisco AnyConnect поддерживает протокол DTLS, который специально ориентирован на защиту мультимедиа-трафика.

На самом деле Cisco AnyConnect обладает куда большим количеством возможностей. Он может работать в скрытом режиме, динамически выбирать наиболее оптимальный шлюз удаленного доступа, поддерживает IPv6, имеет встроенный персональный межсетевой экран, мониторится удаленно, обеспечивает контроль доступа, поддерживает RDP и т.п. А еще он русифицирован, чтобы у пользователей не возникало вопросов относительно тех редких сообщений, которые Cisco AnyConnect может выдавать. Так что Cisco AnyConnect — это не просто VPN-клиент, но гораздо более интересное решение для обеспечения защищенного удаленного доступа, который в последние недели начинает набирать популярность из-за пандемии коронавируса, заставляющего работодателей переводить отдельные категории своих работников на удаленку.
Alt text