Cum să ascundeți numărul versiunii PHP în antetul HTTP


Configurația PHP, implicit, permite antetului de răspuns HTTP al serverului „X-Powered-By” să afișeze versiunea PHP instalată pe un server.

Din motive de securitate a serverului (deși nu este o amenințare majoră de care să vă faceți griji), este recomandat să dezactivați sau să ascundeți aceste informații de atacatori care ar putea viza serverul dvs. dorind să știe dacă rulați sau nu PHP.

Presupunând că o anumită versiune de PHP instalată pe serverul dvs. are găuri de securitate și, pe de altă parte, atacatorii ajung să cunoască acest lucru, le va deveni mult mai ușor să exploateze vulnerabilitățile și să obțină acces la server prin scripturi.

În articolul meu anterior, am arătat cum să ascund numărul versiunii Apache, unde ați văzut cum să dezactivați versiunea instalată Apache. Dar dacă rulați PHP pe serverul dvs. web Apache, trebuie să ascundeți și versiunea instalată PHP și asta este ceea ce vom arăta în acest articol.

Prin urmare, în această postare, vom explica cum să ascundeți sau să dezactivați afișarea numărului de versiune PHP în antetul de răspuns HTTP al serverului.

Această setare poate fi configurată în fișierul de configurare PHP încărcat. În cazul în care nu cunoașteți locația acestui fișier de configurare pe serverul dvs., executați comanda de mai jos pentru a-l găsi:

$ php -i | grep "Loaded Configuration File"
---------------- 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

Înainte de a face modificări la fișierul de configurare PHP, vă sugerez să faceți mai întâi o copie de rezervă a fișierului de configurare PHP astfel:

---------------- 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  

Apoi deschideți fișierul folosind editorul preferat cu privilegii de super utilizator, astfel:

---------------- On CentOS/RHEL/Fedora ---------------- 
$ sudo vi /etc/php.ini

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

Găsiți cuvântul cheie expose_php și setați-i valoarea la Off:

expose_php = off

Salvați fișierul și ieșiți. După aceea, reporniți serverul web după cum urmează:

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

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

Nu în ultimul rând, verificați dacă antetul de răspuns HTTP al serverului afișează în continuare numărul dvs. de versiune PHP utilizând comanda de mai jos.

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

unde steaguri:

  1. -head – trimite o solicitare HEAD pentru antetele mime.
  2. -mime_header – imprimă antetul MIME al unui document preluat împreună cu sursa acestuia.

Notă: asigurați-vă că aveți instalat pe sistem lynx – browser web de linie de comandă.

Asta este! În acest articol, am explicat cum să ascundeți numărul versiunii PHP în antetul de răspuns HTTP al serverului pentru a securiza un server web de posibile atacuri. Puteți adăuga o opinie la această postare sau poate pune orice întrebare legată prin formularul de comentarii de mai jos.