Ubuntu에 Nginx 설치 후 OpenSSL을 통해 인증서를 설치하여 SSL을 제공하는 웹 서버를 구성
사내 테스트를 위한 구축을 하며 정리한 내용이라 사설 인증서를 사용
Nginx 설치
sudo apt install nginx
인증서 생성
개인 키와 인증서 서명 요청 파일 생성 (인증서 생성 명령어는 /etc/nginx/ssl 폴더 밑에서 진행)
openssl req -new -newkey rsa:2048 -nodes -keyout test.key -out test.csr
(명령어 실행 후 정보를 입력하는 구문이 나오는데 테스트를 위한 사설 인증서 이므로 아무 내용 입력)
SSL 인증서 생성
openssl x509 -req -days 365 -in test.csr -signkey test.key -out test.crt
Nginx SSL 적용
vi /etc/nginx/sitesites-available/default
server {
listen 443;
root /var/www/html/frontui;
index index.html index.htm
server_name 192.168.x.x;
ssl on;
ssl_certificate /etc/nginx/ssl/test.crt;
ssl_certificate_key /etc/nginx/ssl/test.key;
location / {
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Protocol $scheme;
proxy_set_header X-Real_IP $remote_addr;
}
}
server {
listen 80;
server_name 192.168.x.x;
return 301 https://$host$request_uri;
}