EToken and OpenVPN

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Lipen
Сообщения: 37

EToken and OpenVPN

Сообщение Lipen »

Настроил сервер OpenVPN, клиентский сертификат залил на eToken. Проблема заключается в том что после соединения если извлечь ключ из компьютера туннель продолжает работать. Как сделать чтобы сервер опрашивал сертификат в течении всего сеанса и связь после извлечения ключа прерывалась?
Спасибо сказали:
alfss
Сообщения: 262

Re: EToken and OpenVPN

Сообщение alfss »

написать плагин

также вы не указываете ОС клиентов и серверов!
Спасибо сказали:
Lipen
Сообщения: 37

Re: EToken and OpenVPN

Сообщение Lipen »

alfss писал(а):
23.08.2008 04:21
написать плагин

также вы не указываете ОС клиентов и серверов!


ОС сервера - Ubuntu 8.04 LTS Server Edition x64, клиентов - windows xp, windows vista. Если конечно это имеет значение...
На счет плагина если можно поподробнее, я пробовал написать скрипт который делает рестарт vpn сервера, но тогда клиент вынужден переконнектится, это не подходит.
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: EToken and OpenVPN

Сообщение IMB »

Lipen писал(а):
23.08.2008 08:42
ОС сервера - Ubuntu 8.04 LTS Server Edition x64, клиентов - windows xp, windows vista. Если конечно это имеет значение...

Не затруднит поделится опытом или ссылкой? Сейчас тоже озадачен данной проблемой - но openvpn под windows не запрашивает pin и пароль сертификата. При работе ориетировался на http://michele.pupazzo.org/diary/?p=216 . Сервер на DebianEtch.
Спасибо.
Спасибо сказали:
Lipen
Сообщения: 37

Re: EToken and OpenVPN

Сообщение Lipen »

При настройке использовал статью Алексея Коршунова " Доступ повышенной проходимости" Системный администратор № 7 2006 г. http://habrahabr.ru/blogs/sysadm/5401/
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: EToken and OpenVPN

Сообщение IMB »

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

Касательно Вашей проблемы. Не думаю что это можно реализовать средствами сервера на данный момент. Сертификат требуется только один раз - при установлении соединения. После того как клиент проверен серверу нет нужды в постоянных проверках клиента. Тунель будет выключен только если клиент не будет доступен определенное время.
Спасибо сказали:
Lipen
Сообщения: 37

Re: EToken and OpenVPN

Сообщение Lipen »

А какой драйвер для считывания сертификата из ключа нужен? В винде ставим драйверы ключа, я их скачал с сайта aladdin.ru, а все остальные действия из статьи. После того как сертификат залит в ключ если его вставить в другой компьютер откроется окно с вопросом импортировать имеющийся сертификат или нет. Отвечаем утвердительно и сертификат импортируется на компьютер.
Что касается конфигурации клиента в статье есть строки:
Теперь мы можем убедиться, что сертификат известен нашей Windows системе, а заодно узнать, как к нему будет обращаться клиент OpenVPN. Для этого проследуем в «Панель управления», где выберем «Свойства обозревателя». В этом окне нас интересует только вкладка «Содержание» и кнопка «Сертификаты».
Выделим наш сертфикат и кликнем на «Просмотр», в открывшемся окне выбирем «Состав». Здесь нас интересует поле «Отпечаток», которое скопируем в буфер обмена.
Полученную информацию об отпечатке сертификата внесём в конфигурационный файл нашего OpenVPN клиента.
cryptoapicert "THUMB:ed 38 ac 63 …"
ca ca.crt

Это как раз те настройки которые необходимы для считывания сертификата с ключа.
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: EToken and OpenVPN

Сообщение IMB »

У меня чуть другое ТЗ. Необходимо обеспечить доступ во внутреннию сеть с авторизацией пользователя на VPN-сервере по USB-ключу. При этом надо учесть, что ключ может быть передан ответсвенным лицом другому. Таким образом ни о каком импортировании сертификатов на компьютер пользователя речи не идет и сертификат на ключе не соотносится с конкретным лицом.
Сертификат должен считываться из ключа при каждом соединении с сервером.
P.S. Сейчас у меня удачно работает схема в которой каждому пользователю выдан сертификат. Но руководство поставило задачу рассмотреть возможность с электронными ключами. Что бы руководитель подразделения мог выдать сотруднику ключ когда это необходимо. В остальное время ключи хранятся в сейфе.
Спасибо сказали:
Lipen
Сообщения: 37

Re: EToken and OpenVPN

Сообщение Lipen »

Как вариант (я над этим уже думал т.к. у всякого начальства мысли идут в одну сторону и думаю что следующая задача может быть такой же... :) ) можно сделать чтобы сертификат был один на всех (все ключи с одним сертификатом, соответственно настройка каждого рабочего места не будет ничем отличаться), только в конфиге нужно разрешить использовать сертификат одновременно нескольким юзерам:
Если вам по какой-то причине необходимо позволить двум независимым клиентам VPN использовать одновременно идентичные сертификаты - раскомментируйте опцию duplicate-cn.

Но тогда нельзя будет контролировать кто из юзеров и когда подключился.
Спасибо сказали:
alfss
Сообщения: 262

Re: EToken and OpenVPN

Сообщение alfss »

