본문 바로가기

리눅스 관련

Certbot, Let's Encrypt로 SSL 인증서 발급받기(Ubuntu, NGINX)

반응형

https://letsencrypt.org

Let's Encrypt로  SSL 인증서를 발급받아 Https를 사용하는 방법을 알아보겠습니다.

우분투에 NGINX를 이용하여 홈페이지가 설정되어있다고 가정하겠습니다.

 

우선 certbot이 설치되어있느지 확인해 보면,

$ apt list --installed | grep certbot

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

certbot/bionic-updates,bionic-updates,now 0.27.0-1~ubuntu18.04.2 all [installed]
python-certbot-nginx/bionic,bionic,now 0.23.0-1 all [installed]
python3-certbot/bionic-updates,bionic-updates,now 0.27.0-1~ubuntu18.04.2 all [installed,automatic]
python3-certbot-nginx/bionic,bionic,now 0.23.0-1 all [installed,automatic]

0.27 버전이 설치되어 있네요.

 

아래처럼 아무것도 안 나오는 경우라면 설치가 안되어있는 경우로

  certbot을 이용하여 설치하시면 되겠습니다.

$ sudo apt list --installed | grep certbot

$ sudo apt list --installed | grep certbot

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

$ sudo apt-get install certbot

설치가 완료되면,

$sudo certbot --nginx  -d [홈페이지주소]

를 실행하시면 됩니다.

 

실행 중간에 아래의 하늘색 메시지 부분에서 

 HTTP접속을 HTTPS로 Redirect 하고 HTTP접속을  제거할지 유무를 선택하는 부분입니다.

1번은 안 하는 것이고,

2번은 Redirection설정을 해주는 것입니다. 

저는 그냥 1번으로  Go!

 

마지막으로 nginx를 재실행해주시면 되겠습니다

$sudo service nginx restart

$ sudo certbot --nginx -d [홈페이지주소]
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for 홈페이지주소
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/sites-enabled/---

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 1

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https:// 홈페이지주소

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d= 홈페이지주소
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

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
   Your cert will expire on 2023-04-19. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

$ sudo service nginx restart

 

발급되었네요.

축하드립니다!

 

Let's Encrypt 인증서의 경우 무료인 대신 유효기간이3개월이라, 주기적으로 갱신이 필요합니다.

다음에는 갱신하는 방법에 대해 소개해 드리겠습니다.

https://retromakers.tistory.com/28

 

Certbot, Let's Encrypt로 SSL 인증서 갱신하기(Ubuntu, NGINX)

이 글을 보고 계신다면, SSL인증서를 발급받고 3개월이 지나신 분일 겁니다. 잘 오셨습니다. certbot을 사용하여 갱신을 해보도록 하겠습니다. certbot설치방법은 아래의 내용을 참조하세요. https://ret

retromakers.tistory.com

 

 

Certbot, Let's Encrypt로 SSL 인증서 갱신하기(Ubuntu, NGINX)

이 글을 보고 계신다면, SSL인증서를 발급받고 3개월이 지나신 분일 겁니다. 잘 오셨습니다. certbot을 사용하여 갱신을 해보도록 하겠습니다. certbot설치방법은 아래의 내용을 참조하세요. https://ret

retromakers.tistory.com

감사합니다.

 

반응형