Ubuntu와 Nginx로 운영하는 워드프레스는 도메인의 DNS 연결을 완료한 뒤 Certbot의 Nginx 플러그인으로 Let’s Encrypt 인증서를 발급할 수 있습니다. 아래 과정은 InsideJoJo의 Ubuntu 24.04·Nginx 환경에서 사용한 흐름을 기준으로 하며, 명령 실행 전 Nginx 설정 백업과 SSH 접속 유지가 필요합니다.
시작 전 확인사항
- 도메인의 A 레코드가 현재 서버 IP를 가리켜야 합니다.
- Nginx 서버 블록의
server_name에 인증서를 받을 도메인이 있어야 합니다. - 방화벽과 클라우드 방화벽에서 80·443 포트가 열려 있어야 합니다.
www도 사용할 경우 해당 DNS 레코드를 먼저 만들고 인증서에 함께 포함합니다.
dig +short insidejojo.com
sudo nginx -t
sudo systemctl status nginx --no-pager
1. Nginx 설정 백업하기
Certbot이 Nginx 설정을 변경할 수 있으므로 먼저 실제 사이트 설정 파일을 복사합니다. 아래 파일명은 자신의 환경에 맞게 바꾸세요.
sudo cp /etc/nginx/sites-available/insidejojo.com
/etc/nginx/sites-available/insidejojo.com.before-ssl
sudo nginx -t
2. Certbot과 Nginx 플러그인 설치하기
설치 방법은 운영체제와 Certbot 공식 안내에 따라 달라질 수 있습니다. Ubuntu 저장소의 패키지를 사용하는 환경은 다음과 같이 설치할 수 있습니다. 설치 전에 Certbot 공식 Nginx 설치 안내의 현재 권장 방식을 함께 확인하세요.
sudo apt update
sudo apt install certbot python3-certbot-nginx -y
certbot --version
3. 인증서 발급과 HTTPS 리디렉션 적용하기
도메인을 명령에 명시하면 어떤 이름에 인증서를 발급하는지 분명하게 확인할 수 있습니다. www를 사용하지 않는다면 해당 항목은 제외하세요.
sudo certbot --nginx
-d insidejojo.com
-d www.insidejojo.com
화면 안내에서 이메일과 약관을 확인하고 HTTP 요청을 HTTPS로 리디렉션하는 옵션을 선택합니다. 발급이 끝나면 바로 Nginx 구문 검사를 실행합니다.
sudo nginx -t
sudo systemctl reload nginx
4. 브라우저와 명령줄에서 확인하기
curl -I http://insidejojo.com
curl -I https://insidejojo.com
sudo certbot certificates
- HTTP 응답이 대표 HTTPS 주소로 한 번에 이동하는지 확인
- 브라우저 인증서의 도메인과 만료일 확인
- WordPress의 사이트 주소와 내부 이미지가 HTTPS인지 확인
- Search Console과 분석 도구가 최종 HTTPS 주소를 기준으로 수집되는지 확인
5. 자동 갱신을 실제로 테스트하기
Let’s Encrypt 인증서는 자동 갱신 구성이 중요합니다. 설치 방식에 따라 systemd timer 또는 snap이 갱신을 관리하므로 상태를 확인하고 모의 갱신을 실행합니다.
systemctl list-timers | grep certbot
sudo certbot renew --dry-run
--dry-run이 성공해야 갱신 경로와 플러그인 구성이 정상이라고 판단할 수 있습니다. 실패하면 오류 메시지, 80 포트 접근, DNS, Nginx 설정부터 확인합니다.
자주 발생하는 문제
인증 대상 도메인이 서버를 가리키지 않음
DNS 변경이 전파되지 않았거나 오래된 IP가 남아 있으면 인증에 실패합니다. 서버와 외부 환경에서 dig 결과를 비교하세요.
Nginx의 server_name 누락
Certbot이 올바른 서버 블록을 찾지 못할 수 있습니다. 파일을 수정한 뒤 반드시 sudo nginx -t가 성공한 경우에만 reload합니다.
혼합 콘텐츠 경고
페이지는 HTTPS지만 이미지·스크립트가 HTTP 주소를 사용하면 경고가 남을 수 있습니다. WordPress 주소와 데이터베이스의 기존 URL을 백업 후 점검하고, 무작정 문자열을 치환하지 않습니다.
보안 설정에서 피해야 할 실수
SSH 포트나 root 로그인 설정을 변경하면서 현재 접속을 먼저 끊으면 서버에서 잠길 수 있습니다. 새 SSH 키 로그인과 별도 터미널 접속을 먼저 검증하고, 클라우드 콘솔의 복구 방법을 확보한 뒤 한 항목씩 변경하세요. SSL 적용과 SSH 보안 변경은 서로 다른 작업으로 나누는 편이 문제 원인을 찾기 쉽습니다.
공식 문서
다음 단계: HTTPS 확인 후 워드프레스 설치 직후 전체 설정 체크리스트로 돌아가 백업, SEO와 Search Console 단계를 이어가세요.
워드프레스 구축·운영 시리즈
현재 단계와 연결되는 앞뒤 글을 순서대로 확인할 수 있습니다.
- 이전 편: 3편: Ubuntu에 워드프레스 설치
- 다음 편: 5편: 워드프레스 필수 설정
- 전체 흐름: 워드프레스 설치부터 SEO·애드센스 준비까지 보기