PHP wersiýa belgisini HTTP sözbaşysynda nädip gizlemeli


PHP konfigurasiýasy, adaty ýagdaýda serwere HTTP jogap sözbaşysyna “X-Powered-By” serwerde gurlan PHP wersiýasyny görkezmäge mümkinçilik berýär.

Serwer howpsuzlygy sebäpli (aladalanmak üçin uly howp bolmasa-da), PHP işleýändigiňizi ýa-da ýokdugyňyzy bilmek isläp serweriňizi nyşana alýan hüjümçilerden bu maglumatlary öçürmek ýa-da gizlemek maslahat berilýär.

Serweriňizde gurnalan PHP-iň belli bir wersiýasynda howpsuzlyk deşikleri bar diýsek, beýleki tarapdan hüjümçiler muny bilseler, gowşak goralan ýerlerden peýdalanmak we skriptler arkaly kesişmek has aňsat bolar.

Öňki makalamda, apache gurnalan wersiýasyny nädip öçürmelidigini gören apache wersiýa belgisini nädip gizlemelidigini görkezdim. Apöne apache web serweriňizde PHP işleýän bolsaňyz, PHP gurnalan wersiýasyny hem gizlemeli we bu makalada görkezjek zadymyz.

Şonuň üçin bu ýazgyda serwer HTTP jogap sözbaşysynda PHP wersiýa belgisini nädip gizlemelidigini ýa-da öçürmelidigini düşündireris.

Bu sazlama, ýüklenen PHP konfigurasiýa faýlynda düzülip bilner. Serweriňizdäki bu konfigurasiýa faýlynyň ýerleşýän ýerini bilmeseňiz, ony tapmak üçin aşakdaky buýrugy işlediň:

$ 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

PHP konfigurasiýa faýlynda üýtgeşmeler girizmezden ozal, PHP konfigurasiýa faýlyňyzyň ätiýaçlyk nusgasyny etmegiňizi maslahat berýärin:

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

Soňra halaýan redaktoryňyzy ulanyp, faýly açyň:

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

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

expose_php açar sözüni tapyň we onuň bahasyny Off:

expose_php = off

Faýly ýazdyryň we çykyň. Ondan soň web serwerini aşakdaky ýaly täzeden açyň:

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

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

Iň soňkusy, serwer HTTP jogap sözbaşysynyň aşakdaky buýrugy ulanyp, PHP wersiýa belgiňizi görkezýändigini ýa-da ýokdugyny barlaň.

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

baýdaklar nirede:

  1. -head - mime sözbaşylary üçin HEAD haýyşyny iberýär.
  2. -mime_header - alnan resminamanyň MIME sözbaşysyny çeşmesi bilen bilelikde çap edýär.

Bellik: Ulgamyňyzda lynx - buýruk setiri web brauzeriniň bardygyna göz ýetiriň.

Bu! Bu makalada, web serwerini bolup biljek hüjümlerden goramak üçin, HTTP jogap sözbaşysynda PHP wersiýa belgisini nädip gizlemelidigini düşündirdik. Bu ýazga pikir goşup bilersiňiz ýa-da aşakdaky düşündiriş formasy bilen baglanyşykly islendik soragy berip bilersiňiz.