1 votes

Comment utiliser l'accélération AES-NI d'Intel sur l'ensemble du système avec OpenSSL 0.9.8 ?

J'ai trouvé les instructions suivantes pour obtenir le code du moteur contrib OpenSSL 0.9.8 d'Intel sur certains systèmes basés sur Westmere que nous avons :

$ wget https://www.openssl.org/contrib/intel-accel-1.5.tar.gz
$ tar -zxvf intel-accel-1.5.tar.gz
$ cd intel-accel-1.5
$ make
$  sudo cp libintel-accel.so /usr/lib/ssl/engines/

dm@test:~$ openssl speed -evp aes-256-cbc -engine intel-accel
[...]
type         16 bytes    64 bytes   256 bytes   1024 bytes   8192 bytes
aes-256-cbc 411556.71k  552666.78k  585173.93k   590249.30k   592617.47k

dm@test:~$ openssl speed -evp aes-256-cbc # No Intel AES-NI
[...]
type         16 bytes    64 bytes   256 bytes   1024 bytes   8192 bytes
aes-256-cbc  67324.29k   98995.86k  118538.15k   123550.22k   124304.70k

Comment dois-je modifier le fichier /etc/ssl/openssl.cnf sur ma ou mes machines Debian 6 pour que ce moteur soit utilisé par défaut par tout ce qui peut être lié à OpenSSL (par exemple, OpenSSH 5.5p1, Apache, etc.) ?

J'ai essayé ce qui suit :

# at the top of the openssl.cnf
openssl_conf = openssl_def
[...]
# at the bottom:
[openssl_def]
engines = engine_section
[engine_section]
foo = aesni_section
[aesni_section]
dynamic_path = /usr/lib/ssl/engines/libintel-accel.so
engine_id = intel-accel
default_algorithms = ALL
init = 1

ce qui donne l'erreur suivante :

dm@test:~$ openssl speed -evp aes-256-cbc 
Error configuring OpenSSL
1645:error:26078067:engine routines:ENGINE_LIST_ADD:conflicting engine id:eng_list.c:116:
1645:error:2606906E:engine routines:ENGINE_add:internal list error:eng_list.c:288:
1645:error:260B6067:engine routines:DYNAMIC_LOAD:conflicting engine id:eng_dyn.c:540:
1645:error:260BC065:engine routines:INT_ENGINE_CONFIGURE:engine configuration error:eng_cnf.c:204:section=aesni_section, name=dynamic_path, value=/usr/lib/ssl/engines/libintel-accel.so
1645:error:0E07606D:configuration file routines:MODULE_RUN:module initialization error:conf_mod.c:235:module=engines, value=engine_section, retcode=-1      
Segmentation fault

Quelle est l'incantation magique à mettre dans config(5SSL) pour que cela devienne un défaut du système ?

1voto

Feh, j'aurais dû lire intel-accel-1.5/README plus attentivement :

openssl_conf = openssl_init

[openssl_init]
engines = engines_section

[engines_section]
intel-accel = intel_accel

[intel_accel]
default_algorithms = ALL

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X