Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр Электронная цифровая подпись
Содержание
  1. Описание системы
  2. Почему двухфакторная аутентификация в домене по токену с pin-кодом безопаснее обычной парольной схемы?
  3. Безопасность систем дбо
  4. Благодарности
  5. Генерация ключевой пары и сертификата
  6. Двухфакторная аутентификация
  7. Для клиента на linux
  8. Для клиентов windows и linux (более универсальный способ)
  9. Добавление нового клиента
  10. Защита информации в системах эдо
  11. Импорт корневого сертификата для аутентификации
  12. Инициализация рутокен эцп клиента
  13. Как работать с эцп без флешки?
  14. Лицензирование доступа
  15. Настройка ppp
  16. Настройка vpn соединения
  17. Настройка двухфакторной аутентификации в домене windows
  18. Настройка клиента l2tpipsecvpn
  19. Настройка клиента openvpn
  20. Настройка клиента ubuntu
  21. Настройка клиента windows
  22. Настройка сервера
  23. Настройка сервера openvpn
  24. Настройка системы
  25. Настройка уц
  26. Недостатки, куда же без них
  27. Подключение
  28. Подключение к сети
  29. Преимущества входа в домен по токену
  30. Принцип работы
  31. Проблематика
  32. Регистрация и установка программного решения cryptopro
  33. Рутокен эцп и open source
  34. Способы получения электронной цифровой подписи на пк
  35. Токен и смарт-карта
  36. Установка strongswan (ipsec)
  37. Установка xl2tp
  38. Установка клиента l2tpipsecvpn
  39. Установка по для работы с токенами
  40. Установка пропатченного ppp
  41. Установка эцп с флеши на пк
  42. Экономия
  43. Заключение

Описание системы

VPN будет работать по схеме IPSec L2TP PPP. Протокол Point-to-Point Protocol (PPP) работает на канальном уровне модели OSI и обеспечивает аутентификацию пользователя и шифрование передаваемых данных. Его данные инкапсулируются в данные протокола L2TP, который собственно обеспечивает создание соединения в VPN сети, но не обеспечивает аутентификацию и шифрование.

Данные L2TP инкапсулируются в протокол IPSec, который тоже обеспечивает аутентификацию и шифрование, но в отличие от протокола PPP аутентификация и шифрование происходит на уровне устройств, а не на уровне пользователей.

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

Аутентификация пользователя с помощью смарт-карт будет производиться на уровне протокола PPP с помощью протокола EAP-TLS.

Более подробную информации о работе данной схемы можно найти в этой статье.

Почему двухфакторная аутентификация в домене по токену с pin-кодом безопаснее обычной парольной схемы?

PIN-код привязан к определенному устройству, в нашем случае к токену. Знание PIN-кода само по себе ничего не дает.

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

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

Токен является уникальным некопируемым физическим объектом. Им обладает легитимный пользователь. Двухфакторную аутентификацию по токену можно обойти только тогда, когда администратор намеренно или по недосмотру оставил для этого «лазейки» в системе.

Безопасность систем дбо

Надежность и удобство продуктов Рутокен проверены в реальной эксплуатации сотнями банков России. Более 250 российских банков уже используют Рутокен в своих системах дистанционного банковского обслуживания (ДБО).

Рутокен комплексно решает задачу применения электронной подписи и двухфакторной аутентификации в ДБО, что помогает:

  • Сохранить удобство использования системы ДБО для клиентов банка.
  • Снизить затраты банка на внедрение и использование электронной подписи. На протяжении всего цикла сотрудничества мы консультируем разработчиков по любым вопросам, связанным с внедрением и эксплуатацией продукции Рутокен.
  • Исключить риск хищений у клиентов.
  • Повысить узнаваемость бренда. При заказе партий токенов мы наносим на устройства логотип и создаем индивидуальную упаковку.
  • Упростить прохождение аудита безопасности банка. Соответствует требованиям защиты информации (положение № 382-П) Центрального Банка и ФСБ.

Благодарности

Хотелось бы ещё раз поблагодарить наших коллег Василия Шокова и Александра Смирнова за совместно проделанную работу для упрощения создания VPN соединений для клиентов Linux.

Генерация ключевой пары и сертификата

Для успешной аутентификации клиенту необходимо:

  1. сгенерировать ключевую пару;
  2. иметь корневой сертификат УЦ;
  3. иметь сертификат для своей ключевой пары, подписанный корневым УЦ.

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

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

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

Давайте вспомним, что такое аутентификация. В нашем случае это процесс подтверждения подлинности субъекта или объекта. Аутентификация пользователя — это процесс подтверждения подлинности пользователя.

А двухфакторная аутентификация — это такая аутентификация, в которой необходимо использовать не менее двух различных способов для подтверждения своей личности.

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

