СКЗИ «ЛИРССЛ-CSP». Программный модуль LIRTUNNEL
ПМ LIRTUNNEL предназначен для организации защищенных (шифрованных) туннелей с использованием российских криптографических алгоритмов (ГОСТ 28147-89, ГОСТ Р 34.11-94/2012, ГОСТ Р 34.10-2001/2012).
ПМ LIRTUNNEL прошел тематические испытания в составе СКЗИ «ЛИРССЛ-CSP» (положительное заключение №149.3.2.3-1433 от 18.07.2017 г.).
ПМ LIRTUNNEL - это кроссплатформенное решение для построения TLSv1 туннелей для любых клиент-серверных приложений (например: telnet, ftp, VNC, СУБД Oracle, веб-приложения и т.д.).
ПМ LIRTUNNEL обеспечивает создание TLSv1 - соединений между клиентом и сервером по любому протоколу, основанному на TCP, включая протокол FTP. При этом ftp-клиент должен работать в пассивном режиме (passive mode) . ПМ «LirTunnel» может работать как в режиме клиента, так и в режиме сервера, обеспечивая дешифрование входящего трафика и шифрование исходящего трафика.
Авторизация узлов клиента на сервере проводится с использованием сертификатов X509 v3 .
Для выпуска серверных и клиентских сертификатов удобно использовать графическую утилиту foxxca, также входящую в состав СКЗИ «ЛИРССЛ-CSP»:
Сертификаты и закрытые ключи могут храниться как в файлах, так и в защищенном контейнере PKCS#12, а также на токенах PKCS#11 с поддержкой российской криптографии. Говоря о токенах PKCS#11, прежде всего имеются ввиду сертифицированные токены из состава СКЗИ «ЛИРССЛ-CSP», а именно программный токен LS11SW2016 и программно-аппаратный токен на базе USB-флешки - LS11USB2016. Естественно, могут использоваться токены и других производителей, разработанные в соответствии с требованиями документа «Методические рекомендации. Расширение PKCS#11 для использования российских стандартов ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012, ГОСТ Р 34.12-2015 и ГОСТ Р 34.13-2015», проект которого подготовлен Техническим Комитетом ТК-26. Методические рекомендации базируются на стандарте PKCS#11 v.2.40.
ПМ LIRTUNNEL функционирует на большинстве операционных систем, включая: Linux, MS Windows, Android, QNX, OS X.
В качестве примера рассмотрим доступ к тестовой странице (https://soft.lissi.ru:9443 или https://soft.lissi.ru:9943), демонстрирующий использование https в авторизованном режиме с российской криптографией.
Доступ к этой странице с браузера Redfox, поддерживающего российскую криптографию, дает следующий результат:
В тоже время попытка получить доступ к этой странице через браузер без поддержки российских криптографических алгоритмов (например, браузер google-chrome) дает отрицательный результат:
Решить эту проблему можно, если использовать ПМ LIRTUNNEL в режиме "client". Конфигурационный файл может выглядеть следующим образом:
verify = 2
;корневой сертификат
cafile = /home/a513/tmp/LirTUNNEL/cacert.pem
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1
; Подключение токена с закрытым ключом
engine=pkcs11
engineCtrl = ATTACH_API:/usr/local/lib64/libls11cloud.so
engineCtrl = LOGIN:01234567
debug = 7
output = /home/a513/tmp/LirTUNNEL/stunnel_CL.log
log=overwrite
fips = no
client = yes
[HTTPS-TLS-GOST]
;если закрытый ключ и сертификат на токене
engineID=pkcs11
cert = /home/a513/tmp/LirTUNNEL/CERT_CLOUD_0.pem
key = /home/a513/tmp/LirTUNNEL/CERT_CLOUD_0.pem
;если закрытый ключ и сертификат в контнейнере PKCS#12
;cert = /home/a513/tmp/LirTUNNEL/RedFox-51.p12
;key = /home/a513/tmp/LirTUNNEL/RedFox-51.p12
; порт, на котором слушаем
accept = 9898
;адрес страницы с авторизованным доступом по TLS
connect = lissi.ru:9943
Теперь достаточно запустить ПМ «LirTunnel» с указанным конфигурационным файлом и обратиться к тестовой странице через него (127.0.0.1:9898):
В log-файле можно увидеть какой используется шифрсьют, а также версию TLS (TLSv1.0, TLSv1.1 или TLSv1.2):
2017.06.06 17:42:45 LOG6[0]: Negotiated TLSv1.2 ciphersuite GOST2012-GOST89-GOST89 (256-bit encryption)
И все же основное назначение ПК LIRTUNNEL - это создание защищенных туннелей типа "точка-точка", когда на одном конце запускается ПК LIRTUNNEL в режиме сервера (в нашем примере в качестве такого сервера выступает Web-сервер на Apache с поддержкой ГОСТ-ового https), а на друом конце также запускается ПК LIRTUNNEL, но в режиме "client=yes":