nginx 정리

최근 에 nginx 의 안전성 에 대한 몇 가지 방법 을 정 리 했 는데,
    nginx 버 전 번 호 를 숨 기 는 것 은 간단 합 니 다. nginx 의 HttpCoreModule 은 server 라 는 이름 을 제공 합 니 다.tokens 명령, 이 명령 을 "server tokens off" 로 설정 하면 됩 니 다.
Nginx 헤더 정보 설정
Nginx 사용 ngxheaders_more 모듈 은 출구, 입구 의 Header 정 보 를 추가, 삭제 합 니 다.
ngx_headers_프로젝트 홈 페이지
기본적으로 이 모듈 은 Nginx 의 원본 코드 에 추가 되 지 않 았 습 니 다. 관련 기능 을 사용 하려 면 Nginx 를 컴 파일 할 때 이 모듈 을 추가 해 야 합 니 다.
본인 서버 의 Nginx 는 컴 파일 할 때 이 모듈 에 가입 하지 않 았 습 니 다. - V 를 사용 하여 현재 Nginx 의 컴 파일 파 라미 터 를 보십시오.
[root@z-dig ~]# nginx -V
nginx version: www.z-dig.com
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=www --group=www \
--with-http_ssl_module --with-http_stub_status_module
[root@z-dig ~]#

홈 페이지 에서 모듈 다운로드:
[root@z-dig ~]# cd /usr/local/src/
[root@z-dig src]# wget 、https://codeload.github.com/openresty/headers-more-nginx-module/zip/master\
 -O ./headers-more-nginx-module-master.zip
[root@z-dig src]# unzip headers-more-nginx-module-master.zip

Nginx 를 다시 컴 파일 하기 전에 www. z - dig. com 의 Header 정 보 를 요청 합 니 다.
[root@KVM ~]# curl -I www.z-dig.com
HTTP/1.1 200 OK
Server: www.z-dig.com
Date: Sat, 23 Apr 2016 11:25:15 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
X-Powered-By: PHP/5.6.17
Vary: Accept-Encoding, Cookie
Cache-Control: max-age=3, must-revalidate
WP-Super-Cache: Served supercache file from PHP
[root@KVM ~]#

현재 Nginx 를 다시 컴 파일 하고 부 드 럽 게 업데이트 합 니 다.
[root@z-dig ~]# cd /usr/local/src/nginx
[root@z-dig nginx]# make clean
rm -rf Makefile objs
[root@z-dig nginx]#./configure --prefix=/usr/local/nginx --user=www --group=www \
--with-http_ssl_module --with-http_stub_status_module \
--add-module=/usr/local/src/headers-more-nginx-module-master
[root@z-dig nginx]# make
[root@z-dig nginx]# make install
[root@z-dig nginx]# kill -s USR2 `cat /usr/local/nginx/logs/nginx.pid`
[root@z-dig nginx]# ps -ef|grep nginx
root      2017     1  0 Apr21 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
www       2018  2017  0 Apr21 ?        00:00:30 nginx: worker process     
root     21717  2017  0 19:41 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
www      21718 21717  0 19:41 ?        00:00:00 nginx: worker process     
root     21856 18312  0 19:45 pts/2    00:00:00 grep nginx
[root@z-dig nginx]# kill -s WINCH `cat /usr/local/nginx/logs/nginx.pid.oldbin`
[root@z-dig nginx]# ps -ef|grep nginx
root      2017     1  0 Apr21 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
root     21717  2017  0 19:41 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
www      21718 21717  0 19:41 ?        00:00:00 nginx: worker process     
root     21943 18312  0 19:49 pts/2    00:00:00 grep nginx
[root@z-dig nginx]# kill -s QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
[root@z-dig nginx]# ps -ef|grep nginx
root     21717     1  0 19:41 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
www      21718 21717  0 19:41 ?        00:00:00 nginx: worker process     
root     22050 18312  0 19:54 pts/2    00:00:00 grep nginx
[root@z-dig nginx]#

이 Nginx 는 다시 컴 파일 되 어 부 드 럽 게 업그레이드 되 었 습 니 다.
Nginx 설정 파일 에 코드 를 추가 하고 이전 요청 사 이 트 를 Header 의 X - Powered - by 와 WP - Super - Cache 로 되 돌려 줍 니 다.
more_clear_headers 'X-Powered-By';
more_clear_headers 'WP-Super-Cache';

 
Nginx 설정 헤더 
    more_set_headers    "test($hostname)";
    more_set_headers    "test:Mr.liang";
[root@z-dig ~]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@z-dig ~]# nginx -s reload

효과 다시 보기 요청:
[root@KVM ~]# curl -I www.z-dig.com
HTTP/1.1 200 OK
Server: www.z-dig.com
Date: Sat, 23 Apr 2016 12:03:04 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding, Cookie
Cache-Control: max-age=3, must-revalidate

 
[root@KVM ~]#
NGINX 버 전 이름 변경 임의의 WEB SERVER 위장
 nginx             
  src/core/nginx.h(Nginx     )

#define NGINX_VERSION      "1.8.0"
#define NGINX_VER          "NGINX/" NGINX_VERSION

NGINX_VERSION 은 버 전 번호, NGINXVER 가 이름 이에 요.
 
src / http / ngx 수정http_header_filter_module.c(HTTP ResponseHeader)
static char ngx_http_server_string[] = "Server: nginx" CRLF;

좋은 웹페이지 즐겨찾기