Для клиента на linux

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

#идентификатор ключа (параметр --id) можно заменить на любой другой.
pkcs11-tool --module /usr/lib/librtpkcs11ecp.so --keypairgen --key-type rsa:2048 -l --id 45

openssl
OpenSSL> engine dynamic -pre SO_PATH:/usr/lib/x86_64-linux-gnu/engines-1.1/pkcs11.so -pre ID:pkcs11 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:librtpkcs11ecp.so
...
OpenSSL> req -engine pkcs11 -new -key 45 -keyform engine -out client.req -subj "/C=RU/CN=client"

Появившуюся заявку client.req отправьте в УЦ. После того как вы получите сертификат для своей ключевой пары, запишите его на токен с тем же id, что и у ключа:

pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -l -y cert -w ./client.pem --id  45

Для клиентов windows и linux (более универсальный способ)

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

Перед генерацией запросов и импортом сертификатов необходимо добавить корневой сертификат VPN сети в список доверенных. Для этого откроем его и в открывшемся окне выберем опцию “Установить сертификат”:

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

Установим сертификат в хранилище доверенных корневых сертификатов УЦ:

После всех этих действий соглашаемся со всеми дальнейшими пунктами. Теперь система настроена.

Создадим файл cert.tmp со следующим содержимым:

[NewRequest]
Subject = "CN=client"
KeyLength = 2048
KeySpec = "AT_KEYEXCHANGE" 
ProviderName = "Microsoft Base Smart Card Crypto Provider"
KeyUsage = "CERT_KEY_ENCIPHERMENT_KEY_USAGE"
KeyUsageProperty = "NCRYPT_ALLOW_DECRYPT_FLAG"
RequestType = PKCS10
SMIME = FALSE

После этого сгенерируем ключевую пару и создадим заявку на сертификат. Для этого откроем powershell и введём следующую команду:

certreq.exe -new -pin $PIN .cert.tmp .client.req

Отправьте созданную заявку client.req в ваш УЦ и дождитесь получения сертификата client.pem. Его можно записать на токен и добавить в хранилище сертификатов Windows с помощью следующей команды:

certreq.exe -accept .client.pem

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

Добавление нового клиента

Чтобы добавить нового клиента в сеть, необходимо записать его сертификат в список доверенных для данного клиента.

Если пользователь хочет стать участником VPN сети, он создаёт ключевую пару и заявку на сертификат для данного клиента. Если пользователь доверенный, то данную заявку можно подписать, а получившийся сертификат записать в директорию сертификатов:

sudo openssl x509 -req -in client.req -CAkey /etc/ppp/keys/ca.pem -CA /etc/ppp/certs/ca.pem -out /etc/ppp/certs/client.pem -CAcreateserial

Добавим строчку в файл /etc/ppp/eaptls-server для сопоставления имени клиента и его сертификата:

"client" * /etc/ppp/certs/client.pem /etc/ppp/certs/server.pem /etc/ppp/certs/ca.pem /etc/ppp/keys/server.pem *

NOTEЧтобы не запутаться, лучше чтобы: Common Name, имя файла с сертификатом и имя пользователя были уникальными.

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

Защита информации в системах эдо

Рутокен Плагин создан для электронной подписи и защиты информации внутри систем электронного документооборота. Интегрирован в самые популярные системы электронного документооборота (ЭДО).

Мы работаем в системе «Честный Знак», в Личных кабинетах ЮЛ ФНС и ИП ФНС, в медицинских системах, в системе обмена электронными больничными листами и др.

Чтобы системы ЭДО смогли сформировать электронную подпись, нужен инструмент для ее формирования — для веб-сервисов отлично подойдет Рутокен Плагин.

Для интеграции в системы ЭДО есть API-библиотеки для формирования электронной подписи и шифрования документов на неизвлекаемых ключах. Рутокен Плагин может использоваться для защиты информации в соответствии с требованиями регуляторов и законодательства.

Импорт корневого сертификата для аутентификации

Скачаем корневой сертификат сервера и установим в систему. Для этого откроем его и в открывшемся окне выберем опцию “Установить сертификат”:

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

Установим сертификат в хранилище доверенных корневых сертификатов УЦ:

После всех этих действий соглашаемся со всеми дальнейшими пунктами. Теперь система настроена.

Инициализация рутокен эцп клиента


Теперь можно приступить к тому, ради чего все затевалось — инициализации Рутокен ЭЦП для авторизации клиента в VPN.

Читайте также:  Получение электронной подписи в Москве

Как работать с эцп без флешки?

Выдача ЭЦП осуществляется на флеш-накопителе. Но нужно учитывать, что это вещь не вечная: может потеряться или сломаться. Пользоваться электронной подписью получится и без флешки. Достаточно выполнить следующие действия на компьютере:

