Nginx private 인증서 적용하기
- OPENSSL 기반으로 인증서요청서 생성하기
$> openssl req -new -newkey rsa:2048 -nodes -keyout <개인키이름>.key -out <인증요청서이름>.csr
... 정보 입력 or 걍 엔터
- 인증서 생성 하기
$> openssl x509 -req -days 365 -in <인증요청서이름>.csr -signkey <개인키이름>.key -out <생성할인증서이름>.crt
... 결과로 인증서( 인증서이름.crt )가 생성된다.
- 비밀번호 제거작업 필수는 아니지만, Nginx를 재기동 할 경우 비밀번호를 요청 받는다. 따라서 다음과 같이 개인키를 재생성 한다.
$> cp <생성된개인키이름>.key <생성할개인키복사본이름>.key.secure $> openssl rsa -in <생성된개인키복사본이름>.key.secure -out <재생성할개인키이름>.key
- Nginx SSL 적용
$> vi /etc/nginx/conf.d/<서비스명>.conf
... 추가
server {
listen 443;
server_name localhost;
charset utf-8;
access_log /etc/nginx/log/access.log;
error_log /etc/nginx/log/error.log;
ssl on; #ssl사용
ssl_certificate /etc/nginx/ssl/인증서이름.crt; #생성된 인증서경로
ssl_certificate_key /etc/nginx/ssl/<재생성할개인키이름>.key; #생성된 개인키
location / {
proxy_redirect off;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://target-server;
}
}
끝!
참고 주소에 가면 더 많은 정보가 있다.