여러가지/기타

[Nginx] 5분 만에 무료 SSL 인증서 적용하기 (feat. Let's Encrypt & Certbot)

포스트it 2025. 11. 27. 16:33
728x90

👋 들어가며

개인 프로젝트를 배포하고 도메인을 연결했는데, 주소창에 '주의 요함(Not Secure)' 이라고 뜨면 마음이 아프죠?

요즘 웹사이트에 HTTPS(자물쇠 아이콘🔒) 적용은 선택이 아닌 필수입니다.

오늘은 Nginx 서버에서 Certbot을 이용해 무료로, 아주 간편하게 SSL 인증서를 발급받고 자동 갱신까지 설정하는 방법을 정리했습니다.

✅ 준비물

  1. 우분투(Ubuntu) 리눅스 서버 (Nginx 설치됨)
  2. 구매한 도메인 (DNS 설정으로 서버 IP와 연결 필수!)

1. Certbot 설치하기

가장 먼저 certbot과 Nginx용 플러그인을 설치해야 합니다. 터미널을 열고 아래 명령어를 순서대로 입력합니다.

# 패키지 목록 업데이트
sudo apt update

# certbot과 nginx 플러그인 설치
sudo apt install certbot python3-certbot-nginx

2. 인증서 발급받기

설치가 끝났다면 인증서를 발급받을 차례입니다. -d 옵션 뒤에 연결할 도메인 주소를 입력합니다. www가 붙은 주소도 함께 등록하는 것이 좋습니다.

# example.com 부분에 본인 도메인을 입력하세요
sudo certbot --nginx -d example.com -d www.example.com

명령어를 실행하면 몇 가지 질문이 나옵니다.

  1. 이메일 입력: 인증서 갱신 알림을 받을 이메일을 입력합니다.
  2. 약관 동의: Y를 입력해 동의합니다.
  3. 뉴스레터 구독: Y 또는 N (자유롭게 선택).
  4. 리다이렉트 설정 (중요!):
    • 1: No redirect (HTTP로 접속해도 놔둠)
    • 2: Redirect (HTTP로 접속하면 자동으로 HTTPS로 이동)
    • 👉 무조건 2번을 선택하고 엔터를 누르세요.

Tip: 2번을 선택하면 사용자가 http://로 들어와도 자동으로 안전한 https://로 연결해 줍니다. Nginx 설정 파일도 알아서 수정해 주니 정말 편합니다.


3. 적용 확인 및 Nginx 재시작

인증서 발급이 완료되면 Congratulations!라는 메시지가 뜹니다. 확실한 적용을 위해 Nginx를 재시작해 줍니다.

sudo systemctl restart nginx

이제 브라우저 주소창에 내 도메인을 입력해 보세요.
주소 옆에 자물쇠 아이콘(🔒)이 예쁘게 생겼다면 성공입니다! 😎


4. 자동 갱신 설정 확인 (테스트)

Let's Encrypt의 무료 인증서는 유효기간이 90일입니다. 하지만 걱정 마세요. Certbot을 설치할 때 자동으로 갱신하는 스케줄러가 함께 등록됩니다.

잘 작동하는지 테스트해 보려면 아래 명령어를 입력해 보세요.

sudo certbot renew --dry-run

에러 없이 Simulated renewal succeeded 같은 문구가 뜬다면, 앞으로 인증서 만료 걱정 없이 꿀잠 자면 됩니다. 🛌


📝 마치며

예전에는 HTTPS 적용하려면 돈도 들고 설정도 복잡했는데, Certbot 덕분에 정말 세상 좋아졌습니다. 여러분의 소중한 도메인에 보안 자물쇠를 꼭 채워주세요!




반응형