Certot

학교의 모든 지식. SMwiki
Sam (토론 | 기여)님의 2022년 12월 1일 (목) 17:15 판 (→‎nginx를 통한 설정)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
둘러보기로 이동 검색으로 이동

개요

비영리 인증기관인 Let's Encrypt를 통해 TLS인증을 받게 도와주는 도구.

기초 준비

과정 설명 방법
설치 전 준비 외부에서 80번 포트를 통해 컴퓨터에 접속할 수 있어야 한다.
설치 전 준비

(리눅스 저장소)

https://twpower.github.io/44-set-free-https-by-using-letsencrypt를 참고하였다.


불편하긴 해도 저장소 설정을 해주어야 한다.

sudo apt-get update

sudo apt-get install software-properties-common

sudo add-apt-repository universe

sudo add-apt-repository ppa:certbot/certbot

sudo apt-get update

설치 각각의 사용방법에 따라 설치할 게 다르다.

대륙은 6번 아시아, timezone은 79번 도쿄.

아래 메뉴얼을 따라 진행.

기초 사용

nginx를 통한 설정

간편하지만, 개별적인 설정사항은 반영하기 어렵다.

과정 설명 방법
설치 nginx를 사용하기 위한 설치. sudo apt-get install certbot python3-certbot-nginx
nginx설정 변경 nginx 설정 변경

설정을 변경하면 sudo nginx -t 로 설정 오류를 확인한다.

sudo vim /etc/nginx/sites-available/nginx.conf

위 명령 등을 이용해 아래와 같이 내용을 추가한다.(도메인이 핵심.)

server {

        # 받을 포트.

        listen 80;

        # 고정아이피.

        server_name myid.iptime.org;  # 도메인

설정반영 sudo service nginx reload
방화벽 열어준다. sudo ufw allow 'Nginx Full'
SSL 인증서 발급 인증서를 얻는다.

-d 옵션으로 여러 도메인에 대해서 얻을 수도 있다.

진행하면 리다이렉션 설정 등을 선택하게 하는데, 잘 읽고 필요에 따라 진행하자.

Time zone, email 등을 물어본다. 이메일을 보낸다는 내용도 있으니 잘 읽고 답하자.

sudo certbot --nginx -d 위에서작성한도메인
확인 다음 사이트에서 잘 적용이 되었는지 확인을 받는다. https://www.ssllabs.com/ssltest/
자동갱신 이 인증서는 90일동안 유효한데, certbot에서 자동으로 갱신을 해준다.

우측 명령어에서 에러가 나지 않으면 정상.

보통 /etc/cron.d/에 certbot이 생성된다. 크론파일을 만들어 자동으로 갱신해준다.

sudo certbot renew --dry-run

apache를 통한 설정

설치 apache를 사용하기 위한 설치. sudo apt install certbot python3-certbot-apache