Насчет плагина смотрим в сырцы - там есть примеры.
Насчет возможных путей решения.
1) На клиенте ставится VBA скрипт который запускается при извлечении ключа и выполняет гашение vpn.
2)Берется дешёвая флеш-карта - на неё заливается ssl ключ и используется для аутентификации.
3)Делается авторизация по логину и поролю.
4)В случае если есть опыт в программировании.Пишется плагин следящий за определёнными условиями или изменяются исходники openvpn.В случаи win можно изменять тока GUI оболочку.
5) самый простой вариант.Выдаётся инструкция о том что перед извлечением ключа надо отключатся от сети VPN.
Спасибо сказали:
Lipen
Сообщения: 37

Re: EToken and OpenVPN

Сообщение Lipen »

alfss писал(а):
23.08.2008 18:23
Насчет плагина смотрим в сырцы - там есть примеры.
Насчет возможных путей решения.
1) На клиенте ставится VBA скрипт который запускается при извлечении ключа и выполняет гашение vpn.
2)Берется дешёвая флеш-карта - на неё заливается ssl ключ и используется для аутентификации.
3)Делается авторизация по логину и поролю.
4)В случае если есть опыт в программировании.Пишется плагин следящий за определёнными условиями или изменяются исходники openvpn.В случаи win можно изменять тока GUI оболочку.
5) самый простой вариант.Выдаётся инструкция о том что перед извлечением ключа надо отключатся от сети VPN.


На счет первого пункта можно подумать...
На счет второго - к дорогому eToken + дешевую флеш карту это уже слишком...
Пункт третий выполнен, при подключении к ресурсу требуется и логин и пароль.
Четвертый пункт можно применить чтобы интегрировать настройки vpn пользователю, но не для этой задачи.
Пятый пункт мне понравился больше всего! Но когда я пригласил посмотреть на результат заказчика, он первым делом выдернул ключ... Делаем выводы.
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: EToken and OpenVPN

Сообщение IMB »

Lipen писал(а):
23.08.2008 17:52
можно сделать чтобы сертификат был один на всех (все ключи с одним сертификатом, соответственно настройка каждого рабочего места не будет ничем отличаться), только в конфиге нужно разрешить использовать сертификат одновременно нескольким юзерам

Не вариант. Мне проще сказать что невозможно.
Спасибо сказали:
Lipen
Сообщения: 37

Re: EToken and OpenVPN

Сообщение Lipen »

А что так? Если ключи передаются почему так нельзя?
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: EToken and OpenVPN

Сообщение IMB »

Lipen писал(а):
23.08.2008 20:07
А что так? Если ключи передаются почему так нельзя?

А как различим если несколько человек соединятся? В каждый ключ зашивается свой сертификат, при выдаче ключа регистрируем какой ключ кому выдали. Таким образом точно известно кто заходил.
Спасибо сказали:
alfss
Сообщения: 262

Re: EToken and OpenVPN

Сообщение alfss »

Lipen писал(а):
23.08.2008 19:36
alfss писал(а):
23.08.2008 18:23
Насчет плагина смотрим в сырцы - там есть примеры.
Насчет возможных путей решения.
1) На клиенте ставится VBA скрипт который запускается при извлечении ключа и выполняет гашение vpn.
2)Берется дешёвая флеш-карта - на неё заливается ssl ключ и используется для аутентификации.
3)Делается авторизация по логину и поролю.
4)В случае если есть опыт в программировании.Пишется плагин следящий за определёнными условиями или изменяются исходники openvpn.В случаи win можно изменять тока GUI оболочку.
5) самый простой вариант.Выдаётся инструкция о том что перед извлечением ключа надо отключатся от сети VPN.


На счет первого пункта можно подумать...
На счет второго - к дорогому eToken + дешевую флеш карту это уже слишком...
Пункт третий выполнен, при подключении к ресурсу требуется и логин и пароль.
Четвертый пункт можно применить чтобы интегрировать настройки vpn пользователю, но не для этой задачи.
Пятый пункт мне понравился больше всего! Но когда я пригласил посмотреть на результат заказчика, он первым делом выдернул ключ... Делаем выводы.


насчет 2 пункта.
Я не предлагаю к етокину карту.Я имею в веду что можно заменить его на флеш карту +SSL что даст выигрыш в цене и всё тот же эффект.

Насчет клиента.
Надо было ему дать инструкцию по эксплуатации.
Тем более если явно в ТЗ не прописано заказчиком ,что при изъятие токена должно гасится VPN подключение.
Спасибо сказали:
alfss
Сообщения: 262

Re: EToken and OpenVPN

Сообщение alfss »

На самом деле я считаю что тут лучшем выходом будет модификация инсталятора клиента с добавлением туда VBA скрипта.
То есть.
В конфиг клиента добавляется запись при старте запускать VBA скрипт.
Тот в свою очередь ничего не делает ,а ждет когда извлекут ключь и после отключает VPN.
Благо им можно управлять консольными командами))).
Спасибо сказали:
Lipen
Сообщения: 37

Re: EToken and OpenVPN

Сообщение Lipen »

В принципе может и не стоит всё усложнять. Юзер с помощью ключа подключился, далее авторизовался на ресурсе с помощью логина и пароля. Если извлечь ключ пускай продолжает работать, ведь с этим ключом одновременно второй туннель не поднять и на ресурсе допускается только одна сессия...
Спасибо сказали: