TLS 인증서
지금까지 따라왔다면 도메인이 서버에 연결되어 있을 것입니다.
이 도메인의 보안상태를 인증해 주기위해 TLS 인증서를 발급 받을 수 있는데
이 인증서는 웹페이지의 HTTPS 연결 뿐만아니라 FTPS 등 다양한 연결에도 사용할 수 있습니다.
Certbot을 이용한 인증서 발급
$ sudo apt-get install git
TLS 인증서를 발급하는 Certbot을 Git에서 받아와야 하기 때문에
Git을 설치해 줍니다.
$ git clone https://github.com/certbot/certbot
$ cd certbot
Git에서 Certbot을 받았다면 다운받은 경로로 이동한 다음에 인증서를 발급해 줍니다.
지금 발급 받는 인증서는 와일드카드 인증서로
서브도메인마다 인증서를 발급받을 필요없이 이 인증서로
서브도메인 모두 적용할 수 있는 인증서를 발급 받습니다.
sudo ./certbot-auto certonly -d example.com -d *.example.com --manual --preferred-challenges dns
위 명령줄에 자신의 이메일과 도메인에 맞도록 변경한 뒤에 실행시켜 줍니다.
실행을 하면 발급을 받을 때 필요한 패키지를 설치해야 해서 Yes/No 선택이 나오면 Yes로 해줍니다.
그리고 필수 패키지 설치가 끝이나면 몇가지 정보를 입력하는 메시지가 나옵니다.
Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel):
위와 같은 문구가 나오면 이메일 주소를 입력해 줍니다.
(A)gree/(C)ancel:
약관 동의를 이해 A를 입력해 줍니다.
(Y)es/(N)o
메일링 가입을 하려면 Y를, 아니라면 N을 입력해 줍니다.
그러면 도메인을 인증하기 위한 몇가지 절차가 있습니다.
이 인증서 발급에서 도메인 인증은 DNS를 통해서 하기로 했기때문에
네임서버로 가서 화면에 나오는대로 DNS를 입력해 줍니다.
총 2개의 TXT 레코드 DNS를 기록한 뒤에 엔터를 치면
도메인 인증 단계를 거쳐 인증서가 발급이 됩니다.
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/자신의 도메인/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/자신의 도메인/privkey.pem
위와 같은 문구가 나오게 된다면 인증서가 잘 발급된 것입니다.
인증서 재발급
Certbot 인증서는 주기적으로 재발급을 해주어야 합니다.
$ sudo ./certbot-auto certificates
위 명령줄을 입력하면 발급 되어있는 인증서의 정보가 뜹니다.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Found the following certs:
Certificate Name: jeuke.com
Domains: jeuke.com *.jeuke.com
Expiry Date: 2019-04-12 11:39:40+00:00 (VALID: 79 days)
Certificate Path: /etc/letsencrypt/live/jeuke.com/fullchain.pem
Private Key Path: /etc/letsencrypt/live/jeuke.com/privkey.pem
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
위와 같이 나오는데
Expiry Date 부분을 보면 인증이 만료되는 시간이 나옵니다.
저 날짜의 7일 전쯤에 아래 명령줄을 입력해 줍니다.
$ sudo ./certbot-auto renew
$ sudo ./certbot-auto --force-renewal
축하한다는 말이 뜬다면 정상적으로 재발급 된것입니다.
다음 강의에서 Nginx 웹서버를 설치할 것인데
웹서버를 사용하는 중에 인증서를 재발급 받는다면 아래 명령줄을 통해
Nginx를 리로드 해주어야 합니다.
$ sudo systemctl reload nginx
'Develop > Server' 카테고리의 다른 글
[Raspberry Pi] 8. Raspberry Pi 3 B+ 나스 만들기 - NextCloud 설치(1) (0) | 2019.01.25 |
---|---|
[Raspberry Pi] 7. Raspberry Pi 3 B+ 나스 만들기 - Nginx 설치 (0) | 2019.01.24 |
[Raspberry Pi] 5. Raspberry Pi 3 B+ 나스 만들기 - DNS와 도메인 (0) | 2019.01.22 |
[Raspberry Pi] 4. Raspberry Pi 3 B+ 나스 만들기 - SSH 원격 연결 설정 (0) | 2019.01.21 |
[Raspberry Pi] 3. Raspberry Pi 3 B+ 나스 만들기 - 하드디스크 연결 (0) | 2019.01.17 |