6.2.8 JaCarta PKI для OpenSSH PuTTY
Аннотация
Документ описывает алгоритм настройки SSH-клиента Putty для ОС Windows для работы с JaCarta PKI.
Общия сведения
Заголовок раздела «Общия сведения»SSH
SSH — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений. Шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования. SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных систем.
SSH поддерживает возможность аутентификации по rsa ключу, что обеспечивает максимальный уровень безопасности для канала передачи данных, а также двухфакторную аутентификацию удаленных пользователей.
Аутентификация по сертификату
Заголовок раздела «Аутентификация по сертификату»- Для настройки работы SSH по RSA сертификатам необходимо настроить SSH сервер, а также SSH клиента на клиентской машине. В данном документе описан алгоритм настройки работы SSH с использованием смарт-карты либо токена JaCarta PKI, для целей аутентификации и шифрования установленного канала.
Настройка смарт-карт для SSH-клиента
Заголовок раздела «Настройка смарт-карт для SSH-клиента»Порядок настройки серверной части на примере Ubuntu
Заголовок раздела «Порядок настройки серверной части на примере Ubuntu»ssh
- keygen
i. Переходим в директорию /home/user/.ssh
ii. ssh-keygen -t rsaiii. Задать имя ключа, например key
iv. Задать пароль ключа (для шифрования закрытого ключа) например
12345678
v. На выходе получаем два файла например key и key.pub
Генерация запроса на сертификат с ключами из п.1
vi. openssl req -new -out user.req -key keyВыпуск сертификата в CA openssl
- vii. Настройка openssl CA.
1. cd /etc/ssl2. sudo -i3. echo “01” > serial4. cp /dev/null index.txt- редактируем /etc/ssl/openssl.cnf nano openssl.cnf
a. dir = ./b. certs = $dir/certsc.crl_dir = $dir/crld. database = $dir/index.txte. new_certs_dir = $dir/certsf.certificate = $dir/ca.crtg.serial = $dir/serialh. crl = $dir/crl.pemi.private_key = $dir/ca.key6. openssl req -new -x509 -keyout ca.key -outca.crt -days 36507. mkdir crl-
Запуск makehashlink.
10. chmod +x make_hash_link.sh11. ./make_hash_link.sh /etc/ssl12. ./make_hash_link.sh /etc/ssl/crlviii. Подписание сертификата пользователя (выпуск)
1. sudo -i2. cd /home/user/.ssh3. openssl ca -out user.crt -infiles user.reqix. В директории /home/user/.ssh должен находиться файл открытого
ключа, содержищий ssh-rsa {KEY}. В примере мы создали файл с именем key.pub
x. Импортируем данный ключ в файл authorized_keys
xi. echo key.pub > authorized_keysДонастройка серверной частиb. chmod 700 authorized_keys- c. Настройки openssh. В /etc/ssh/sshd.conf редактируем конфигурацию аутентификации.
i. RSAAuthentication yesii. PubkeyAuthentication yesiii. PasswordAuthentication no - отказ от аутентификации по паролю
(опционально)
Запись сертификата на смарт-карту
Заголовок раздела «Запись сертификата на смарт-карту»Необходимо перенести сертификат на смарт-карту. Для переноса мы соберем все необходимые объекты в зашифрованный контейнер и записать его на смарт-карту.
openssl pkcs12 -export -in user.crt -inkey key -certfile ca.crt -name "user" -out user.pfx-
Перенос файла user.pfx на Windows систему с установленным Единым клиентом, либо JC Client
-
Ввод пин-кода пользователя

- Импортировать сертификат на токен

- Выбрать файл user.pfx и нажать Импорт
Проверка работоспособности сертификата
Заголовок раздела «Проверка работоспособности сертификата»ssh -I /usr/lib/x86-athena/libASEP11.so 127.0.0.1
Настройка SSH-клиента Putty на ОС Windows
Заголовок раздела «Настройка SSH-клиента Putty на ОС Windows»Запуск утилит из дистрибутива
putty
- cac
\ executables
-
pageant.exe
-
putty.exe
Для работы требуется версия putty-cac 0.62
Выбор сертификата в pageant

В общем случае сертификат появляется в хранилище сертификатов автоматически, но в некоторых случаях может потребоваться его добавление вручную.
- Запуск и настройка Putty.
Вкладка Connection/SSH/CAPI

