admin
不忘初心,方得始终
级别: 管理员
全看 | | | 0楼 发表于:2015-07-13 11:49

彻底隐藏Nginx版本号与PHP版本号

— 本帖被 admin 执行置顶操作(2015-07-13) —
  Nginx默认是显示版本号的。前些时间网上曝出Nginx的版本漏洞,如果你的网站通过curl -I http://域名或者IP 可以看到Nginx的版本,那么这些信息就有可能被攻击者利用。从网站安全的角度来说,隐藏掉Nginx的版本号相对安全一些。
具体方法是:
1.进入Nginx的配置文件目录,vim nginx.conf,在http{-}的区域添加:server_tokens off;
  http {
          ......省略
           sendfile        on;
           keepalive_timeout  60;
           server_tokens off;
           ......省略
    }
   2. 编辑php-fpm的配置文件,如:fastcgi.conf、fastcgi_params、fcgi.conf文件,修改方法为:
  找到:fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
  改为:fastcgi_param  SERVER_SOFTWARE    nginx;
   3.重新加载nginx的配置文件:/usr/local/nginx/sbin/nginx -s reload
    或者平滑重启Nginx:  
    查找nginx主进程号:ps -ef|grep "nginx: master process"|grep -v "grep" |awk -F ' ' '{print $2}'
    kill -HUP nginx主进程号
  隐藏PHP的版本号,需要修改PHP的配置文件php.ini。具体过程如下:
  vim php.ini,
  找到expose_php = On
    改为:expose_php = Off
   重启PHP的PHP-fpm:pkill php-fpm
   /usr/local/php/sbin/php-fpm
  这样,隐藏nginx与PHP的版本号,增加了网站的安全性!