Comment masquer le numéro de version PHP dans l'en-tête HTTP

Comment masquer le numéro de version PHP dans l'en-tête HTTP

La configuration PHP, par défaut, permet à l'en-tête de réponse HTTP du serveur 'X-alimenté par X'Pour afficher la version PHP installée sur un serveur.

Pour des raisons de sécurité du serveur (mais pas une menace majeure à s'inquiéter), il est recommandé de désactiver ou de masquer ces informations aux attaquants qui pourraient cibler votre serveur en voulant savoir si vous exécutez PHP ou non.

En supposant qu'une version particulière de PHP installée sur votre serveur a des trous de sécurité, et de l'autre côté, les attaquants apprennent à le savoir, il deviendra beaucoup plus facile pour eux d'exploiter les vulnérabilités et d'accéder au Sever via les scripts.

Dans mon article précédent, j'ai montré comment masquer le numéro de version Apache, où vous avez vu comment éteindre la version installée Apache. Mais si vous exécutez PHP dans votre serveur Web Apache, vous devez également masquer la version installée PHP, et c'est ce que nous allons montrer dans cet article.

Par conséquent, dans cet article, nous expliquerons comment masquer ou désactiver le numéro de version PHP dans l'en-tête de réponse HTTP du serveur.

Ce paramètre peut être configuré dans le fichier de configuration PHP chargé. Dans le cas où vous ne connaissez pas l'emplacement de ce fichier de configuration sur votre serveur, exécutez la commande ci-dessous pour la trouver:

$ php -i | grep "fichier de configuration chargé" 
Emplacement du fichier de configuration PHP
---------------- Sur Centos / Rhel / Fedora ----------------  Fichier de configuration chargé => / etc / php.ini ---------------- Sur Debian / Ubuntu / Linux Mint ----------------  Fichier de configuration chargé => / etc / php / 7.0 / CLI / PHP.ini 

Avant d'apporter des modifications dans le fichier de configuration PHP, je vous suggère de faire d'abord une sauvegarde de votre fichier de configuration PHP comme:

---------------- Sur Centos / Rhel / Fedora ----------------  $ sudo cp / etc / php.ini / etc / php.ini.origine ---------------- Sur Debian / Ubuntu / Linux Mint ----------------  $ sudo cp / etc / php / 7.0 / CLI / PHP.ini / etc / php / 7.0 / CLI / PHP.ini.origine 

Ensuite, ouvrez le fichier en utilisant votre éditeur préféré avec des privilèges de super utilisateur comme tel:

---------------- Sur Centos / Rhel / Fedora ----------------  $ sudo vi / etc / php.ini ---------------- Sur Debian / Ubuntu / Linux Mint ----------------  $ sudo vi / etc / php / 7.0 / CLI / PHP.ini 

Localiser le mot-clé exposer_php et définir sa valeur sur Désactivé:

exposer_php = off 

Enregistrer le fichier et quitter. Ensuite, redémarrez le serveur Web comme suit:

---------------- Sur systemd ----------------  $ sudo systemctl redémarrer httpd $ sudo systemctl redémarrer apache2 ---------------- Sur sysvinit ----------------  $ sudo service httpd redémarrer $ sudo service apache2 redémarrer 

Enfin et surtout, vérifiez si l'en-tête de réponse HTTP Server affiche toujours votre numéro de version PHP en utilisant la commande ci-dessous.

$ lynx -head -mime_header http: // localhost ou $ lynx -head -mime_header http: // server-address 

Où les drapeaux:

  1. -diriger - Envoie une demande de tête pour les en-têtes MIME.
  2. -mime_header - imprime l'en-tête mime d'un document récupéré avec sa source.

Note: Assurez-vous que le navigateur Web Lynx - ligne de commande est installé sur votre système.

C'est ça! Dans cet article, nous avons expliqué comment masquer le numéro de version PHP dans l'en-tête de réponse HTTP du serveur afin de sécuriser un serveur Web à partir d'attaques possibles. Vous pouvez ajouter une opinion à ce post ou peut-être poser n'importe quelle question connexe via le formulaire de commentaire ci-dessous.