Est-ce que quelqu'un connaît la commande pour déterminer si OpenSSL et mod_ssl sont installés sur Apache2?
Si vous avez PHP installé sur votre serveur, vous pouvez créer un fichier php, appelons-le phpinfo.php et ajouter ceci <?php echo phpinfo();?>
, puis ouvrir le fichier dans votre navigateur. Celui-ci affiche des informations sur votre environnement système. Pour plus d’informations sur vos modules chargés Apache, localisez 'Loaded Modules' sur la page résultante.
Si PHP est installé sur votre serveur, vous pouvez l’analyser à l’exécution en utilisant la fonction " extension_loaded ". Juste comme ça:
<?php
if (!extension_loaded('openssl')) {
// no openssl extension loaded.
}
?>
Habituellement, lorsque vous compilez votre serveur Apache2 (ou l'installez à l'aide de l'installation de packages), vous pouvez vérifier toutes les directives disponibles à utiliser en tapant sur cette commande:
~# $(which httpd) -L | grep SSL # on RHEL/CentOS/Fedora
~# $(which Apache2) -L | grep SSL # on Ubuntu/Debian
Si vous ne voyez aucune directive SSL *, cela signifie que vous n'avez pas Apache2 avec mod_ssl compilé.
J'espère que ça aide;)
L'installation par défaut d'Apache est configurée pour envoyer ces informations sur la ligne Server header. Vous pouvez afficher cela pour n’importe quel serveur à l’aide de la commande curl.
$ curl --head http://localhost/
HTTP/1.1 200 OK
Date: Fri, 04 Sep 2009 08:14:03 GMT
Server: Apache/2.2.8 (Unix) mod_ssl/2.2.8 OpenSSL/0.9.8a DAV/2 PHP/5.2.6 SVN/1.5.4 proxy_html/3.0.0
Utilisez les commandes suivantes.
$ openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013 (or similar output)
Pour RHEL/CentOS/Fedora:
$ httpd -t -D DUMP_MODULES | grep ssl
ssl_module (shared)
Pour Ubuntu/Debian
$ Apache2 -t -D DUMP_MODULES | grep ssl
ssl_module (shared)
Pour SUSE
$ httpd2 -t -D DUMP_MODUELS | grep ssl
ssl_module (shared)
Pour déterminer openssl & ssl_module
# rpm -qa | grep openssl
openssl-libs-1.0.1e-42.el7.9.x86_64
openssl-1.0.1e-42.el7.9.x86_64
openssl098e-0.9.8e-29.el7.centos.2.x86_64
openssl-devel-1.0.1e-42.el7.9.x86_64
mod_ssl
# httpd -M | grep ssl
ou
# rpm -qa | grep ssl
Si vous venez d’exécuter openssl
sur votre terminal, il devrait présenter le shell openSSL. Mon premier indice pour savoir que je n'avais pas mode_ssl
était lorsque j'ai eu l'erreur suivante après avoir ajouté SSLEngine on
dans mon fichier virtualhost:
Invalid command 'SSLEngine', perhaps misspelled or defined by a module not included in the server configuration
En centos, je viens de l'installer via yum install mod_ssl
En utilisant Apache 2, vous pouvez voir quels modules sont actuellement chargés par le démon HTTP en exécutant la commande suivante:
Apache2ctl -M
L'option -M
n'est en réalité qu'un paramètre passé à httpd .
Apache2ctl est une interface du protocole Apache HyperText Transfer Protocol (HTTP) serveur. Il est conçu pour aider l'administrateur à contrôler le fonctionnement du démon Apache apache2.
NOTE: The default Debian configuration requires the environment variables Apache_RUN_USER, Apache_RUN_GROUP, and Apache_PID_FILE to be set in /etc/Apache2/envvars. The Apache2ctl script returns a 0 exit value on success, and >0 if an error occurs. For more details, view the comments in the script.
Heureusement, la plupart des versions de Linux ont OpenSSL "prêt à l'emploi".
openssl version
Réponse:OpenSSL 1.0.1t 3 May 2016
Remarque: version OpenSSL 1.0.1 à 1.0.1f (incluse)
sont vulnérables au bogue OpenSSL Heartbleed.
Les versions 1.0.1g et supérieures sont corrigées.
Ubuntu/Debiandpkg -l | grep -i openssl
Réponse:ii libcrypt-openssl-random-Perl 0.04-2+b1 AMD64 module to access the OpenSSL pseudo-random number generator
ii libcurl3:AMD64 7.38.0-4+deb8u5 AMD64 easy-to-use client-side URL transfer library (OpenSSL flavour)
ii libgnutls-openssl27:AMD64 3.3.8-6+deb8u4 AMD64 GNU TLS library - OpenSSL wrapper
ii openssl 1.0.1t-1+deb8u6 AMD64 Secure Sockets Layer toolkit - cryptographic utility
ii python-ndg-httpsclient 0.3.2-1 all enhanced HTTPS support for httplib and urllib2 using PyOpenSSL
ii python-openssl 0.14-1 all Python 2 wrapper around the OpenSSL library
ii ssl-cert 1.0.35 all simple debconf wrapper for OpenSSL
Oui, OpenSSL est installé!
Debian/Ubuntu:Sudo apt-get install openssl
RedHat/CentOS:yum install openssl
Vous devriez installer ce mod Apache, http://httpd.Apache.org/docs/2.0/mod/mod_info.html , il vous donne en gros une liste des mods que vous utilisez et des paramètres Apache. Ceci est activé sur mon Apache et il me donne cette information pour mon site Web,
Version serveur: Apache/2.2.3 (Debian) mod_jk/1.2.18 PHP/5.2.0-8 + etch13 mod_ssl/2.2.3 OpenSSL/0.9.8c mod_Perl/2.0.2 Perl/v5.8.8
Il suffit de regarder dans le répertoire ssl_engine.log de votre répertoire de journaux Apache où vous devriez trouver quelque chose comme
[ssl:info] [pid 5963:tid 139718276048640] AH01876: mod_ssl/2.4.9 compiled against Server: Apache/2.4.9, Library: OpenSSL/1.0.1h
vérifier en ligne de commande php
$php -i | grep openssl
Pour trouver le ssl version
Activez mod_ssl dans httpd.conf et redémarrez Apache. Vous verrez les informations openssl dans error.log comme ci-dessous
[Fri Mar 23 15:13:38.448268 2018] [mpm_worker:notice] [pid 8891:tid 1] AH00292: Apache/2.4.29 (Unix) OpenSSL/1.0.2n configured -- resuming normal operations
[Fri Mar 23 15:13:38.448502 2018] [core:notice] [pid 8891:tid 1] AH00094: Command line: '/opt/apps/Apache64/2.4.29/bin/httpd'