treeru.com
네트워크

리버스 프록시 서버 구성 — N100으로 충분한 이유

2026-01-24
Treeru

웹사이트, API 서버, 관리자 패널을 각각 다른 서버에서 운영할 때, 외부에서는 하나의 도메인으로 접근하게 하려면 리버스 프록시가 필요합니다. 고성능 서버가 필요할 것 같지만, 실제로는 N100 미니PC 하나면 충분합니다. Caddy를 활용한 자동 HTTPS 설정과 멀티서비스 라우팅까지 다룹니다.

2~5%

CPU 사용률

~200MB

메모리 사용

6W

TDP

0원

SSL 인증서 비용

1리버스 프록시란

리버스 프록시는 클라이언트(브라우저)와 백엔드 서버 사이에 위치하여, 요청을 대신 받아서 적절한 백엔드로 전달하는 중간 서버입니다.

클라이언트리버스 프록시 (N100)백엔드 서버들

example.com → 웹사이트 서버 (10.x.x.11:3000)

api.example.com → API 서버 (10.x.x.12:8080)

admin.example.com → 관리자 패널 (10.x.x.13:4000)

SSL 종단점 통합

HTTPS 인증서를 프록시 한 곳에서 관리합니다. 백엔드 서버는 HTTP로만 통신하면 되므로 설정이 간단합니다.

백엔드 서버 은닉

외부에서 백엔드 서버의 IP와 포트를 알 수 없습니다. 공격 표면이 줄어듭니다.

도메인 기반 라우팅

하나의 공인 IP로 여러 서비스를 도메인 또는 경로 기반으로 분배할 수 있습니다.

2N100이면 충분한 이유

리버스 프록시는 요청을 받아서 전달하는 역할이라, CPU와 메모리를 거의 사용하지 않습니다. 실제 운영 중인 N100 미니PC의 리소스 사용량을 공유합니다.

항목유휴 시일반 부하피크 시
CPU 사용률0.5~1%2~5%8~15%
메모리 사용~150MB~200MB~300MB
동시 연결 수~10~100~500
CPU 온도35~40°C40~50°C50~60°C

소규모 사무실에서 N100은 과잉 스펙

동시 접속 500 이상에서도 CPU 15% 수준입니다. 소규모 사무실에서 리버스 프록시 용도로는 N100이 오히려 여유 있는 스펙입니다. 남는 리소스로 모니터링 에이전트나 DNS 서버를 함께 돌릴 수도 있습니다.

3Caddy 설치와 기본 설정

Caddy는 Go로 작성된 웹 서버로, 자동 HTTPS가 가장 큰 장점입니다. 도메인을 설정하면 Let's Encrypt 인증서를 자동으로 발급하고 갱신합니다.

# Caddy 설치 (Ubuntu/Debian)
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy

# 서비스 확인
sudo systemctl status caddy

# 설정 파일 위치
# /etc/caddy/Caddyfile

기본 Caddyfile

# /etc/caddy/Caddyfile

# 글로벌 설정
{
    email admin@example.com    # Let's Encrypt 인증서 발급용
}

# 기본 사이트
example.com {
    reverse_proxy 10.x.x.11:3000
}

# 설정 적용
sudo caddy reload --config /etc/caddy/Caddyfile

이게 전부입니다

도메인과 백엔드 주소 두 줄이면 HTTPS 리버스 프록시가 완성됩니다. 인증서 발급, 갱신, HTTP→HTTPS 리다이렉트까지 전부 자동입니다.

4자동 HTTPS — Let's Encrypt

Caddy는 도메인을 설정하면 자동으로 Let's Encrypt에서 인증서를 발급받습니다. 갱신도 만료 30일 전에 자동으로 처리합니다. 수동 개입이 전혀 필요 없습니다.

기능CaddyNginx + certbot
인증서 발급자동certbot 명령어 실행
인증서 갱신자동cron 등록 필요
HTTP→HTTPS 리다이렉트자동설정 추가 필요
OCSP 스테이플링자동설정 추가 필요
TLS 1.3기본 활성설정 확인 필요

포트 80/443이 열려 있어야 합니다

Let's Encrypt 인증을 위해 포트 80과 443이 외부에서 접근 가능해야 합니다. OPNsense를 사용한다면 WAN 방화벽에서 이 포트를 N100의 내부 IP로 포트포워딩해야 합니다.

5멀티서비스 라우팅

하나의 리버스 프록시에서 여러 서비스를 도메인이나 경로 기반으로 라우팅할 수 있습니다.

서브도메인 기반 라우팅

# /etc/caddy/Caddyfile

# 메인 웹사이트
example.com {
    reverse_proxy 10.x.x.11:3000
}

# API 서버
api.example.com {
    reverse_proxy 10.x.x.12:8080
}

# 관리자 패널 (IP 제한 추가)
admin.example.com {
    @blocked not remote_ip 10.x.x.0/24
    respond @blocked "Forbidden" 403
    reverse_proxy 10.x.x.13:4000
}

경로 기반 라우팅

