VPN — The DevOps

VPN — The DevOps Электронная цифровая подпись

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

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

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

VPN — The DevOps

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

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

VPN — The DevOps

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

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

VPN — The DevOps

Настройка клиента VPN в Windows (AnyConnect)

Теперь осталось лишь установить корневой сертификат УЦ на клиенте и получить сертификат у него. Корневой сертификат мы уже с вами получали выше. Для его установки на клиент запустим приложение mmc.

VPN — The DevOps

VPN — The DevOps

В открывшемся окне выбираем “Certificates” и нажимаем “Add”.

VPN — The DevOps

VPN — The DevOps

В открывшемся окне указываем путь до корневого сертификата.

VPN — The DevOps

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

После того как все необходимые действия были выполнены перейдем обратно в mcc и правой кнопкой мыши кликнем по директории “Personal” и выберем задачу создания запроса на сертификат:

Читайте также:  RD1016 - База знаний - Сервер документации Рутокен

VPN — The DevOps

На первых двух вкладках нажимаем “Next” , на третьей выбираем “Legacy key”.

VPN — The DevOps

В следующем окне задаем опции заявки и ключа, для которого она будет создана:

VPN — The DevOps

Как минимум: зададим Friendly name – его можно выбрать произвольным, это будет идентификатором вашего пользователя:

VPN — The DevOps

Зададим “Общее имя”, оно должно быть идентификатором вашего пользователя:

VPN — The DevOps

Установим предназначение ключа для подписи:

VPN — The DevOps

VPN — The DevOps

От нас потребуют ввести PIN-код токена:

VPN — The DevOps

Заявку на сертификат сохраним в файл в кодировке Base64 и отправим ее на сторону УЦ. В УЦ подписываем заявку также как и заявку для ASA из инструкции выше.

Выписанный сертификат импортируем в директорию “Personal” на клиенте:

VPN — The DevOps

VPN — The DevOps

VPN — The DevOps

VPN — The DevOps

Устанавливаем приложение Cisco AnyConnect и подключаемся к нашему сетевому экрану через интерфейс input. То есть по адресу 192. 168. 22:

VPN — The DevOps

В процессе подключение, от нас потребуют ввести PIN-код токена:

VPN — The DevOps

Если соединение было установлено, то все шаги были произведены верно:

VPN — The DevOps

Настройка клиента VPN в Linux (OpenConnect)

В первую очередь установим все необходимое программное обеспечение. Для этого загрузим библиотеку PKCS#11 для Rutoken отсюда и установим недостающие пакеты:

sudo apt-get update
sudo apt-get install opensc openconnect libengine-pkcs11-openssl gnutls-bin

Сгенерируем новую ключевую пару на токене и заявку на сертификат для нее:

Импортируем полученную заявку на токен:

pkcs11-tool –module /usr/lib/librtpkcs11ecp. so -l -y cert -w client. cer –id 42

Настроим p11tool, чтобы он мог видеть Рутокен и проверим, что токен распознается.

Вывод должен быть таким:

VPN — The DevOps

Запоминаем URL Рутокена и узнаем путь до сертификатов на нем:

p11tool —list-all-certs “pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co. ;serial=363441ca;token=Rutoken%20ECP%20%3cno%20label%3e”

VPN — The DevOps

Данный URL нужно использовать, чтобы указать путь для сертификата для OpenConnect:

sudo openconnect -c “pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co. ;serial=363441ca;token=Rutoken%20ECP%20%3cno%20label%3e;id=%42;type=cert” 192. 168

Запустите отдельное окно с командной строкой и посмотрите, создался ли интерфейс tun0, если он создался, то настройка прошла успешно:

VPN — The DevOps

Настройка закончена.

Настройка VPN на ASA

VPN — The DevOps

Для профиля “DefaultWEBVPNGroup” установим опцию SSL Enabled и отредактируем его, нажав “Edit”:

