Nginx SSL 인증서를 설치하는 방법

Nginx SSL 인증서를 설치하는 방법

2022-10-18 last update

4 minutes reading nginx SSL
SSL로 실행되는 모든 사이트는 기본 포트 443에서 https 프로토콜을 사용합니다. SSL은 서버와 클라이언트 간의 데이터를 암호화하여 안전한 데이터 통신을 제공합니다. 이 기사는 Nginx 서버에서 SSL을 구성하는 데 도움이 될 것입니다. 이 예에서는 자체 서명된 인증서를 사용하고 있습니다.

1단계 – Nginx 웹 서버 설치

시스템에 Nginx가 이미 설치되어 있다고 가정하지만 아직 설치하지 않은 경우 다음 명령을 사용하여 설치합니다.
$ sudo apt-get install nginx

2단계 – SSL 인증서 받기

SSL 인증서를 생성하기 위한 첫 번째 요구 사항은 개인 키와 CSR을 생성하는 것입니다. CSR은 공개 키를 포함하여 도메인에 대한 모든 세부 정보가 있는 파일입니다. 먼저 csr과 key를 생성할 디렉토리를 생성합니다.
# mkdir /etc/nginx/ssl/
# cd /etc/nginx/ssl/
이제 다음 명령으로 CSR 및 키 파일을 생성합니다. 도메인에 따라 example.com.key 및 example.com.csr 파일의 이름을 변경합니다. 이 명령은 도메인에 대한 정보를 입력하도록 요청합니다. Read more CSR 생성에 대해.
# openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr
CSR을 생성한 후 Geotrust, Comodo, Digicert 또는 GoDaddy 등과 같은 인증서 공급자에게 SSL 인증서를 요청합니다. CA에서 인증서를 받은 후 기본 인증서와 중간 인증서 파일을 단일 파일로 결합합니다.
# cat example.com.crt DigiCertCA.crt >> example.com.pem

3단계: SSL로 VirtualHost 설정

Nginx 설정 파일/etc/nginx/conf.d/example.com.conf를 수정하고 다음 값을 추가해 봅시다.
# HTTPS Server Block

server {

    listen   443;
    server_name example.com www.example.com;

    root /var/www/xyz.com/httpdocs;
    index index.html index.htm;

    ssl on;
    ssl_certificate /etc/nginx/ssl/example.com.pem;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
    ssl_prefer_server_ciphers on;
}

4단계 – NGINX 다시 시작

마지막으로 변경 사항이 적용되도록 nginx 서버를 다시 시작합니다.
# service nginx restart