개발노트
고즐의 개발 및 서버 개발 노트![]()
Rocky Linux에서 Certbot으로 SSL 적용하기 (기본 설치부터 HTTPS까지)
Rocky Linux 9 환경에서는 Certbot + Let’s Encrypt를 사용하면 무료로 SSL 인증서를 발급하고 HTTPS를 바로 적용할 수 있다. 여기서는 Apache 기준으로 설치부터 인증서 적용, 리다이렉트 설정까지 가장 간단한 흐름을 정리했다.
Rocky Linux에서 Certbot으로 SSL 적용하기 (기본 설치부터 HTTPS까지)1. Certbot 설치 - Rocky Linux는 EPEL 저장소가 필요합니다.
sudo dnf install epel-release -y sudo dnf install certbot python3-certbot-apache -y
2. 방화벽에서 HTTP/HTTPS 허용 - Let’s Encrypt 인증 과정에서 포트 80은 반드시 필요합니다.
sudo firewall-cmd --add-service=http --permanent sudo firewall-cmd --add-service=https --permanent sudo firewall-cmd --reload
3. Apache VirtualHost 기본 구성 확인 - SSL 발급 전에 80 포트가 정상적으로 응답해야 합니다.
ServerName aibit.kr ServerAlias www.aibit.kr DocumentRoot /home/aibit/public_html
4. Certbot으로 SSL 인증서 발급 - 두 도메인을 함께 넣어 발급합니다.
sudo certbot --apache -d aibit.kr -d www.aibit.kr
5. HTTPS VirtualHost 설정 (443 포트) - 관리 편한 단일 블록 구성 방식입니다.
ServerName www.aibit.kr ServerAlias aibit.kr SSLEngine on SSLCertificateFile /etc/letsencrypt/live/www.aibit.kr/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/www.aibit.kr/privkey.pem RewriteEngine On RewriteCond %{HTTP_HOST} !^www. [NC] RewriteRule ^ https://www.aibit.kr%{REQUEST_URI} [L,R=301] DocumentRoot /home/aibit/public_html
6. HTTP → HTTPS 강제 리다이렉트 설정 - 80 포트에서 들어오는 모든 요청을 HTTPS로 보냅니다.
ServerName aibit.kr ServerAlias www.aibit.kr Redirect permanent / https://www.aibit.kr/
7. Apache 설정 검사 및 재시작 - 설정 오류 확인과 재시작 명령입니다.
sudo apachectl -t sudo systemctl restart httpd
8. SSL 인증서 정상 작동 여부 확인 - 브라우저 테스트와 함께 OpenSSL 명령으로 확인할 수 있습니다.
echo | openssl s_client -connect aibit.kr:443 2>/dev/null | grep -i "DNS"
9. 인증서 자동 갱신 테스트 - Certbot 자동 갱신이 올바르게 작동하는지 확인합니다.
sudo certbot renew --dry-run
Rocky Linux에서는 Certbot을 이용하면 무료 SSL 인증서를 쉽게 설치하고 HTTPS 서비스를 안정적으로 운영할 수 있다.
여기서 다룬 단계만 그대로 따라 하면 대부분의 상황에서 문제 없이 HTTPS가 적용된다.