Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

...

Expand

Certbot 설치(Ubuntu 20.04 기준)

Certbot은 설치 방법과 패키지가 다양합니다. 여기서는 apt를 사용하여 certbot과 python3-certbot-apache를 설치합니다.

Note

Certbot 설치에 실패할 경우 다음 작업을 수행 후 진행하십시오.

  • 방화벽 해제

  • 80, 443 포트 미사용

Code Block
# certbot, python3-certbot-apache 설치
apt install -y certbot python3-certbot-apache

인증서 발급 및 자동 갱신

인증서 발급

다음 명령과 캡쳐 이미지를 참고하여 SSL 인증서를 발급합니다.

Code Block
# 인증서(apache용)만 발급
certbot certonly --apache -d docs.mantech.co.kr
Code Block
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Enter email address (used for urgent renewal and security notices)
 (Enter 'c' to cancel): user@mantech.co.kr

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, to
share your email address with the Electronic Frontier Foundation, a founding
partner of the Let's Encrypt project and the non-profit organization that
develops Certbot? We'd like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: N
Account registered.
Requesting a certificate for docs.mantech.co.kr

Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/docs.mantech.co.kr/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/docs.mantech.co.kr/privkey.pem
This certificate expires on 2022-08-24.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.
...

인증서 확인

Code Block
ls /etc/letsencrypt/live/docs.mantech.co.kr/

30일마다 자동 갱신 (유효기간 90일

인증서 갱신

1. 인증서 발급 명령 후 '2' 입력(Enter)

Code Block
# 갱신 가능 여부 확인
certbot renewcertonly --dryapache -run

# crontab으로 자동 갱신 설정
crontab -e

# 매월 1일 05시에 갱신
0 5 1 * * certbot renew
Image Removedkeytool 로
d docs.mantech.co.kr
...
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Image Added

2. keystore.p12 인증서 교체 (아래 “keytool로 keystore.p12 생성” 참고)
→ 기존 파일 삭제 후 새 인증서 생성

3. 3rabbitz 서비스 재시작

Code Block
/3rabbitz/bin/shutdown.sh
/3rabbitz/bin/startup.sh

keytool로 keystore.p12 생성

Panel
bgColor#FFEBE6
  • 기존 데이터 복사로 인해 /3rabbitz/keystore.p12 파일이 있다면 삭제 후 인증서를 생성하십시오.

  • 이때 입력한 비밀번호를 기억하여 이후에 server.xml 파일 설정 시 입력하십시오.

Code Block
keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650

새 비밀번호 다시 입력: 
이름과 성을 입력하십시오.
  [Unknown]:  
조직 단위 이름을 입력하십시오.
  [Unknown]:  
조직 이름을 입력하십시오.
  [Unknown]:  
구/군/시 이름을 입력하십시오?
  [Unknown]:  
시/도 이름을 입력하십시오.
  [Unknown]:  
이 조직의 두 자리 국가 코드를 입력하십시오.
  [Unknown]:  
CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown이(가) 맞습니까?
  [아니오]:  yes

pkcs12 형식으로 변경

다음 명령 시 /3rabbitz/에 keystore.p12 파일이 생성됩니다.
이후 tomcat의 server.xml 설정 시 keystore.p12 파일 경로를 입력해야 합니다.

Code Block
openssl pkcs12 -export -in /etc/letsencrypt/live/docs.mantech.co.kr/fullchain.pem -inkey /etc/letsencrypt/live/docs.mantech.co.kr/privkey.pem -out /3rabbitz/keystore.p12 -name tomcat -CAfile /etc/letsencrypt/live/docs.mantech.co.kr/chain.pem -caname root

...