Перед тем как установить личный сертификат с носителя, где находится Рутокен, следует удостовериться в его наличии в контейнере. Сделать это довольно просто, если следовать инструкции.

Удостовериться в наличии сертификата в контейнере можно путем нажатия соответствующей кнопки во вкладке «Сервис». Тут понадобится выбрать подходящий вариант. Принцип прост: достаточно кликнуть дважды левой кнопкой мыши.

При создании контейнера предлагается создать новый пароль. Его понадобится ввести дважды в соответствующие строки. Однако это не является обязательным действием во время установки Рутокена.

По завершении копирования сертификата в реестр понадобится установить его в раздел, который именуется «Личное». Как это сделать: во вкладке под названием «Сервис» выбирается пункт «Просмотреть сертификаты в контейнере». На дисплей выводится окно, где предлагается нажать кнопку «Обзор». Понадобится обозначить, какой именно сертификат интересует, и подтвердить это путем нажатия кнопки «ОК».

В окне будет обозначена информация в отношении действующего сертификата ЭЦП. Именно тут понадобится нажать на кнопку, которая называется «Установить».

Затем все еще проще: следует нажать кнопку «Да», потом «ОК», чтобы подтвердить совершаемые действия.

На этом завершается процедура установки ЭЦП на компьютер. Теперь можно совершать любые желаемые действия без ограничений: посещать торговые площадки, госпортал либо же работать с подписью без привлечения флеш-накопителя.

Чтобы проверить, удалось ли установить ЭЦП, надлежит совершить попытку зайти в ЛК требуемого интернет-сервиса по ключу. Достаточно совершить любое обращение к электронной подписи без вставленной в ПК флешки. Результатом станет вывод на экран данных о сертификате ЭЦП.

Лицензирование доступа

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

Использование в веб-сервисе двухфакторной аутентификации посредством USB-токена или смарт-карты позволяет существенно затруднить доступ к одному аккаунту нескольких лиц, так как для этого им нужно будет постоянно обмениваться самим устройством.

Настройка ppp

UPD: предложенные нами изменения были приняты начиная с версии pppd 2.4.9. Поэтому пакет pppd можно взять из репозиториев.

Желательно поставить последнюю версию pppd. Для этого выполним следующую последовательность команд:

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

Для настройки VPN соединения перейдите в панель управления и выберите пункт для создания нового соединения.

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

В следующем окне выберете подключение по VPN:

и введите данные VPN соединения, а также укажите опцию для использования смарт-карты:

На этом настройка не закончена. Осталось указать общий ключ для протокола IPsec, для этого перейдём на вкладку “Настройки сетевых подключений” и затем перейдём на вкладку “Свойства для данного соединения”:

В открывшемся окне перейдём на вкладку “Безопасность”, укажем в качестве типа сети “Сеть L2TP/IPsec” и выберем “Дополнительные параметры”:

В открывшемся окне укажем общий ключ IPsec:
Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Настройка двухфакторной аутентификации в домене windows

Теоретическая часть:

Служба каталога Active Directory поддерживает возможность аутентификации с помощью смарт-карты и токена, начиная с Windows 2000. Она заложена в расширении PKINIT (public key initialization — инициализация открытого ключа) для протокола Kerberos RFC 4556 .

Протокол Kerberos был специально разработан для того, чтобы обеспечить надежную аутентификацию пользователей. Он может использовать централизованное хранение аутентификационных данных и является основой для построения механизмов Single Sing-On. Протокол основан на ключевой сущности Ticket (билет).

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Ticket (билет) является зашифрованным пакетом данных, который выдается доверенным центром аутентификации, в терминах протокола Kerberos — Key Distribution Center (KDC, центр распределения ключей).

Когда пользователь выполняет первичную аутентификацию после успешного подтверждения его подлинности, KDC выдает первичное удостоверение пользователя для доступа к сетевым ресурсам — Ticket Granting Ticket (TGT).

В дальнейшем при обращении к отдельным ресурсам сети, пользователь, предъявляет TGT, получает от KDC удостоверение для доступа к конкретному сетевому ресурсу — Ticket Granting Service (TGS).

Одним из преимуществ протокола Kerberos, обеспечивающим высокий уровень безопасности, является то, что при любых взаимодействиях не передаются ни пароли, ни значения хеша паролей в открытом виде.

Расширение PKINIT позволяет использовать двухфакторную аутентификацию по токенам или смарт-картам на этапе предаутентификации Kerberos.

Вход в систему может быть обеспечен, как при использовании службы каталога домена, так и локальной службы каталога. TGT создается на основе электронной подписи, которая вычисляется на смарт-карте или токене.