# 하나의 도메인에서 경로별로 분배
example.com {
    # /api/* 경로는 API 서버로
    handle /api/* {
        reverse_proxy 10.x.x.12:8080
    }

    # /admin/* 경로는 관리자 서버로
    handle /admin/* {
        reverse_proxy 10.x.x.13:4000
    }

    # 나머지는 웹사이트 서버로
    handle {
        reverse_proxy 10.x.x.11:3000
    }
}

6안정성 튜닝

리버스 프록시는 24시간 무중단으로 운영해야 합니다. N100 미니PC의 안정성을 높이기 위한 설정들을 소개합니다.

CPU 터보 부스트 비활성화

터보 부스트를 끄면 발열이 줄고 클럭이 안정적으로 유지됩니다. 프록시 서버는 순간 성능보다 일관된 성능이 중요합니다.

전원 관리 고정

CPU 거버너를 'performance' 또는 'powersave'로 고정합니다. 'ondemand'는 클럭 변동이 발생하여 간헐적 지연이 생길 수 있습니다.

systemd 자동 재시작

Caddy 서비스에 Restart=always를 설정하여, 비정상 종료 시 자동으로 재시작하도록 합니다.

# CPU 터보 부스트 비활성화 (Intel N100)
echo 1 | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo

# CPU 거버너 고정
echo "powersave" | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

# Caddy systemd 설정 확인
sudo systemctl cat caddy | grep Restart
# Restart=on-failure (기본값, 충분)

# 메모리 스왑 최소화 (충분한 RAM이 있는 경우)
echo 10 | sudo tee /proc/sys/vm/swappiness

7Caddy vs Nginx 비교

항목CaddyNginx
설정 난이도매우 쉬움보통~어려움
자동 HTTPS내장certbot 별도 설치
성능우수매우 우수
생태계/레퍼런스성장 중매우 풍부
설정 파일 크기5~10줄30~50줄
바이너리 크기~40MB (단일 바이너리)~1MB (모듈식)
메모리 사용~30MB (유휴)~5MB (유휴)

소규모 환경에서는 Caddy 권장

대규모 트래픽이나 복잡한 설정이 필요하면 Nginx가 유리하지만, 소규모 사무실에서 몇 개 서비스를 라우팅하는 용도로는 Caddy의 간결함이 압도적입니다. 설정 파일 5줄이면 자동 HTTPS 리버스 프록시가 완성됩니다.

정리

리버스 프록시 구축 체크리스트

  • N100 미니PC — TDP 6W, CPU 2~5% 수준으로 프록시에 충분
  • Caddy 설치 — 공식 저장소에서 패키지 설치
  • Caddyfile에 도메인과 백엔드 주소만 입력하면 HTTPS 자동 설정
  • 서브도메인 또는 경로 기반으로 멀티서비스 라우팅
  • 관리자 패널은 IP 제한으로 접근 통제
  • 터보 부스트 비활성화로 발열과 클럭 안정성 확보
  • OPNsense에서 포트 80/443을 N100으로 포트포워딩
  • systemd 자동 재시작으로 무중단 운영

리버스 프록시에 고성능 서버는 필요 없습니다. N100 미니PC 하나면 충분하고, Caddy를 사용하면 설정도 몇 줄이면 끝납니다. 월 전기세 1,500원 정도로 자동 HTTPS + 멀티서비스 라우팅을 운영할 수 있습니다.

본 글은 실제 N100 미니PC에서 Caddy를 운영한 경험을 기반으로 작성되었습니다. IP 주소, 도메인, 포트 번호는 예시이며 실제 환경에 맞게 변경해야 합니다. 본 콘텐츠의 비상업적 공유는 자유이나, 상업적 이용 시 문의 페이지를 통해 연락 바랍니다.

서버 인프라 구축이 필요하신가요?

Treeru는 리버스 프록시, SSL 인증서, 도메인 라우팅 등 웹 인프라 전반의 설계와 구축을 지원합니다. 비용 효율적인 서버 구성을 상담받으세요.

인프라 구축 상담
T

Treeru

웹 개발, IT 인프라, AI 솔루션 분야의 실무 인사이트를 공유합니다. 기업의 디지털 전환을 돕는 IT 파트너, Treeru입니다.

공유

댓글

(4개)
4.50/ 5

로그인하면 댓글을 작성할 수 있습니다.

2026-02-04
4.554.5

터보 부스트 끄고 안정성을 높이는 팁이 실용적입니다. 프록시 서버는 피크 성능보다 일관된 성능이 중요하니까요. 좋은 글 감사합니다.

2026-02-01
555.0

웹사이트 3개를 하나의 서버에서 돌리고 있었는데, 리버스 프록시로 분리하면 관리가 훨씬 편하겠네요. 미니PC 하나 추가 구매해야겠습니다.

2026-01-30
454.0

N100의 CPU 사용률이 2~5%라는 데이터가 설득력 있습니다. 리버스 프록시 전용으로 고성능 서버를 쓸 필요가 없다는 점을 팀에 공유했습니다.

관련 글

© 2026 TreeRU. All rights reserved.

본 콘텐츠의 저작권은 TreeRU에 있으며, 출처를 밝히지 않은 무단 전재 및 재배포를 금합니다. 인용 시 출처(treeru.com)를 반드시 명시해 주세요.