Windows 환경에서 nginx SSL 적용하기

hanana·2023년 12월 7일

가비아를 통해서 DNS를 만들어 사용중이였는데
SSL 인증서를 사용하자는 요청이 들어왔다.

STEP 1. 가비아 SSL인증서 받기

결제 관련된 부분은 회사 선배님이 대신 진행하였고,
KEY 관련된 파일을 받은채로 SSL을 적용하려고 한다.

STEP 2. crt파일을 pem 파일로 합치기

가이드를 보는 중 .pem 파일을 어디 설정에 넣으라는 얘기가 있었다.
(받은 파일에는 pem파일이 없는데)

찾아본 결과 .crt파일을 합쳐서 .pem 파일로 만들어야 하는 과정이 필요했다.

https://customer.gabia.com/manual/hosting/437/16980

메모장을 열고

[도메인인증서] [체인인증서] [루트인증서]
  1. 순서로 파일을 불러와서 합친 후 [fullchain.pem] 파일로 만들어주었다.
  2. .key 파일도 마찬가지로 [priv.pem] 파일로 만들어주었다.

STEP3. nginx.conf 파일 변경하기

https쪽 설정부분을 손봐준다.

server {
  listen       443 ssl;
  server_name  www.myDomain.co.kr; # 도메인명추가

  ssl_certificate      fullchain.pem; # 여기변경
  ssl_certificate_key  privkey.pem; # 여기변경

  ssl_session_cache    shared:SSL:1m;
  ssl_session_timeout  5m;

  ssl_ciphers  HIGH:!aNULL:!MD5;
  ssl_prefer_server_ciphers  on;

  location ~ ^/[a-zA-Z0-9]+(.*) {
	build파일 경로
}

  error_page   500 502 503 504  /50x.html;
  location = /50x.html {
    root   html;
}

주의점

내경우 기본적으로 server_name이 localhost로 되어있었는데 이를 반드시 도메인명 으로 변경해주자.

저거 발견못해서 아마어마한 삽질을 경험했다....

nginx 를 재실행해주면
!! 뚜둥!!

뭔가 에러가 발생했지만 정상적으로 ssl 적용이 된 것을 확인할 수 있다...!

profile
성숙해지려고 노력하지 않으면 성숙하기까지 매우 많은 시간이 걸린다.

2개의 댓글

comment-user-thumbnail
2024년 4월 23일

검색에 노출되어서 제 회사 사이트에 적용해 보았는데요, 보안키 경로를 NGINX 폴더에 놓고
메모장으로 pem 확장자로 키파일과 보안,체인,룻 내용을 저장하면 적용이 되는 걸까요?
conf 파일 주석을 삭제하고 저장하면 nginx가 안켜지네요.. 퍼블리싱을 조금 해본 실력이라 역시 어렵네요...

1개의 답글