Ocultar el número de versión de Php

¿Cómo Ocultar el número de versión de Php? ¿Para que sirve esto? Luego de ocultar la versión de Apache de nuestro servidor web, también se aconseja guardar en secreto la versión que esté ejecutando de Php.El asunto es que si un hacker conoce alguno de estos datos, sabe también cuales son nuestras vulnerabilidades y por tanto cómo y dónde atacar.

La configuración de PHP, de forma predeterminada, permite que el encabezado de respuesta HTTP del servidor ‘ X-Powered-By ‘ muestre la versión de PHP instalada en un servidor.

Por razones de seguridad del servidor (aunque no es una gran amenaza de la que preocuparse), se recomienda que deshabilite u oculte esta información de los atacantes que podrían estar dirigiendo su servidor al querer saber si está ejecutando PHP o no.

Asumiendo que una versión particular de PHP instalada en su servidor tiene agujeros de seguridad, y por otro lado, los atacantes se enteran de esto, será mucho más fácil para ellos explotar vulnerabilidades y obtener acceso al servidor a través de scripts.

Por lo tanto, en esta publicación, explicaremos cómo ocultar o apagar el número de versión de PHP en el encabezado de respuesta HTTP del servidor.

Esta configuración se puede configurar en el archivo de configuración de PHP ini. En caso de que no conozca la ubicación de este archivo de configuración en su servidor, ejecute el siguiente comando para encontrarlo:

$ php -i | grep "Loaded Configuration File"
PHP Configuration Loacalización del archivo o fichero
---------------- On CentOS/RHEL/Fedora ---------------- 
Loaded Configuration File => /etc/php.ini
---------------- On Debian/Ubuntu/Linux Mint ---------------- 
Loaded Configuration File => /etc/php/7.0/cli/php.ini

Antes de realizar cualquier cambio en el archivo de configuración de PHP, le sugiero que primero haga una copia de seguridad de su archivo de configuración de PHP así:

---------------- On CentOS/RHEL/Fedora ---------------- 
$ sudo cp /etc/php.ini /etc/php.ini.orig
---------------- On Debian/Ubuntu/Linux Mint ---------------- 
$ sudo cp /etc/php/7.0/cli/php.ini  /etc/php/7.0/cli/php.ini.orig  

A continuación, abra el archivo usando su editor favorito con privilegios de superusuario como ese:

---------------- On CentOS/RHEL/Fedora ---------------- 
$ sudo vi /etc/php.ini
---------------- On Debian/Ubuntu/Linux Mint ---------------- 
$ sudo vi /etc/php/7.0/cli/php.ini

Localice la palabra expose_php y establezca su valor en Off:

expose_php = off

Guarde el archivo y cierre; Luego, reinicie el servidor web de la siguiente manera:

---------------- On SystemD ---------------- 
$ sudo systemctl restart httpd
$ sudo systemctl restart apache2 
---------------- On SysVInit ---------------- 
$ sudo service httpd restart
$ sudo service apache2 restart

Por último, compruebe si el encabezado de respuesta HTTP del servidor sigue mostrando su número de versión de PHP utilizando el siguiente comando.

$ lynx -head -mime_header http://localhost 
OR
$ lynx -head -mime_header http://server-address
  1. -head – envía una solicitud HEAD para los encabezados de mime.
  2. -mime_header – imprime el encabezado MIME de un documento recuperado junto con su fuente.

Nota : asegúrese de tener instalado lynx – navegador web de línea de comandos en su sistema.

Leer también: Cómo obtener un certificado SSL GRATUITO usando Let’s Encrypt para Apache