出于做事器安全缘故原由(虽然不是紧张的要担心的威胁),建议你禁用或隐蔽此信息,避免那些针对你的做事器的攻击者知道你是否运行了 PHP。 -- Aaron Kili
编译自: http://www.tecmint.com/hide-php-version-http-header/作者: Aaron Kili
译者: geekpi
PHP 配置默认许可做事器在 HTTP 相应头 X-Powered-By 中显示安装在做事器上的 PHP 版本。
出于做事器安全缘故原由(虽然不是紧张的要担心的威胁),建议你禁用或隐蔽此信息,避免那些针对你的做事器的攻击者知道你是否运行了 PHP。
假设你做事器上安装的特定版本的 PHP 具有安全漏洞,而攻击者理解到这一点,他们将更随意马虎利用漏洞并通过脚本访问做事器。
在我以前的文章中,我已经展示了如何隐蔽 apache 版本号[1],你已经看到如何不再显示 apache 的安装版本。但是如果你在你的 apache 做事器上运行 PHP,你还须要隐蔽 PHP 的安装版本,这我们将在本文中展示。
因此,在本文中,我们将阐明如何隐蔽或关闭做事器 HTTP 相应头中的 PHP 版本号。
此设置可以在加载的 PHP 配置文件中配置。如果你不知道此配置文件在做事器上的位置,请运行以下命令找到它:
$ php -i | grep \公众Loaded Configuration File\"大众PHP 配置文件位置
---------------- 在 CentOS/RHEL/Fedora 上----------------Loaded Configuration File => /etc/php.ini
---------------- 在 Debian/Ubuntu/Linux Mint 上----------------
Loaded Configuration File => /etc/php/7.0/cli/php.ini
在对 PHP 配置文件进行任何变动之前,我建议您首先备份您的 PHP 配置文件,如下所示:
----------------在 CentOS/RHEL/Fedora 上----------------$ sudo cp /etc/php.ini /etc/php.ini.orig
---------------- 在 Debian/Ubuntu/Linux Mint 上----------------
$ sudo cp /etc/php/7.0/cli/php.ini /etc/php/7.0/cli/php.ini.orig
用你最喜好的编辑器,利用超级用户权限打开文件:
---------------- 在 CentOS/RHEL/Fedora 上----------------$ sudo vi /etc/php.ini
----------------在 Debian/Ubuntu/Linux Mint 上----------------
$ sudo vi /etc/php/7.0/cli/php.ini
定位到关键词 expose_php,并将值设置成 Off:
expose_php = Off保存并退出文件。之后,重启 web 做事器:
---------------- 利用 SystemD ----------------$ sudo systemctl restart httpd
或
$ sudo systemctl restart apache2
---------------- 利用 SysVInit ----------------
$ sudo service httpd restart
或
$ sudo service apache2 restart
末了,不过同样主要,利用下面的命令检讨做事器 HTTP 相应头是否仍旧显示你的 PHP 版本号。
$ lynx -head -mime_header http://localhost或者
$ lynx -head -mime_header http://server-address
这里的标志含义是:
-head – 发送一个要求 mime 报头的 HEAD 要求。
-mime_header – 打印所提取文档的 MIME 标头及其源代码。
把稳: 确保你系统中已经安装了命令行 web 浏览器 lynx[2]。
便是这样了!
在本文中,我们阐明了如何隐蔽做事器 HTTP 相应头中的 PHP 版本号以保护 web 做事器免受可能的攻击。你可以不才面的评论栏中留下你的想法或者干系的问题。
作者简介:
Aaron Kili 是 Linux 和 F.O.S.S 爱好者,将来的 Linux SysAdmin 及 web 开拓者,目前是 TecMint 的内容创作者,他喜好用电脑事情,并坚信分享知识。
via: http://www.tecmint.com/hide-php-version-http-header/
作者:Aaron Kili[3] 译者:geekpi 校正:jasminepeng
本文由 LCTT[4] 原创编译,Linux中国 名誉推出
[1]: 如何隐蔽 apache 版本号 - https://linux.cn/article-8175-1.html
[2]: 命令行 web 浏览器 lynx - http://www.tecmint.com/command-line-web-browsers/
[3]: Aaron Kili - http://www.tecmint.com/author/aaronkili/
[4]: LCTT - https://github.com/LCTT/TranslateProject