https 인증서를 발급하기에 앞서 다음 과정이 선행되어야 합니다.
# 설치
$ sudo apt-get install -y nginx nginx-common nginx-full
# 삭제
#$ sudo apt-get purge --auto-remove -y nginx nginx-common nginx-full
# default파일 수정
$ sudo vim /etc/nginx/site-enabled/default
(nginx에서는 site-abaliable을 수정한 후 symbolic link을 연결하는 것을 권장합니다.)
다음과 같이 /.well-known/acme-challenge/으로 요청이 들어올 때 응답을 정의합니다.
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name {domain-name};
location ~ /\.well-known/acme-challenge/ {
allow all;
root /var/www/letsencrypt;
}
}
파일을 저장하고, 새롭게 정의한 defualt 파일이 문제가 없는지 확인 한 후, nginx를 시작합니다.
sudo nginx -t # 테스트
sudo service nginx start # 실행
자 이제 본격적으로 인증서를 발급하겠습니다.
# let's encrypt 설치
$ sudo apt update
$ sudo apt install certbot python3-certbot-nginx
$ sudo mkdir /var/www/letsencrypt
# 인증서 발급
$ sudo certbot certonly --webroot -w /var/www/letsencrypt -d {도메인} --agree-tos -m {이메일}
인증서가 정상적으로 발급되었다면 다음 경로에서 발급된 인증서를 확인하실 수 있습니다.
# 생성된 인증서 확인
$ sudo ls /etc/letsencrypt/live/{도메인}
>>> README cert.pem chain.pem fullchain.pem privkey.pem
이제 인증서경로를 연결하여 443 포트를 설정해 봅시다.
# default파일 수정
$ sudo vim /etc/nginx/site-avaliable/default
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name {domain-name};
location ~ /\.well-known/acme-challenge/ {
allow all;
root /var/www/letsencrypt;
}
}
server {
listen 443 ssl;
server_name 도메인;
#access_log /var/log/nginx/proxy/access.log;
#error_log /var/log/nginx/proxy/error.log;
ssl_certificate /etc/letsencrypt/live/도메인/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/도메인/privkey.pem;
location / {
//https 포트로 서비스할 html 경로를 설정합니다.
//proxy_pass를 통해서 내부에 열린 다른 port로 연결 할 수도 있습니다.
root /build폴더 경로/build;
index index.html index.htm;
try_files $uri $uri/ /index.html;
// or
proxy_pass http://127.0.0.1:8000;
}
}
sudo nginx -t # 테스트
sudo service nginx restart # 실행
tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log
sudo crontab -e
# 3개월 마다 인증서를 자동 갱신
15 3 * * * certbot renew --quiet --renew-hook "/etc/init.d/nginx reload"
도움이 많이 되었습니다! 우연하게 검색하다가 블로그로 보니 반갑네요!^^ 그 때의 미숙했던 두 후배들은 직장인이 되었습니다. 많이 이끌어주시고 진로상담도 열정적으로 해주셔서 감사했습니다! 블로그 번창하세요!