Header Server 정보 수정하기, 감추기
Nginx를 사용하는 ununtu 서버에서 보안을 위해 Header의 Server 정보를 숨기고 싶을 때,
아래의 3가지 방법을 통해 Server 정보를 단계적으로 숨길 수 있다.
1. nginx 버전 정보 숨기기
2. Server 데이터 대체 하기
3. Server 헤더 삭제하기
nginx.conf 기본 설정 확인
Server Header 정보는 nginx.conf 파일에서를 수정할 수 있다. 보통 ubuntu에서 /etc/nginx/nginx.conf 위치에 있다.
nginx.conf 기본 설정
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf
}
위와 같은 기본 설정에서는 Header의 Server에 서버의 종류와 버전까지 함께 나타난다.
1. nginx 버전 정보 숨기기
nginx 버전 정보를 숨기기 위해서는 server_tokens off; 를 활성화하면 된다.
worker_processes 1;
events {
worker_connections 1024;
}
http {
....
server_tokens off; ## 추가된 설정
...
}
2. Header Server 데이터 대체하기
Header Server 데이터를 임의의 값으로 대체하기 위해서는 nginx-extras 설치 후, more_set_headers "Server: 대체텍스트"; 설정을 추가해주면 된다.
$ apt install nginx-extras
worker_processes 1;
events {
worker_connections 1024;
}
http {
....
server_tokens off;
more_set_headers "Server: SMILE"; ## 추가된 설정
...
}
3. Header Server 지우기
Header Server를 지우기 위해서는 nginx-extras 설치 후, more_clear_headers Server; 설정을 추가해주면 된다.
$ apt install nginx-extras
worker_processes 1;
events {
worker_connections 1024;
}
http {
....
server_tokens off;
more_clear_headers Server; ## 추가된 설정
...
}
Nginx 재시작
nginx.conf 변경 후에는 nginx 서비스를 재시작 해야 변경사항이 적용된다.
$ systemctl restart nginx
<참고>
- https://serverfault.com/questions/214242/can-i-hide-all-server-os-info
- https://blog.rgbplace.com/372
'# Development > DevOps' 카테고리의 다른 글
[Nginx] 같은 도메인에 다른 어플리케이션(WAS) 연결: location 추가하기 (0) | 2023.07.13 |
---|---|
[Nginx] Ubuntu Nginx SSL 인증서 설정하기 (HTTPS 연결) (0) | 2023.07.07 |
[Nginx] ubuntu 환경에서 Flask 배포하기 (Github, uWSGI, Socket) (0) | 2023.02.27 |
[Nginx] Nginx란 무엇인가? (0) | 2023.02.14 |