Все контроллеры доменов должны иметь установленный сертификат Domain Controller Authentication, или Kerberos Authentication, т. к. реализуется процесс взаимной аутентификации клиента и сервера.

Практика:

Приступим к настройке.

Сделаем так, чтобы в домен под вашей учетной записью можно было зайти только по предъявлению токена и зная PIN-код.

Для демонстрации мы будем использовать Рутокен ЭЦП PKI производства компании «Актив».

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

1 Этап — Настройка домена Первым делом установим службы сертификации.

Дисклеймер.

Эта статья не является туториалом по внедрению корпоративного PKI. Вопросы проектирования, разворачивания и грамотного применения PKI тут не рассматриваются ввиду необъятности этой темы.

Все контроллеры доменов и все клиентские компьютеры в рамках леса, где осуществляется внедрение такого решения, обязательно должны доверять корневому Удостоверяющему Центру (Центру Сертификации).

Задача центра сертификации — подтверждать подлинность ключей шифрования с помощью сертификатов электронной подписи.

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

Удостоверяющий центр, выдающий сертификаты для использования смарт-карт или токенов, должен быть помещен в хранилище NT Authority.

Зайдите в Диспетчер сервера и выберите «Добавить роли и компоненты».

При добавлении ролей сервера выберите «Службы сертификации Active Directory» (Microsoft категорически рекомендует не делать это на контроллере домена, дабы не огрести проблем с производительностью). В открывшемся окне выберите «Добавить компоненты» и выберите пункт «Центр сертификации».

На странице для подтверждения установки компонентов нажмите «Установить».

2 Этап — Настройка входа в домен с помощью токена

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

Сертификат для смарт-карт или токенов также должен содержать UPN пользователя (суффикс имени участника-пользователя). По умолчанию суффиксом имени участника-пользователя для учетной записи является DNS-имя домена, которое содержит учетную запись пользователя.

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

В сертификате должен быть указан путь к точке распространения списка отзыва сертификатов (CRL distribution point). Такой файл содержит список сертификатов с указанием серийного номера сертификата, даты отзыва и причины отзыва. Он используется для передачи сведений об отозванных сертификатах пользователям, компьютерам и приложениям, пытающимся проверить подлинность сертификата.

Настроим установленные службы сертификации. В правом верхнем углу нажмите на желтый треугольник с восклицательным знаком и щелкните «Настроить службы сертификации…».

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

В окне «Учетные данные» выберите необходимые учетные данные пользователя для настройки роли. Выберите «Центр сертификации».

Выберите «ЦС предприятия».

ЦС предприятия интегрированы с AD. Они публикуют сертификаты и списки отзыва сертификатов в AD.

Укажите тип «Корневой ЦС».

На следующем этапе выберите «Создать новый закрытый ключ».

Выберите период действия сертификата.

3 этап — Добавление шаблонов сертификатов

Для добавления шаблонов сертификатов откройте Панель управления, выберите пункт «Администрирование» и откройте Центр сертификации.

Щелкните по названию папки «Шаблоны сертификатов», выберите пункт «Управление».

Щелкните по названию шаблона «Пользователь со смарт-картой» и выберите пункт «Скопировать шаблон». На следующих скриншотах показано, какие параметры в окне «Свойства нового шаблона» необходимо изменить.

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Если в списке поставщиков нет «Aktiv ruToken CSP v1.0», то необходимо установить комплект «Драйверы Рутокен для Windows».

Начиная с Windows Server 2008 R2 вместо специального провайдера от производителя можно использовать «Microsoft Base Smart Card Crypto Provider».

Для устройств Рутокен библиотека «минидрайвера», поддерживающая «Microsoft Base Smart Card Crypto Provider», распространяется через Windows Update.

Проверить установился ли «минидрайвер» на вашем сервере можно подключив Рутокен к нему и посмотрев в диспетчер устройств.

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Если «минидрайвера» по каким-то причинам нет, его можно установить принудительно, инсталлировав комплект «Драйверы Рутокен для Windows», а после этого воспользоваться «Microsoft Base Smart Card Crypto Provider».

Комплект «Драйверы Рутокен для Windows» распространяется бесплатно с сайта Рутокен .

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Добавьте два новых шаблона «Агент сертификации» и «Пользователь с Рутокен».

Для этого выйдите из окна «Управления шаблонами». Нажмите правой кнопкой мыши на «Шаблоны сертификатов» и выберите пункт меню «Создать» и подпункт «Выдаваемый шаблон сертификата».

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Далее выберите «Агент регистрации» и «Пользователь с Rutoken» и нажмите «ОК».

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр
Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Далее нам необходимо выписать сертификат администратору домена. Откройте службу «Выполнить» и укажите команду mmc. Добавьте оснастку «Сертификаты».