VPN — The DevOps

В открывшемся окне установим аутентификацию с помощью сертификата:

VPN — The DevOps

Применим изменения, нажав “Apply”.

VPN — The DevOps

Применяем изменения.

VPN — The DevOps

В открывшемся окне устанавливаем выбранный диапазон адресов на вкладке “Address Pools”:

VPN — The DevOps

Применяем изменения и нажимаем на кнопку “Save” в панели инструментов.

Возможные проблемы

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

Нет соединения

Если не устанавливается соединение, то причин несколько:

  • Включилось ограничение на связь, вшитое в установку программы, так что во время работы не получится соединиться с интернетом.
  • Неправильно введены данные сервера, так что приложение не может к нему подключится.
  • Несовпадение версий. Эту проблему отметила компания Майрософт, что при включении ВПН от циско, на некотором оборудовании перестает подключаться беспроводной интернет. Тут только ждать обновлений от обеих компаний.

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

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

Ошибка инициализации

При запуске программы выскакивает ошибка «failed to initialize connection subsystem». Ошибка возникала на старых версиях программы, но нет гарантий, что она решена.

Есть два способа решения проблемы:

Проблема возникает из-за установки некоторых обновлений, так что можете удалить последние обновления и проблема решится. Или установите обновление MS15-018, оно решает эту проблему.

Как удалить клиент

С удалением возникают проблемы. Иногда удаляется не полностью, из-за чего возникают сбои при повторной установке. Так что тут совет один: заходите в папку с установленной программой и запускайте деинсталлятор оттуда. Если этого не сделали, то придется работать с командной строкой.

Для мака введите в терминал следующие команды:

  • sudo /opt/cisco/anyconnect/bin/websecurity_uninstall.sh
  • sudo /opt/cisco/anyconnect/bin/dart_uninstall.sh
  • sudo /opt/cisco/anyconnect/bin/nvm_uninstall.sh
  • sudo /opt/cisco/anyconnect/bin/umbrella_uninstall.sh
  • sudo /opt/cisco/anyconnect/bin/amp_uninstall.sh

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

Troubleshooting Process

  • Installation and Virtual Adapter Issues
  • Disconnection or Inability to Establish Initial Connection
  • Problems with Passing Traffic
  • AnyConnect Crash Issues
  • Fragmentation / Passing Traffic Issues

Installation and Virtual Adapter Issues

Complete these steps:

  • Obtain the device log file:Windows XP / Windows 2000:Windowssetupapi.log
    Windows Vista:Note: Hidden folders must be made visible in order to see these files.WindowsInfsetupapi.app.log
        WindowsInfsetupapi.dev.log

    If you see errors in the setupapi log file, you can turn up verbosity to 0x2000FFFF.

  • Windows XP / Windows 2000:Windowssetupapi.log
  • Windows Vista:Note: Hidden folders must be made visible in order to see these files.WindowsInfsetupapi.app.log
        WindowsInfsetupapi.dev.log
  • Obtain the PC system information file:From a Command Prompt/DOS box, type this:Windows XP / Windows 2000:winmsd /nfo c:msinfo.nfo

    Windows Vista:msinfo32 /nfo c:msinfo.nfo

    Note: After you type into this prompt, wait. It can take between two to five minutes for the file to complete.
    Obtain a systeminfo file dump from a Command Prompt:Windows XP and Windows Vista:systeminfo c:sysinfo.txt

  • From a Command Prompt/DOS box, type this:Windows XP / Windows 2000:winmsd /nfo c:msinfo.nfo

    Windows Vista:msinfo32 /nfo c:msinfo.nfo

    Note: After you type into this prompt, wait. It can take between two to five minutes for the file to complete.

  • Windows XP / Windows 2000:winmsd /nfo c:msinfo.nfo
  • Windows Vista:msinfo32 /nfo c:msinfo.nfo
  • Obtain a systeminfo file dump from a Command Prompt:Windows XP and Windows Vista:systeminfo c:sysinfo.txt

