일기장
2020-12-23 http 요청을 https로 redirect
Nj
2020. 12. 23. 14:07
기본적으로 http 요청은 불허하고 https만 사용한다.
이유는 서버단에서 데이터를 주고 받을때 데이터 자체를 암호화하지 않고 있어서 패킷 까보면 다 보이기 때문이다.
보안 강화를 위함이다.
2년 주기로 인증서를 돈주고 사서 갱신해주고 있지만 그정도는 할만하다.
그런데 간혹 http 요청을 못 빼는 상황이 있다.
예를 들자면 jenkins... 분명히 찾아보면 어딘가 설정이 있을텐데 못 찾았다.
결국 관련 url로 http 요청이 오면 https로 redirect 하는 것으로 넘겼다.
참고로 앞단은 nginx를 사용하고 있다.
1. https 요청이 아니면 403 처리
server {
return 403;
}
2. http 요청인데 조건이 맞으면 redirect
server {
listen 80;
server_name stage-service.enqdeq.net;
access_log /var/log/nginx/stage-service_80.access.log json-log;
if ($http_x_forwarded_proto != 'https') {
rewrite ^(.*) https://$host$1 redirect;
}
}
대신에 로그는 남겨서 어떤 요청인지 들어온건지 이력은 남겨서 감시한다.