Cro Blog Logo

크로 블로그

Nginx Proxy Manager로 5분 만에 HTTPS 무료 적용하기

왜 NPM인가?

웹 서비스를 배포할 때 가장 귀찮은 것 중 하나가 HTTPS(SSL) 적용입니다. Nginx 설정 파일을 직접 건드리고, Certbot 명령어를 치는 과정은 실수하기 딱 좋습니다.

**Nginx Proxy Manager (NPM)**은 이 모든 과정을 **GUI(그래픽 화면)**에서 해결해주는 마법 같은 도구입니다.

1. NPM 설치하기

가장 쉬운 방법은 역시 Docker입니다. 아래 docker-compose.yml 파일을 작성하고 실행하세요.

version: '3.8'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
docker-compose up -d

2. 관리자 페이지 접속

서버 IP의 81번 포트로 접속하면 관리자 화면이 뜹니다.

3. 도메인 연결 및 SSL 발급 (핵심!)

  1. Proxy Hosts 메뉴 클릭 → Add Proxy Host 버튼을 누릅니다.
  2. Details 탭:
    • Domain Names: 연결할 도메인 입력 (예: blog.lky.kr)
    • Forward Host: 내부 서비스 IP (Docker라면 컨테이너 이름)
    • Forward Port: 서비스 포트 (예: 3000)
  3. SSL 탭 (가장 중요!):
    • SSL Certificate: Request a new SSL Certificate 선택
    • Force SSL: 체크 ✅ (필수!)
    • HTTP/2 Support: 체크 ✅ (권장)
    • Email Address: 본인 이메일 입력
    • I Agree: 체크 ✅

Save 버튼만 누르면? 끝입니다. NPM이 알아서 Let's Encrypt 서버와 통신해 인증서를 받아오고, Nginx 설정을 고치고, HTTPS 리다이렉트까지 걸어줍니다.

마치며

이제 더 이상 검은 터미널 화면에서 nginx -t를 치며 오타를 찾을 필요가 없습니다. NPM으로 여러분의 소중한 시간을 아끼세요.