В окне «Оснастки диспетчера сертификатов» выберите «моей учетной записи пользователя». В окне «Добавление и удаление оснастки» подтвердите добавление сертификатов.

Читайте также:  Авторизация в ESIA на сервере терминалов с ЭЦП по ГОСТ-2012 / Хабр

Выберите папку «Сертификаты».

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Запросите новый сертификат. Откроется страница для регистрации сертификата. На этапе запроса сертификата выберите политику регистрации «Администратор» и нажмите «Заявка».

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Таким же образом запросите сертификат для Агента регистрации.

Чтобы запросить сертификат для определенного пользователя щелкните «Сертификаты», выберите пункт «Зарегистрироваться от имени…».

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

В окне для запроса сертификата установите флажок «Пользователь с Рутокен».

Теперь необходимо выбрать пользователя.

В поле «Введите имена выбранных объектов» укажите имя пользователя в домене и нажмите «Проверить имя».

В окне для выбора пользователя нажмите «Заявка».

В раскрывающемся списке выберите имя токена и укажите PIN-код.

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

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

4 этап — Настройка учетных записей пользователей

Для настройки учетных записей откройте список пользователей и компьютеров AD.

Настройка клиента l2tpipsecvpn

Запускаем установленный клиент:

После запуска у вас должен открыться апплет L2tpIpsecVPN. Нажмём на него правой кнопкой мыши и произведём настройку соединения:

Для работы с токенами, в первую очередь, укажем путь opensc движка OpenSSL и PKCS#11 библиотеки. Для этого откройте вкладку “Preferences” для настройки параметров openssl:

Закроем окно настроек OpenSSL и перейдём к настройке сети. Добавим новую сеть, нажав на клавишу Add… в панели настроек и введите имя сети:

После этого данная сеть станет доступна в панели настроек. Дважды кликнем правой кнопкой мыши по новой сети, чтобы настроить её. На первой вкладке необходимо произвести настройки IPsec. Зададим адрес сервера и общий ключ:

После этого переходим на вкладку настройки PPP и укажем там имя пользователя, под которым мы хотим зайти в сеть:

После этого откроем вкладку Properties и укажем путь до ключа, сертификата клиента и УЦ:
Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Закроем данную вкладку и выполним финальную настройку, для этого откроем вкладку “IP settings” и поставим галочку напротив опции “Obtain DNS server address automatically”:

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр
Данная опция позволит клиенту получать от сервера личный IP-адрес внутри сети.

После всех настроек закроем все вкладки и перезагрузим клиент:

Настройка клиента openvpn

У меня рабочее место пользователя — Windows 7. Так как Рутокен ЭЦП работает через стандартный CCID-драйвер, то на Windows 7 его драйвера устанавливать не надо (на XP надо).

Настройка клиента ubuntu

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

Настройка клиента windows

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

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

Установим все необходимые пакеты.

Настройка сервера openvpn

Установим openvpn:

sudo apt-get install openvpn

Создадим файл с параметрами ДХ:

 openssl dhparam -out dh1024.pem 1024


Тестовый конфиг сервера OpenVPN (ВНИМАНИЕ! Конфиг сервера предназначен только для демонстрации, не надо его брать за основу вашего сервера):

port 1194
proto tcp
dev tap

ca /home/vic/Desktop/ca.crt
cert /home/vic/Desktop/server.crt
key /home/vic/Desktop/server.key  
dh /home/vic/Desktop/dh1024.pem

server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt

keepalive 10 120

cipher BF-CBC
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3

Запустим сервер OpenVPN

sudo openvpn --config  /home/vic/Desktop/demo.ovpn

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

Настройка системы

Установим все необходимые драйверы для работы с Рутокенами скачав их c оф. сайта.

Настройка уц

Для начала установим системные компоненты, необходимые для работы Рутокен ЭЦП:

Установим XCA:

sudo apt-get install xca


Запустим XCA:

sudo xca

Следует создать новую базу File->New Database.

Создадим ключ УЦ: Private Keys-> New Key, newcakey, RSA, 1024.
Создадим сертификат УЦ:
image

Создадим ключ сервера OpenVPN: Private Keys-> New Key, newserver, RSA, 1024.Создадим сертификат сервера OpenVPN:

ВАЖНО! У сертификата сервера OpenVPN должно присутствовать специальное расширение (extendedKeyUsage — serverAuth)
image

Экспортируем сертификат УЦ в файл ca.crt, ключ сервера в файл server.key и сертификат сервера в файл server.crt, чтобы их можно было подсунуть серверу OpenVPN (Private Keys->Export, Certificates->Export).

Недостатки, куда же без них

Токены или смарт-карты не бесплатные (решается бюджетом).

Их нужно учитывать, администрировать и обслуживать (решается системами управления токенами и смарт-картами).

