gratis - Cómo determinar si OpenSSL y mod_ssl están instalados en apache2
instalar certificado ssl xampp (13)
Afortunadamente, la mayoría de los sabores de Linux tienen OpenSSL "fuera de la caja".
Para verificar la instalación:
openssl version
Respuesta:
OpenSSL 1.0.1t 3 May 2016
Nota: versión OpenSSL 1.0.1 a 1.0.1f (inclusive)
son vulnerables a OpenSSL Heartbleed Bug.
Las versiones 1.0.1g y posteriores son fijas.
Para información de instalación adicional:
Ubuntu / Debian
dpkg -l | grep -i openssl
Respuesta:
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
¡Sí, OpenSSL está instalado!
Para instalar OpenSSL si no lo tiene, intente:
Debian / Ubuntu:
sudo apt-get install openssl
RedHat / CentOS:
yum install openssl
¿Alguien conoce el comando para determinar si OpenSSL y mod_ssl están instalados en apache2?
Deberías instalar este mod de Apache, http://httpd.apache.org/docs/2.0/mod/mod_info.html , básicamente te da un resumen de los mods que estás usando y la configuración de Apache. Tengo esto habilitado en mi Apache y me da esta información para mi sitio web,
Versión del servidor: 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
En mi caso, así es como obtuve la información:
encuentre dónde se encuentran los registros de apache, y vaya allí, en mi caso:
cd /var/log/apache2
encuentre en qué registro se puede encontrar la información de openssl:
grep -i apache.*openssl *_log
eg error_log ...
para obtener información reciente, reinicie apache, por ejemplo
rcapache2 restart # or service apache2 restart
comprobar las últimas entradas en el registro, por ejemplo
/var/log/apache2 # tail error_log
[Thu Jun 09 07:42:24 2016] [notice] Apache/... (Linux/...) mod_ssl/2.2.22 OpenSSL/1.0.1t ...
Habilite mod_ssl en httpd.conf y reinicie Apache. Verá la información de openssl en error.log como a continuación
[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''
La instalación predeterminada de Apache está configurada para enviar esta información en la línea de encabezado del servidor . Puede ver esto para cualquier servidor usando el comando 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
Para determinar 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
o
# rpm -qa | grep ssl
Si acaba de ejecutar openssl
en su terminal, debe presentar el shell openSSL. Mi primera pista para saber que no tenía mode_ssl
fue cuando recibí el siguiente error después de agregar SSLEngine on
en mi archivo de host virtual:
Invalid command ''SSLEngine'', perhaps misspelled or defined by a module not included in the server configuration
En centos solo tuve que instalarlo a través de yum install mod_ssl
Si tiene PHP instalado en su servidor, puede chequearlo en tiempo de ejecución usando la función " extension_loaded ". Solo así:
<?php
if (!extension_loaded(''openssl'')) {
// no openssl extension loaded.
}
?>
Simplemente busque en el archivo ssl_engine.log en su directorio de registro de Apache, donde debería encontrar algo como:
[ssl:info] [pid 5963:tid 139718276048640] AH01876: mod_ssl/2.4.9 compiled against Server: Apache/2.4.9, Library: OpenSSL/1.0.1h
Usando Apache 2, puede ver qué módulos están actualmente cargados por el daemon HTTP ejecutando el siguiente comando:
apache2ctl -M
La opción -M
es en realidad solo un parámetro pasado a httpd .
apache2ctl es una interfaz del servidor Apache HyperText Transfer Protocol (HTTP). Está diseñado para ayudar al administrador a controlar el funcionamiento del daemon 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.
Use los siguientes comandos.
$ openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013 (or similar output)
Para RHEL / CentOS / Fedora:
$ httpd -t -D DUMP_MODULES | grep ssl
ssl_module (shared)
Para Ubuntu / Debian
$ apache2 -t -D DUMP_MODULES | grep ssl
ssl_module (shared)
Para SUSE
$ httpd2 -t -D DUMP_MODUELS | grep ssl
ssl_module (shared)
Usualmente, cuando compila su servidor apache2 (o lo instala por paquetes), puede verificar cualquier directiva que esté disponible para ser utilizada al tocar este comando:
~# $(which httpd) -L | grep SSL # on RHEL/CentOS/Fedora
~# $(which apache2) -L | grep SSL # on Ubuntu/Debian
Si no ve ninguna directiva SSL *, significa que no tiene apache2 con compilado mod_ssl.
Espera que ayude;)
Si tiene PHP instalado en su servidor, puede crear un archivo php, vamos a llamarlo phpinfo.php y agregar este <?php echo phpinfo();?>
, Y abrir el archivo en su navegador, esto muestra información sobre su sistema entorno, para encontrar rápidamente información sobre sus módulos cargados Apache, busque ''Módulos cargados'' en la página resultante.