안녕하세요. 주식회사 서버몬 입니다.
웹사이트를 운영하면서 보안성을 높이기 위해 HTTPS는 필수입니다.
이번 포스팅에서는 Let's Encrypt의 무료 SSL 인증서를 Certbot 을 활용하여 발급하고, 자동 갱신까지 설정하는 방법을 상세히 알려드리겠습니다
Let's Encrypt 이란?
Let's Encrypt는 사용자에게 무료로 TLS 인증서를 발급해주는 비영리기관 몇 가지 TLS 인증서 종류 중에서
완전 자동화가 가능한 DV (Domain Validated, 도메인 확인) 인증서를 무료로 발급하며 모질라 재단, 페이스북, 구글 등 많은 업체가 스폰서로 등록되어 있다.
Certbot 이란
Certbot은 Let's Encrypt에서 무료로 제공하는 SSL 인증서를 쉽게 발급하고 자동으로 갱신할 수 있도록 도와주는 오픈소스 도구입니다. Apache, Nginx 같은 주요 웹 서버와도 손쉽게 연동할 수 있습니다.
Cerbot 설치 Ubuntu / Debian 계열
sudo apt update
sudo apt install nginx
sudo apt install certbot python3-certbot-nginx -y
Rocky Linux / CentOS
sudo dnf install nginx
sudo dnf install epel-release -y
sudo dnf install certbot python3-certbot-nginx -y
Nginx 대신 Apache를 사용한다면 python3-certbot-apache 패키지를 설치 합니다.
Nginx 구성 기본 페이지 수정 (example.com 도메인은 사용할 도메인으로 변경)
/etc/nginx/conf.d/default.conf
server {
listen 80;
server_name example.com;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
location = /50x.html {
root /usr/share/nginx/html;
}
}
nginx -s reload
인증서 발급하기 Nginx를 기준으로 한 발급 예시
sudo certbot --nginx -d www.example.com
주요 옵션 설명
--nginx: Nginx 설정 자동 수정
-d: 인증서를 적용할 도메인 (여러 개 가능)
성공 시 출력 예시
Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/{Domain}/fullchain.pem
Key is saved at: /etc/letsencrypt/live/{Domain}/privkey.pem
This certificate expires on 2025-06-14.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.
Successfully deployed certificate for www.junonet.co.kr to /etc/nginx/conf.d/default.conf
Congratulations! You have successfully enabled HTTPS on https://{Domain)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SSL 인증서 적용
sudo systemctl reload nginx
인증서 적용 확인
구성한 도메인 주소로 웹 브라우저를 통해 접근 합니다.
https://{Domain}
이전에 발급한 인증서가 적용된것을 확인할 수 있습니다.
인증서 자동 갱신 설정
Let's Encrypt 인증서는 기본적으로 90일 동안 유효합니다. Certbot은 자동으로 갱신하는 기능을 제공합니다.
인증서 갱신 테스트
sudo certbot renew --dry-run
Saving debug log to /var/log /letsencrypt/letsencrypt.log
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Processing /etc/letsencrypt/renewal/{Doamin}.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Account registered.
Simulating renewal of an existing certificate for {Doamin}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations, all simulated renewals succeeded:
/etc/letsencrypt/live/{Doamin}/fullchain.pem (success)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
주기적으로 인증서 갱신을 위해 Cron 데몬을 사용해서 스케쥴링을 구성합니다.
주 1회 실행 (예: 매주 월요일 새벽 3시)
sudo crontab -e
0 3 * * 1 /usr/bin/certbot renew --quiet --deploy-hook "systemctl reload nginx"
문제해결
Q1. 인증서 발급 시 "Timeout during connect" 에러가 발생해요
원인: Let's Encrypt가 인증 과정에서 웹 서버의 80, 443 포트로 접근하지 못할 때 발생합니다.
해결 방법:
방화벽(ufw, firewalld 등)에서 80, 443 포트가 열려 있는지 확인하세요. 클라우드 서비스(AWS, Azure, GCP 등)를 사용하는 경우 보안 그룹(Security Group) 설정도 확인하세요.
Q2. 도메인은 올바른데 인증서 발급이 실패해요
원인:
Nginx가 실행 중이지 않거나, 잘못된 서버 블록 설정으로 인증 경로(/.well-known/acme-challenge/)를 찾지 못하는 경우 발생. 해결 방법:
Nginx가 정상적으로 동작 중인지 확인 (sudo systemctl status nginx) server_name이 정확히 도메인과 일치하는지 Nginx 설정 확인
감사합니다.
1U서버 / 2U서버 / AI서버 / alyac / APC / APC UPS / backup / carepack / centos / chakramax / cuda / DAS / DB / DB서버 / defog / DEFOG랙 / dell5820 / dell5820t / dell7920 / dellpoweredge / dellr240 / dellr340 / dellr350 / dellr450 / dellr540 / dellr630 / dellr640 / dellr740 / dellr750 / dellserver / dellt40 / dellt440 / dellt5820 / dell서버 / DELL서버CPU / DELL서버RAID컨트롤러 / DELL서버SAS하드디스크 / DELL서버가격비교 / DELL서버가격비교견적 / DELL서버견적 / DELL서버구매 / DELL서버디스크교체 / DELL서버메모리 / dell서버서버몬 / DELL서버펌웨어 / DELL서버하드디스크구매 / dell옵션 / dell워크스테이션 / dl20 / dl20gen10 / dl20gen11 / dl360 / dl360gen10 / dl360gen11 / dl380 / dl380g10 / dl380gen10 / dl380gen11 / ECC메모리 / EDFOG랙가격 / embedded / est security / ESTSOFT / FIRMWARE / GPU / gpu서버 / gpu타워형서버 / greenlake / HA솔루션 / HP GPU / hp hdd / hpdl20 / HPDL20Gen10 / hpdl360 / hpdl360gen10 / hpdl380 / hpdl380g10 / HPDL380Gen10 / HPE / HPE GPU / hpe hdd / hpe rok / HPE Service Pack for Proliant / HPE SPP / hpe ssa / hpedl20 / hpedl20gen10 / hpedl360gen10 / hpe서버 / HPE서버CPU / HPE서버RAID컨트롤러 / HPE서버SAS하드디스크 / HPE서버가격비교 / HPE서버가격비교견적 / HPE서버견적 / HPE서버구매 / HPE서버드라이버설치 / HPE서버디스크교체 / HPE서버메모리 / HPE서버비용 / hpe서버소음 / HPE서버펌웨어 / HPE서버하드디스크구매 / hpe옵션 / hpe정품 / hpgen10 / hpml30 / hpserver / hpz2 / hpz4 / hpz4g4 / hpz6g4 / hpz8g4 / hp마이크로서버 / hp서버 / hp서버cto / hp서버pc / HP서버메모리 / hp서버소음 / hp서버컴퓨터 / HP서버파워 / HP서버펌웨어 / HP서버하드디스크 / hp옵션 / hp워크스테이션 / hp정품 / hp프로라이언트 / HYPER BACKUP / ibm서버 / ilo / Intelligent Provisioning / internetdisk / KVM / KVM 기술지원비(비용) / KVM 설치비 / L2스위치 / L3스위치 / LENONO서버SAS하드디스크 / lenovop620 / lenovor650 / LENOVO서버 / LENOVO서버CPU / LENOVO서버RAID컨트롤러 / LENOVO서버가격비교 / LENOVO서버가격비교견적 / LENOVO서버견적 / LENOVO서버구매 / LENOVO서버디스크교체 / LENOVO서버메모리 / LENOVO서버하드디스크구매 / LENOVO펌웨어업데이트 / Linux / ML30 / ml30gen10 / ml30gen11 / ML350GEN10 / ml350gen11 / ML360 / MS CSP / MSSQL / MSSQL 기술지원비(비용) / MSSQL 설치비 / MYSQL / MySQL 기술지원비(비용) / MySQL 설치비 / NAS / NVIDIA / Office 365 / oneview / orange / OS설치 / PA-410 / PA-440 / paloalto / poweredger740 / poweredger750 / precision5820 / QUADRO / r240 / r250 / r340 / r360 / r440 / r550 / r650 / r660 / r740 / r750xs / r760 / r760xs / RAID / redhat / RHEL설치 / RMS랙 / rocky / s100i / securedisk / server / serverpc / smart storage administrator / SPP / sql server / sr250 / sr650 / SYNOLOGY / SYNOLOGY나스 / t150 / t360 / UPS / UPS기술지원 / UPS납품 / UPS설치 / V3 / veeam / vroc / windows server / Windows서버설치 / XEON서버 / z8g4 / 가상서버 / 가성비서버 / 기술지원비(비용) / 나스기술지원 / 나스설치지원 / 네트워크스위치 / 네트워크장비 / 더블테이크 / 데이터베이스 / 델5820 / 델서버 / 델서버비용 / 델서버펌웨어업데이트 / 델옵션 / 델워크스테이션 / 델컴퓨터워크스테이션 / 디포그 / 디포그랙 / 디포그랙가격 / 딥러닝 / 딥러닝pc / 딥러닝서버 / 랙 / 랙(RACK) 기술지원비(비용) / 랙(RACK) 설치비 / 랙납품설치 / 랙설치 / 레노버p620 / 레노버서버 / 레노버워크스테이션 / 레노보서버 / 레노보서버펌웨어 / 레드헷설치 / 레이드 / 레이드구성 / 록키리눅스 / 리눅스 / 리눅스 기술지원비(비용) / 리눅스 설치비 / 리눅스서버 / 리눅스서버설치 / 리눅스서버트러블슈팅 / 리눅스트러블슈팅 / 문서보안 / 문서중앙화 / 미니서버 / 미니서버랙 / 미니서버렉 / 미디어서버 / 방화벽 / 방화벽 기술지원비(비용) / 방화벽 설치비 / 방화벽엔지니어 / 백업 / 백업 기술지원비(비용) / 백업 서버 / 백업서비스 / 백업솔루션 / 보안솔루션 / 보안솔루션구매 / 보안솔루션설치 / 보안툴 / 빔백업 / 샤크라맥스 / 서버 / 서버 기술지원비(비용) / 서 버 랙마운트비용 / 서버 설치비 / 서버 장애조치비용 / 서버CPU / 서버MEMORY / 서버OS설치 / 서버pc / 서버가격 / 서버가속기 / 서버견적 / 서버교체 / 서버구매 / 서버구입 / 서버구축 / 서버기술지원 / 서버납품 / 서버디스크장애처리 / 서버랙 / 서버렉 / 서버렉마운트 / 서버메모리 / 서버 몬 / 서버몬기술지원 / 서버백업 / 서버보안 / 서버부품 / 서버엔지니어 / 서버옵션 / 서버용GPU / 서버용PC / 서버용그래픽카드 / 서버용메모리 / 서버 / 컴퓨터 / 서버용하드디스크 / 서버재고 / 서버컴 / 서버컴퓨터 / 서버트러블슈팅 / 서버판매 / 서버하드 / 서버호스팅 / 스위치 / 스위치 기술지원비(비용) / 스위치 설치비 / 스토리지 / 스토리지 기술지원비(비용) / 스토리지 랙마운트비용 / 스토리지 설치비 / 스토리지 장애조치비용 / 스토리지납품설치 / 스토리지서버 / 시놀로지DS918 / 시놀로지HyperBackup / 시놀로지나스 / 시놀로지나스백업 / 시놀로지하이퍼백업 / 시큐어디스크 / 안랩 / 알약 / 앱서버 / 오피스 365 / 우분투설치 / 워크스테이션 / 워크스테이션pc / 워크스테이션컴퓨터 / 윈도우서버 / 윈도우서버2016 / 윈도우서버2019 / 윈도우서버2022 / 윈도우서버설치 / 윈도우서버컴퓨터 / 윈도우서버트러블슈팅 / 윈도우즈 기술지원비(비용) / 윈도우즈 설치비 / 이스트소프트 / 이스트 시큐리티 / 이중화솔루션 / 이중화솔루션구매 / 이중화솔루션설치 / 인터넷디스크 / 임베디드 / 저가서버 / 저렴한서버 / 정품서버 / 정품서버옵션 / 제온서버 / 젠서버 / 중고서버 / 중고워크스테이션 / 카보나이트 / 카스퍼스키 / 컴퓨터서버 / 케어팩 / 타워서버 / 타워형서버 / 팔로알토 / 페도라설치 / 프로라이언트