Некоторые информационные системы могут «из коробки» не поддерживать аутентификацию по токенам (решается системами типа Single Sign-On — предназначенными для организации возможности использования единой учетной записи для доступа к любым ресурсам области).

Подключение

После завершения настройки можно попробовать подключиться к сети:

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

Мы с вами настроили безопасную VPN сеть и убедились в том, что это несложно.

Подключение к сети

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

В процессе установки соединения клиент попросит ввести нас PIN-код Рутокен:

Если в статус-баре появится оповещение о том, что соединение успешно установлено, значит, настройка была произведена успешно:

В противном случае стоит разобраться, почему соединение не было установлено. Для этого стоит посмотреть лог программы, выбрав в апплете команду “Connection information”:

Преимущества входа в домен по токену

PIN-код от токена проще запомнить, так как он может быть намного проще пароля. Каждый наверняка хоть раз в жизни видел, как «опытный» пользователь мучительно не может с нескольких попыток аутентифицироваться в системе, вспоминая и вводя свой «безопасный» пароль.

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

При использовании токена для пользователя вход в систему выглядит следующим образом: после загрузки компьютера, он просто подключает токен к USB-порту компьютера, вводит 4-6 цифр и нажимает кнопку Enter. Скорость ввода цифр у обычных людей выше, чем скорость ввода букв. Поэтому PIN-код вводится быстрее.

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Токены позволяют решить проблему «брошенного рабочего места» — когда пользователь уходит со своего рабочего места и забывает выйти из своей учетной записи.

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

Принцип работы

При подключении Рутокена ЭЦП 2.0 Flash с установленным Рутокен Диском, в Проводнике Windows появится два устройства. Первое — хранилище пользовательских данных, скрытое и недоступное для чтения и записи без ввода PIN-кода. Второе — виртуальный CD-диск с программой Рутокен Диск.

После обнаружения виртуального CD-диска с программой Рутокен Диск, Windows автоматически предлагает её запустить.

При первом запуске Рутокен Диск требуется задать отдельный PIN-код для хранилища документов. Он не должен совпадать с PIN-кодом администратора устройства и PIN-кодами, контролирующими доступ к хранилищу ключей электронной подписи.

После ввода PIN-кода скрытый раздел становится доступным и открывается в Проводнике. При отключении устройства от компьютера защищенный раздел вновь становится скрытым.

Доступ к защищенному хранилищу можно получать и на Android. Но в отличие от Windows, защита реализуется с помощью приложения Панель управления Рутокен. Приложение устанавливается на телефон или планшет из Google Play или комплекта разработчика Рутокен.

Проблематика

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

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

Именно поэтому сейчас выросла потребность в создании надёжных корпоративных VPN сетей. Я расскажу вам о надёжной, безопасной и простой в использовании VPN сети.

Она работает по схеме IPsec/L2TP, использующей для аутентификации клиентов неизвлекаемые ключи и сертификаты, хранящиеся на токенах, а также передает данные по сети в зашифрованном виде.

Регистрация и установка программного решения cryptopro

Сама программа предназначена для защиты данных путем шифрования и формирования ЭП. Сертификат нужен для подтверждения значимости и статуса цифровой документации во время работы с различными объектами, включая:

Перед тем как приступать непосредственно к инсталляции ПО, надлежит закрыть все приложения. Нужно перейти в учетную запись администратора. Также важный момент — наличие лицензии на программу.

Следуя инструкции, можно установить программу «КриптоПро» без особых проблем. Порядок действий прост: понадобится лишь сохранить и запустить установочный файл. По завершении процедуры требуется произвести перезагрузку компьютера. Получить дистрибутив предлагается на официальном сайте программного продукта.

Интегрированное ПО позволяет выполнять различные операции с ЭЦП. Его преимуществом является бесплатность на протяжении всего пробного периода. Испытать возможности «КриптоПро» предлагается на протяжении 3 месяцев. По истечении 90 дней бесплатного демонстрационного периода надлежит купить лицензионный ключ, чтобы и дальше иметь доступ ко всему функционалу.

Важно учесть, что перед инсталляцией надлежит проверить ПК на соответствие минимальным требованиям. Обычно нужна операционная система Windows 7 и более свежая, браузер IE8, процессор с частотой минимум 1 ГГц и оперативная память не менее 512 Мб. USB-вход стандарта 1.1 — также обязательное требование к компьютеру, где проводится работа с программой.

Читайте также:  Рутокен ЭЦП PKI / Все продукты / Продукты / Рутокен

Рутокен эцп и open source

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

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

