본문으로 건너뛰기

Nginx 서버에 SSL 인증서 설치

Nginx 서버에 SSL 인증서를 설치하면 Nginx 서버에서 HTTPS 보안 접속을 지원할 수 있습니다. 본문에서는 Nginx 서버에 SSL 인증서를 설치하는 방법을 설명합니다.

설명

본 문서에서는 Nginx 버전을 nginx/1.18.0 예시로 설명합니다. 설치 전에 443 포트가 사용 중이 아닌지 확인하시기 바랍니다. 443 포트가 이미 사용 중인 경우 인증서 설치 시 다른 포트를 바인딩해 주세요.

인증서 획득​

  1. 인증서 발급이 완료되면 압축(.zip) 형식의 인증서 파일이 발급됩니다. 압축 파일 안에는 Tomcat, Nginx, IIS, Apache 총 4가지 인증서 형식에 대응하는 4개의 폴더가 있으며, Nginx 서버에는 Nginx 폴더 내의 인증서를 사용합니다.
  2. Nginx 폴더에는 다음 두 개의 파일이 포함되어 있습니다.
  • domain_com_integrated.crt 인증서 파일
  • domain_com.key 개인키 파일

SSL 인증서 설치​

  1. 획득한 domain_com_integrated.crt 인증서 파일과 domain_com.key 개인키 파일을 로컬 디렉터리에서 Nginx 서버의 /etc/nginx/ssl 디렉터리로 복사합니다.
  • /etc/nginx/ssl 디렉터리가 존재하지 않는 경우 mkdir -p /etc/nginx/ssl 명령으로 생성할 수 있습니다.
  • 설치 방식에 따라 디렉터리 위치가 다를 수 있으므로 실제 환경을 기준으로 확인하시기 바랍니다.
  1. Nginx 루트 디렉터리의 nginx.conf 파일을 편집합니다. 수정할 내용은 다음과 같습니다.
nginx.conf
server {
listen 443 ssl;
#填写自己的域名,多个域名用空格隔开
server_name racent.com;

#填写证书文件的相对路径或绝对路径
ssl_certificate cloud.tencent.com_bundle.crt;

#填写私钥文件的相对路径或绝对路径
ssl_certificate_key cloud.tencent.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;
ssl_prefer_server_ciphers on;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}

주의

버전 문제로 인해 구성 파일 작성 방식이 다를 수 있습니다. 예를 들어 Nginx 버전이 nginx/1.15.0 미만인 경우 listen 443 ssl 대신 listen 443와 ssl on를 사용하세요.

수정 후 구성 파일을 저장하고 다음 명령을 실행하세요:

nginx -t         #验证配置文件是否正确
nginx -s reload #重载 Nginx

SSL 인증서 테스트​

브라우저 주소창에 SSL 인증서가 바인딩된 도메인을 입력하여 SSL 인증서가 정상적으로 설치되었는지 테스트하세요. 정상적으로 설치된 경우 브라우저 주소창에 자물쇠 모양의 보안 아이콘이 표시되며, 해당 아이콘을 클릭하면 인증서 정보를 확인할 수 있습니다.

SSL 인증서 적용 효과

HTTP에서 HTTPS로 자동 전환 보안 설정(선택 사항)​

HTTP 요청을 HTTPS(으)로 자동 리디렉션하려면 다음 단계를 따라 설정할 수 있습니다:

  1. Nginx의 리디렉션 기능을 사용하여 HTTP의 server에 return 301 https://$host$request_uri;을(를) 추가하면 HTTP 요청이 HTTPS(으)로 리디렉션됩니다. 아래 내용을 수정하세요:
server {
listen 80;
#把http的域名请求转成https
return 301 https://$host$request_uri;
}

  1. Nginx 서버를 재시작하면 도메인으로 접속할 수 있으며, HTTP에서 HTTPS(으)로 자동 이동되도록 구현합니다.