четверг, 22 декабря 2011 г.

eToken+Putty

Если у Вас уже есть устройство для аутентификации e Token, то имеет смысл использовать его везде, где нужно для обеспечения более высокого уровня безопасности.
Удаленный доступ к серверам имеет очень высокую степень риска (думаю со мной многие согласятся)
Т.к. даже запароленный приватный ключ в криптованном контейнере может быть скопирован при определенных обстоятельствах злоумышленником,а затем уже подобран пароль к нему.
Получить публичный ключ думаю еще легче :). Заполучив приватный ключ можно подобрать пароль даже брутфорсом, хотя это вопрос времени.. Получить ключ из eToken уже сложнее..
Ну да ладно я ушел в сторону...


Putty по умолчанию не поддерживает аутентификацию с использованием PKCS#11, но к нашему счастью есть люди, которые сделали модификации с его поддержкой..

Модификации с поддержкой PKCS#11 : 
Я опишу настройку на основе последней сборки, в других аналогично.
1.  нужно установить драйвера. Я использую eTocken PRO. Скачиваем драйвера для eToken и устанавливаем их (надеюсь тут затруднений не будет). Кстати в архиве также есть дока по eToken в том числе и на русском языке!
2. Вам нужно найти dll библиотеку для работы с Вашим eToken. Она  обычно хранится в win32 директории, например. C:\Windows\System32\eToken.dll для Aladdin eToken или dkck232.dll для Rainbow iKey.
 Примечание: Если у Вас возникли затруднения с этим шагом, то можно воспользоваться утилитой psearch.exe, которая попытается найти нужную dll
3. Теперь настроим Putty. Настраивать можно либо для каждого сеанса отдельно, либо настроить для сеанса "Default"  и сохранить, а затем уже создавать остальные сеансы.

Находим раздел, который отвечает за соединение и находим в нем pkcs11. Для начала нужно указать путь к библиотеке, если библиотека указана верно, то вы сможете выбрать из списка "Token label", а затем и "Certificate label".

Теперь нам нужно получить публичный ключ (если у Вас он не сохранен отдельно).
Для этого можно воспользоваться утилитой pprint. Нужно указать только путь к dll библиотеке b запустить в командной строке pprint -l "Путь к dll библиотеке pkcs11"
Вы должны получить что-то вида:
ssh-rsa AAAAB3NzaC1yc2EAA....== token-key
Этот публичный ключ нужно добавить в  $HOME/.ssh/authorized_keys на сервере у  пользователя, под которым вы хотите подсоединяться.
При конекте нужно будет ввести пароль для токена и в принципе все :)

Ссылки:
Различные модификации Putty

Комментариев нет:

Отправить комментарий