Refer to AnyConnect: Corrupt Driver Database Issue in order to debug the driver issue.

Disconnection or Inability to Establish Initial Connection

If you experience connection problems with the AnyConnect client, such as disconnections or the inability to establish an initial connection, obtain these files:

  • In order to enable logging on the ASA for auth, WebVPN, Secure Sockets Layer (SSL), and SSL VPN Client (SVC) events, issue these CLI commands:config terminallogging enablelogging timestamplogging class auth console debugginglogging class webvpn console debugginglogging class ssl console debugginglogging class svc console debugging
  • In order to disable logging, issue no logging enable.
  • The Cisco AnyConnect VPN Client log from the Windows Event Viewer of the client PC:Enter:eventvwr.msc /s
    Right-click the Cisco AnyConnect VPN Client log, and select Save Log File as AnyConnect.evt.Note: Always save it as the .evt file format.
  • Enter:eventvwr.msc /s
  • Right-click the Cisco AnyConnect VPN Client log, and select Save Log File as AnyConnect.evt.Note: Always save it as the .evt file format.

was filed to address this feature.

In order to resolve this issue, upgrade the AnyConnect client version to be compatible with the ASA software image.

When you log in the first time to the AnyConnect, the login script does not run. If you disconnect and log in again, then the login script runs fine. This is the expected behavior.

This error is seen when the AnyConnect image is missing from the ASA. Once the image is loaded to the ASA, AnyConnect can connect without any issues to the ASA.

This error can be resolved by disabling Datagram Transport Layer Security (DTLS). Go to Configuration > Remote Access VPN > Network (Client) Access > AnyConnect Connection Profiles and uncheck the Enable DTLS check box. This disables DTLS.

webvpn svc keepalive 30 svc dpd-interval client 80 svc dpd-interval gateway 80

The svc keepalive and svc dpd-interval commands are replaced by the anyconnect keepalive and anyconnect dpd-interval commands respectively in ASA Version 8. 4(1) and later as shown here:

webvpnanyconnect ssl keepalive 15anyconnect dpd-interval client 5anyconnect dpd-interval gateway 5

Problems with Passing Traffic

When problems are detected with passing traffic to the private network with an AnyConnect session through the ASA, complete these data-gathering steps:

  • Check the ASA configuration file for nat statements. If Network Address Translation (NAT) is enabled, these must exempt data that returns to the client as a result of NAT. For example, to NAT exempt (nat 0) the IP addresses from the AnyConnect pool, use this on the CLI:access-list in_nat0_out extended permit ip any 10.136.246.0 255.255.255.0ip local pool IPPool1 10.136.246.1-10.136.246.254 mask 255.252.0.0nat (inside) 0 access-list in_nat0_out
  • Determine if the tunneled default gateway needs to be enabled for the setup. The traditional default gateway is the gateway of last resort for non-decrypted traffic.
    !— Route outside 0 0 is an incorrect statement.
    route outside 0 0 10.145.50.1route inside 0 0 10.0.4.2 tunneledFor example, if the VPN Client needs to access a resource which is not in the routing table of the VPN Gateway, the packet is routed through the standard default gateway. The VPN gateway does not need the complete internal routing table in order to resolve this. The tunneled keyword can be used in this instance.
  • Verify if the AnyConnect traffic is dropped by the inspection policy of the ASA. You could exempt the specific application that is used by AnyConnct client if you implement the Modular Policy Framework of Cisco ASA. For example, you could exempt the skinny protocol with these commands.ASA(config)# policy-map global_policyASA(config-pmap)# class inspection_defaultASA(config-pmap-c)# no inspect skinny

AnyConnect Crash Issues

  • Obtain the Cisco AnyConnect VPN Client log from the Windows Event Viewer of the client PC:Enter:eventvwr.msc /s
    Right-click the Cisco AnyConnect VPN Client log, and select Save Log File As AnyConnect.evt.Note: Always save it as the .evt file format.
  • Enter:eventvwr.msc /s
  • Right-click the Cisco AnyConnect VPN Client log, and select Save Log File As AnyConnect.evt.Note: Always save it as the .evt file format.

Fragmentation / Passing Traffic Issues

Some applications, such as Microsoft Outlook, do not work. However, the tunnel is able to pass other traffic such as small pings.

This can provide clues as to a fragmentation issue in the network. Consumer routers are particularly poor at packet fragmentation and reassembly.

Try a scaling set of pings in order to determine if it fails at a certain size. For example, ping -l 500, ping -l 1000, ping -l 1500, ping -l 2000.

TCP connections hang once connected with AnyConnect.

Uninstall Automatically

The AnyConnect VPN Client uninstalls itself once the connection terminates. The client logs show that keep installed is set to disabled.

AnyConnect uninstalls itself despite that the keep installed option is selected on the Adaptive Security Device Manager (ASDM). In order to resolve this issue, configure the svc keep-installer installed command under group-policy.

Issue Populating the Cluster FQDN

Problem: AnyConnect client is pre-populated with the hostname instead of the cluster Fully Qualified Domain Name (FQDN).

When you have a load-balancing cluster set up for SSL VPN and the client attempts to connect to the cluster, the request is redirected to the node ASA and the client logs in successfully. After some time, when the client tries to connect to the cluster again, the cluster FQDN is not seen in the Connect to entries. Instead, the node ASA entry to which the client has been redirected is seen.

This occurs because the AnyConnect client retains the host name to which it last connected. This behavior is observed and a bug has been filed. For complete details about the bug, refer to Cisco bug ID CSCsz39019. The suggested workaround is to upgrade the Cisco AnyConnect to Version 2.

Backup Server List Configuration

  • Go to the server list tab.
  • Click Add.
  • Type the main server on the Hostname field.
  • Add the backup server below the backup server list on the Host address field. Then, click Add.
  • Click Manage from the Default Group Policy section.
  • Select Advanced and then click SSL VPN Client.
  • Click New. Then, you need to type a name for the Profile and assign the XML file.
  • Connect the client to the session in order to download the XML file.

Зачем использовать Cisco AnyConnect

Стоит сразу сказать, несмотря на то, что Cisco AnyConnect является бесплатным приложением для использования VPN, он не предоставляет доступа ни к каким платным или бесплатным серверам. Cisco Anyconnect используется для подключения к существующим виртуальным частным сетям или VPN.

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

Разберем несколько особенностей, которые позволяют предоставлять удаленный доступ через это приложение:

  • Возможность получения настроек со шлюза или сервера. Если человек работает через свое оборудование и нет возможности отдать его на установку и настройку техническим специалистам, то AnyConnect может получить настройки с сервера при первом подключении.
  • Безопасность конечного устройства. Присутствует возможность настройки проверки компьютера или телефона, на котором установлено. Если устройство не соответствует заданным параметрам безопасности, то подключение не произойдет.
  • «Тихая» работа. Можно сделать так, чтобы приложение не отображалось в активных, а значка в трее не было.
  • Настройка приложения таким образом, чтобы при работе внутри корпоративной сети, не работал интернет. Это повышает безопасность корпоративной сети от взлома или занесения вредоносных программ.

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

Verify

Use this section in order to confirm that your configuration works properly.

Note: The Output Interpreter Tool (registered customers only) supports certain show commands. Use the Output Interpreter Tool in order to view an analysis of show command output.

  • On an Ubuntu OS 16.04.1 LTS,  connect Anyconnect via GUI
  • Once successfully connected, Anyconnect client details can be verified by navigating to Statistics tab in the Anyconnect GUI client
Оцените статью
ЭЦП Эксперт
Добавить комментарий