Мы прилагаем много усилий, чтобы «подружить» Рутокен ЭЦП и различные приложения Open Source. Для этой цели мы добавили поддержку российских криптоалгоритмов (ГОСТ 28147-89, ГОСТ Р 34-11.94 и ГОСТ Р 34-10.2001) и устройств Рутокен и Рутокен ЭЦП в проект OpenSC, а также разработали свою собственную кроссплатформенную библиотеку PKCS#11, работающую на операционных системах Microsoft Windows, GNU/Linux, Mac OS X, FreeBSD и др.

Стандарт PKCS#11 поддерживается большинством Open Source приложений для подключения криптографических USB-токенов. Основная проблема, с которой мы столкнулись — популярные Open Source приложения прекрасно работают с аппаратной реализацией алгоритма RSA «на борту» Рутокен ЭЦП и не умеют использовать ГОСТы, также реализованные «на борту» Рутокен ЭЦП. Пришлось «обучать» их этому. На сегодняшний день удалось решить эту задачу для OpenSC, OpenSSL и sTunnel, что, если разобраться, не так уж и мало :-).

На выходе мы получили интеграцию Рутокен ЭЦП с различными приложениями Open Source через библиотеку PKCS#11 и через другие механизмы. Ниже приводится сводная таблица, в которой можно найти ссылки на подробные инструкции по интеграции. Список приложений, представленных в таблице, будет постоянно расширяться.

Хочется также отметить, что Форум проекта Рутокен — это, наверное, одно из самых информационно наполненных мест в русскоязычном интернете, где можно получить ответы на вопросы, связанные с использованием криптографических токенов в Linux и приложениях Open Source.

Способы получения электронной цифровой подписи на пк

Конкретный вариант того, как получить электронную подпись, зависит от ее типа:

С полным перечнем прошедших аккредитацию удостоверяющих центров предлагается ознакомиться на веб-портале Минкомсвязи РФ.

Усиленная подпись позволяет участвовать в торгах, взаимодействовать с налоговой инспекцией, сдавать отчеты в госорганы, проводить коммерческие торги и пр. Ее использование гарантирует самый высокий уровень безопасности. Для подписания первичных бухгалтерских документов в цифровом формате достаточно простой подписи. Однако для ведения полноценной предпринимательской деятельности этого мало.

Как пользователь может получить и установить ЭЦП на компьютере:

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

Чаще всего используется вариант установки Рутокена через обычный флеш-накопитель. Электронная подпись будет иметь вид папки с файлами.

Токен и смарт-карта

Наверно, самым надежным и простым в реализации способом двухфакторной аутентификации является использование криптографического токена или смарт-карты. Токен — это USB-устройство, которое является и считывателем, и смарт-картой одновременно. Первым фактором в таком случае является факт владения устройством, а вторым — знание его PIN-кода.

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

На фотографии изображена типичная смарт-карта и считыватель.

Настройка аутентификации в сети L2TP с помощью Рутокен ЭЦП 2.0 и Рутокен PKI / Хабр

Однако вернемся к корпоративной безопасности.

А начнем мы с домена Windows, ведь в большинстве компаний в России корпоративная сеть построена именно вокруг него.

Как известно, политики Windows-домена, настройки пользователей, настройки групп в Active Directory предоставляют и разграничивают доступ к огромному количеству приложений и сетевых сервисов.

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

Установка strongswan (ipsec)

В первую очередь, настроим firewall для работы ipsec

sudo firewall-cmd --permanent --add-port=1701/{tcp,udp}
sudo firewall-cmd --permanent --add-service=ipsec
sudo firewall-cmd --reload

Затем приступим к установке

sudo yum install epel-release ipsec-tools dnf
sudo dnf install strongswan

После установки необходимо задать конфигурацию для strongswan (одну из реализаций IPSec). Для этого отредактируем файл /etc/strongswan/ipsec.conf :

config setup
    nat_traversal=yes
    virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
    oe=off
    protostack=netkey 

conn L2TP-PSK-NAT
    rightsubnet=vhost:%priv
    also=L2TP-PSK-noNAT

conn L2TP-PSK-noNAT
    authby=secret
    pfs=no
    auto=add
    keyingtries=3
    rekey=no
    ikelifetime=8h
    keylife=1h
    type=transport
    left=%any
    leftprotoport=udp/1701
    right=%any
    rightprotoport=udp/%any
    ike=aes128-sha1-modp1536,aes128-sha1-modp1024,aes128-md5-modp1536,aes128-md5-modp1024,3des-sha1-modp1536,3des-sha1-modp1024,3des-md5-modp1536,3des-md5-modp1024
    esp=aes128-sha1-modp1536,aes128-sha1-modp1024,aes128-md5-modp1536,aes128-md5-modp1024,3des-sha1-modp1536,3des-sha1-modp1024,3des-md5-modp1536,3des-md5-modp1024

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

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

