Apache mod_ssl для использования OpenSSL ENGINE на Ubuntu 14.04

Я установил OpenSSL 1.0.1f и создал движок для ускорения RSA с использованием графического процессора. Двигатель динамичный, поэтому он известен во всем мире.
Затем я установил Apache $ sudo apt-get install apache2Создал самозаверяющие сертификаты для предоставления услуг HTTPS, изменил файлы конфигурации и т. д.
Эти две части работают правильно, но по отдельности, то есть, когда я пытаюсь указать Apache для использования механизма RSA (в OpenSSL 1.0.1f), он просто завершается с сообщением:

* The apache2 configtest failed. Not doing anything.
Output of config test was:
AH00526: Syntax error on line 3 of /etc/apache2/sites-enabled/default-ssl.conf:
SSLCryptoDevice: Invalid argument; must be one of: 'builtin' (none), 'rsax' (RSAX engine support), 'dynamic' (Dynamic engine loading support)

Итак, мои вопросы:
Под Ubuntu 14.04 64-bit, Apache использует другую версию OpenSSL, чем установленную мной версию?
И как я могу связать Apache с OpenSSL, чтобы использовать этот движок?

Server version: Apache/2.4.7 (Ubuntu)
Server built:   Jan 14 2016 17:45:23

1 ответ

Решение

Шаги, которые наконец-то сработали для меня:

1.Установите OpenSSL из источников, указав -DOPENSSL_LOAD_CONF при беге ./config
1.1.Создайте / создайте свой движок OpenSSL и добавьте его в свой openssl.cnf файл
2.Установите httpd из источников, используя эти команды:

CFLAGS='-DSSL_EXPERIMENTAL_ENGINE -DSSL_ENGINE -DOPENSSL_LOAD_CONF' ./configure --enable-ssl --with-ssl=/usr/local/ssl --with-pcre=/usr/local/pcre --enable-so      
make       
make install

2.1.Edit httpd-ssl.conf добавляя SSLCryptoDevice engine_id и убедитесь, что при выполнении $ openssl engine, engine_id спецификатор появится в списке. Кроме того, вы должны создать самозаверяющий сертификат и закрытый ключ, изменить httpd.conf файл, но это не предмет этого вопроса. Поиск: как настроить HTTPS на Apache.
3.$ httpd -k restart и это все.

Другие вопросы по тегам