로컬에서 개발 테스트를 위해 사설인증서를 만들 필요가 생겨서 만들어 봅니다. Ubuntu Linux 22.04 (64bit) 기준으로 설명합니다.
# openssl req -x509 -batch -nodes -newkey rsa:2048 -keyout 비밀키파일명.key -out 인증서파일명.cert -subj /CN=도메인이름 -days 3650
...+...+..+...+......+...+.+..+.......+.....+.+.....+.+........+......+......+.........+.+........+...+...+....+...+.........+...........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+..+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+...+......+.+...........+.......+..+......+....+...............+......+..+.+.........+..+.+...+..............+.+.....+......+.+..+................+..+...+......+....+..+....+.........+......+...........+.......+..+...+.+......+.....+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
.+.+......+...+..+....+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+.+.....+...+.........+.+.........+.....+.+.....+.+...+............+......+...+......+.....+...+......+.+...........+..........+...+............+.................+.......+...+...+..+.......+...+...+...+.....+.......+...+............+..+............+.+...............+...+..+....+...+...........+...................+.....+......+......+......+.......+.................+....+..+...+....+..+....+...........+.........+.........+.+............+..+.+.....+.+...............+...+.....................+..+...+.........+.+..+.........+......+.......+.....+.+.....+.+........+.+......+.....+......+...............+.......+...........+....+..+...+...+.........+...+.......+...+........+....+.....+................+............+.....+.......+......+...+..+...+.....................+....+......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-----
도메인이름에 doogle.link 같이 정확히 https 로 호출할 도메인을 적으면 됩니다.
생성된 인증서를 확인해 보겠습니다.
# openssl x509 -in 인증서파일명.cert -noout -dates
notBefore=Apr 19 01:22:54 2024 GMT
notAfter=Apr 17 01:22:54 2034 GMT
SSL 인증서와 비밀키를 설치합니다. (여기서부터는 root 권한이 있어야 합니다.)
# sudo mv 인증서파일명.cert /etc/ssl/certs/
# sudo mv 비밀키파일명.key /etc/ssl/private/
이제 Nginx 서버에 SSL 인증서를 설치해 보겠습니다.
server {
server_name 도메인이름;
listen 443 ssl http2;
listen [::]:443 ssl http2;
ssl_certificate "/etc/ssl/certs/인증서파일명.cert";
ssl_certificate_key "/etc/ssl/private/비밀키파일명.key";
# ... 기타 설정 생략 ...
}
Nginx 설정을 저장하고 서버를 리로드 혹은 재시작합니다.
# sudo systemctl reload nginx