stunnel-msspi — это форк проекта stunnel с поддержкой криптографических алгоритмов ГОСТ при установке защищённых TLS-соединений через интерфейс msspi.
Принцип работы
Оригинальная реализация stunnel при установке защищённых TLS-соединений использует библиотеку OpenSSL, которая ограниченно поддерживает криптографические алгоритмы ГОСТ. Для обеспечения работы ГОСТ-алгоритмов в полном объёме в stunnel-msspi используется интерфейс msspi , который поддерживает ГОСТ-алгоритмы, используя установленный в систему криптопровайдер. Внесение функционала msspi в проект stunnel сделано таким образом, что дополнены только участки кода связанные с интерфейсом OpenSSL , а проект в целом не претерпел существенных изменений.
Конфигурация
Конфигурация stunnel-msspi аналогична конфигурации stunnel , но обладает некоторыми особенностями:
- Нет необходимости указывать параметр key , так как закрытый ключ находится по сертификату автоматически.
- В параметре cert кроме пути до файла сертификата может быть указано имя сертификата, идентификатор ключа или отпечаток сертификата. Например, сert = /path/to/my.example.com.cer , или сert = my.example.com , или cert = bf3c4aa0255b7c65914a45866d86abbe1c18d512 .
- При наличии ПИН-кода на закрытый ключ, может быть использован параметр pin (НЕ РЕКОМЕНДУЕТСЯ). Например, pin = 12345678 .
- При использовании verify со значением 3 , параметр CApath будет использован в качестве имени хранилища сертификатов, в котором будет осуществлена проверка сертификата удалённой стороны на валидность. Например, verify = 3 и CApath = TrustedPeople .
- При использовании msspi = 0 , включается режим обратной совместимости с оригинальной реализацией OpenSSL .