본문 바로가기
Server

[Ubuntu] SSL인증서 발급 | 갱신

by 동기 2023. 12. 27.
반응형

목차


SSL 인증서 발급

📍Apache2 설정에 도메인을 추가하여 https 적용을 해야 할 상태.

$sudo letsencrypt

Which name would ~HTTS for? : 특정 도메인을 택하고 싶을 경우 숫자 입력을 하고, 전체 적용을 할 경우 아무 입력 없이 Enter 입력

상황 A. 도메인이 추가 됐을 경우 뜨는 메세지

Do you want to expand and replace ~ new certificate? : 도메인을 추가했기 때문에 E (확장) 입력

상황 B. 도메인이 그대로일 경우 뜨는 메세지

What would you like to do ? : 상황에 따라 선택 하거나 취소

Please choose whether ~ HTTP access : 2(Redirect) 입력

발급이 완료 되었다(기존 증서는 갱신, 추가된 도메인은 증서 설치)

pem 키가 발급완료 됐고 위치는 /etc/letsencrypt/live/xxxx.xxx.kr-0002/ 에 생성되었다

❗pem이 발급된 디렉토리를 잘 알아두자

Apache2 restart

$sudo systemctl restart apache2.service

키가 있는 디렉토리(/etc/letsencrypt/live/xxxx.xxx.kr-0002/)를 살펴보면 cert.pem chain.pem fullchain.pem private.pem 키가 있다.

( permission deny로 볼 수 없는 경우 sudo -i 를 통해 루트계정으로 변경 후 확인 할 수 있다)

이 중 private.pem chain.pem cert.pem 파일을 /etc/ipsec.d 의 아래와 같은 위치에 복사 해야 한다.

private.pem → /etc/ipsec.d/private

chain.pem → /etc/ipsec.d/cacerts

cert.pem → /etc/ipsec.d/certs

각 폴더에 복사

$sudo cp /etc/letsencrypt/live/xxxx.xxx.kr-0002/privkey.pem /etc/ipsec.d/private/
$sudo cp /etc/letsencrypt/live/xxxx.xxx.kr-0002/chain.pem /etc/ipsec.d/cacerts/
$sudo cp /etc/letsencrypt/live/xxxx.xxx.kr-0002/cert.pem /etc/ipsec.d/certs/

새로 추가한 도메인에 ping 을 찍어 상태를 확인해 본 후 exit 한다.

브라우저에서 새로운 도메인의 https 적용을 확인해 본다.

https 적용이 성공적으로 되었다.

  • 만약 hostgator 를 통해 도메인을 추가하고 웹서버의 xxx.conf 에 추가후 SSL 인증서 발급(또는 갱신)을 했다면 xxxx-le-ssl.conf 파일에 해당 도메인에 대한 마크업이 추가 되어 있다.
  • 만약 SSL 발급 후 xxxx-le-ssl.conf에 도메인이 자동으로 추가되지 않았다면, 수동으로 직접 작성 후 웹서버(여기서는 Apache2) 서비스 재시작후 확인해 볼 것.
  • 마찬가지로 VPN 등 별개의 포트를 사용하는 도메인도 각 디렉토리별로 이동해 주어야 한다.


SSL 인증서 갱신

📍(도메인 변경이 없었을 때)SSL 인증서 기간이 만료됐을 경우, 만료 전에 다시 갱신할 경우 등

인증서 갱신

$sudo certbot renew --dry-run

오류가 발생했다면, 오류를 수정해주고, 아무 문제가 없다면 갱신이 이루어진다.

💡SSL인증서 자동 갱신

let’s encrypt는 무료 인증서 이기때문에 유효기간이 90일이며, 대신 만료 30일 전부터 갱신할 수 있다. sudo를 사용하여 crontab을 등록하여 갱신한다.

Crontab 보기

$sudo crontab –l

Crontab 편집

$sudo crontab -e

2개월마다 갱신을 하며 1일 새벽4시에 갱신을 하고 로그를 기록한다. 

0 4 1 */2 * root /usr/bin/certbot renew >> /var/log/letsencrypt/renew.log 

반응형

'Server' 카테고리의 다른 글

SFTP 설정  (0) 2024.02.01
__wsl2 에서 systemctl 사용하기__  (0) 2023.01.08
vmware ESXi  (0) 2022.10.02
CPU 과다 점유 이슈  (0) 2022.09.09
톰캣 다중 설정  (0) 2022.08.31

댓글