본문 바로가기
개발/Server

[Linux] Ubuntu/Apache2 Letsencrypt 인증서 설치 & 갱신

by stephen26 2024. 1. 9.

 

24년 첫 기록물이네요,, 새해 복 많이 받으시고 늘 무탈하세요 🙏

 

 

Ubuntu 서버에서 Apache2 웹 서버에 Let's Encrypt SSL 인증서를 설치하는 가이드입니다.


** 1단계: 모듈 설치

$ sudo apt-get install letsencrypt

 

 

** 2단계: 인증서 발급

$ letsencrypt certonly --webroot --webroot-path=/var/www/html -d test.com

 

→  webroot-path는 웹 루트 경로를 작성해주면 되는데 변경한 적 없다면 /var/www/html을 작성

→  test.com 자리에는 본인 도메인 작성해주면 됨

 

 

** 3단계: 인증서 발급 확인

$ cd /etc/letsencrypt/live/[도메인주소]

 

위 경로에서 발급된 인증서 파일을 확인할 수 있다.

 

 

** 4단계: Apache2 설정 파일 conf 수정

# /etc/apache2/sites-available/[도메인-ssl].conf 파일을 아래와 같이 수정

<VirtualHost *:443>
    ServerName [도메인주소]
    DocumentRoot /var/www/html/

    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/[도메인주소]/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/[도메인주소]/privkey.pem

    <Directory />
        AllowOverride All
        Options All -Indexes
        Require all granted
    </Directory>
</VirtualHost>

<VirtualHost *:80>
        ServerName [도메인주소]
        Redirect / https://[도메인주소]/
</VirtualHost>

 

 

** 5단계: Apache2 서비스 재시작하여 적용

$ sudo service apache2 restart

 

 

** 6단계: SSL 인증서 자동 갱신 설정

$ sudo vi /etc/crontab

#crontab에 아래 내용 추가
0 1 20 * * /usr/bin/certbot renew --renew-hook="sudo systemctl restart apache2"

#apache2 재실행
$ sudo service apache2 restart

 

 

 

ps) 참고로 우분투17 이후 자동으로 인증서 자동 갱신 스케줄러가 동작한다고 함

#설치 확인 명령어
$ sudo systemctl status certbot.timer

 

댓글