Так же в strongswan имеется возможность обеспечить аутентификацию с помощью смарт-карт, но пока поддерживается ограниченный круг устройств и поэтому аутентификация с помощью токенов и смарт-карт Рутокен пока затруднительна. Зададим общий пароль через файл /etc/strongswan/ipsec.secrets:

# ipsec.secrets - strongSwan IPsec secrets file
%any %any : PSK "SECRET_PASSPHRASE"

Перезапустим strongswan:

sudo systemctl enable strongswan
sudo systemctl restart strongswan

Установка xl2tp

sudo dnf install xl2tpd

Сконфигурируем его через файл /etc/xl2tpd/xl2tpd.conf:

Установка клиента l2tpipsecvpn

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

Установка по для работы с токенами

Установите последнюю версию библиотеки librtpkcs11ecp.so с сайта, также библиотеки для работы со смарт-картами:

sudo apt-get install pcscd pcsc-tools opensc libengine-pkcs11-openssl

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

pkcs11-tool --module /usr/lib/librtpkcs11ecp.so  -O -l

Установка пропатченного ppp

UPD: предложенные нами изменения были приняты начиная с версии pppd 2.4.9. Поэтому пакет pppd можно взять из репозиториев.

Установка эцп с флеши на пк

Перед тем как установить и активировать цифровую подпись с flash-накопителя на ПК, потребуется удостовериться в наличии нескольких условий:

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

Сама инструкция по установке цифровой подписи на компьютер выглядит не слишком сложно. Список действий, как активировать и затем произвести настройку ЭЦП, схож с обычной установкой сертификата. Предварительно следует лишь вставить flash-накопитель в ПК.

Порядок действий таков:

Вероятна ситуация, что окно с выбором считывателей не появится. В таком случае нужно перейти в настройки считывателей, выбрать пункт с названием «Добавить», после чего нажать кнопку «Далее».

В отобразившемся на дисплее окне надлежит выбрать пункт, называющийся «Все производители». Потом жмем «Далее».

Важный нюанс: закрытый ключ выдается в формате файлов *.key. Если они расположены в корневой папке, «КриптоПро CSP» не сможет их увидеть. Поэтому сначала нужно перенести все файлы на флеш-накопитель. Важно, чтобы он находился в папке первого уровня.

Об успешной установке ЭЦП с флешки на компьютер оповестит соответствующее окно. На экране появится надпись о завершении операции.

Иногда может понадобиться вручную установить сертификат в контейнер. Это делается посредством перехода в СКЗИ «КриптоПро», где во вкладке «Сервис» нужно выбрать кнопку «Установить личный сертификат».

Потом предлагается выбрать имя файла, в который помещен сертификат. Обозначить путь к нему нужно через кнопку «Обзор».

После нажатия кнопки «Далее» выдаются основные сведения сертификата для установки. Уточнить данные можно путем перехода во вкладку «Свойства».

Нажимаем кнопку «Далее» и попадаем в окно с названием «Контейнер закрытого ключа». Тут надлежит нажать кнопку «Обзор» в строке «Имя ключевого сертификата». В перечне будут предложены контейнеры, потребуется выбрать интересующий.

Если для получения доступа к закрытому ключу нужен пароль, будет подан запрос на него. Надлежит ввести код и подтвердить его нажатием кнопки «ОК».

Нажатием кнопки «Обзор» можно перейти к выбору места, куда надлежит установить сертификат ЭЦП. Предлагаются следующие варианты: хранилище пользователя либо ПК.

Нужно поставить флажок напротив пункта «Установить сертификат в контейнер».

В завершение предлагается удостовериться в корректности внесенных сведений. Посредством нажатия кнопки «Готово» завершается процедура установки.

Экономия

Рутокен ЭЦП 2.0 Flash с установленным Рутокен Диском выгоднее при покупке, чем аппаратные устройства для хранения и защиты информации с похожими функциями.
Помимо флеш-памяти, Рутокен ЭЦП 2.0 Flash обладает встроенным криптоядром и хранилищем неизвлекаемых криптографических ключей. Поэтому устройство может использоваться также и для электронной подписи и двухфакторной аутентификации.

Заключение

Основная задача — настроить Рутокен. После установки драйвера и перезагрузки компьютера можно активировать ЭЦП. Данная операция касается электронного ключа. Активировать его можно довольно просто. Нужно найти установленный дистрибутив в панели управления и перейти во вкладку с названием «Свойства». Далее нажатием на кнопку «Сервис» можно посмотреть сертификаты в контейнере. Осуществляется операция импорта.

Именно так можно активировать ЭЦП. Инструкция не предполагает выполнения сложных действий.

Наличие установленной электронной подписи позволит пользоваться ею даже при отсутствии самого флеш-накопителя, прямо с компьютера.

Оцените статью
ЭЦП Эксперт
Добавить комментарий