본문 바로가기
웹/nginx

윈도우에서 비밀번호 있는 SSL 인증서 NGINX에 적용하기

by 크라크라 2025. 3. 24.

안녕하세요. 매년 누군가는 웹서비스의 안전한 사용을 위해서 SSL 인증서를 교체하고 계시겠네요.

일반적으로 SSL 인증서에는 비밀번호가 포함되어 있습니다. 다만 기존에 윈도우에서 SSL 인증서 비밀번호가 있는 경우 그냥 적용이 되지 않았습니다. 

 

 종종 SSL 인증서를 정상적으로 적용했다고 뜨고, 에러도 나지 않는데도 불구하고 실제로 외부에서 접근해보면 connection refused 와 같은 에러메시지를 받게 됩니다. nginx 로그 상에는 에러로 나오지 않는데, 외부에서는 접근이 불가능한 상황인 것이죠. 

 

이럴 때는 우선적으로 SSL 인증서에 암호가 있는지를 확인해보면 됩니다. 그리고 만약 SSL 인증서에 암호가 있다면 2가지 옵션이 있습니다. SSL 인증서에서 암호를 제외한 버전을 재생성해서 사용하는 방법과, SSL 인증서의 암호를 nginx 에게 알려주고 사용하는 방법입니다.

 

암호 정보가 포함되어 있는 개인키 파일 (key.pem) 파일은 열어보면 다음처럼 암호정보가 포함되어 있습니다.

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES ~~~~~~


alkdjsfhlasdjhflkajshflkjhadslkjfh
alsdkjfhldkajshflkajshflkjashf
-----END RSA PRIVATE KEY-----

 

이 파일을 그대로 사용하기 위한 nginx 설정방법은 다음과 같습니다.

 

1. pwd 를 입력할 별도의 파일을 생성합니다. (ex.파일명 : nginx.pwd )

2. 인증서의 암호만을 해당 파일에 작성하고 저장합니다. 

3. nginx.conf 파일을 수정합니다. 

server {
   listen         443 ssl;
   server_name    test.test.co.kr;
   
   ssl_password_file     file_path\nginx.pwd;
   ssl_certificate       file_path\nginx_cert.pem;
   ssl_certificate_key   file_path\nginx_key.pem;
   
  
}

 

이후에 nginx reload 혹은 nginx 재시작을 하게 되면 암호화된 ssl 파일을 문제없이 사용 가능합니다. 

 

 

' > nginx' 카테고리의 다른 글

nginx 응답에 gzip 압축 설정하기  (0) 2023.09.20
nginx 에 spa (vue, react) 간단 설정하기  (0) 2023.09.20

댓글