DDoS 공격으로부터 VPS를 보호하는 방법

작성 ONIE 엔지니어링 팀 · 2026년 11월 12일 업데이트 · 1분 분량

분산 서비스 거부(DDoS) 공격은 실제 방문자가 접속하지 못할 때까지 서버나 네트워크 연결에 트래픽을 쏟아붓습니다. 일부 공격은 서버 자체가 감당하기에 너무 커서, 보호는 여러 계층으로 구성할 때 가장 효과적입니다. 먼저 네트워크 엣지에서 필터링하고, 그다음 VPS의 방화벽과 애플리케이션 설정을 적용하는 순서입니다. ONIE는 DDoS Shield를 적용한 호찌민시 클라우드 서버에서 네트워크 엣지 보호를 추가 비용 없이 제공하며, DDoS 방어가 포함된 VPS를 몇 분 안에 배포할 수 있습니다.

공격 유형

  • 볼류메트릭(3계층 및 4계층): 네트워크 회선을 채우는 패킷 홍수입니다. 예를 들어 UDP 플러드가 있습니다.
  • 프로토콜 공격: SYN 플러드처럼 연결 처리 방식을 악용해 연결 테이블을 채우는 공격입니다.
  • 애플리케이션 계층(7계층): 정상처럼 보이는 HTTP 요청을 대량으로 보내 웹 서버나 데이터베이스를 고갈시키는 공격입니다.

유형마다 방어 방식이 다릅니다. 볼류메트릭 트래픽은 서버에 도달하기 전에 차단해야 하며, 애플리케이션 계층 플러드는 서버에서 줄일 수 있습니다.

1. 네트워크 엣지에서 필터링

엣지 필터링은 악성 트래픽을 VPS에 도달하기 전에 버려서 회선이 포화되지 않도록 합니다. DDoS Shield는 XDP/eBPF를 사용해 네트워크 엣지에서 필터링을 수행하며, 콘솔에서 IP별 트래픽과 공격 이벤트를 확인할 수 있습니다. 검토 중인 제공업체에는 무엇이 포함되는지, 필터링이 어디에서 이루어지는지, 추가 비용이 드는지 반드시 문의하세요.

2. 사용하지 않는 것은 닫기

sudo ufw default deny incoming
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enable

데이터베이스나 관리자 패널을 인터넷에 노출하지 마세요. 127.0.0.1 또는 사설 네트워크에만 바인딩하세요.

3. SYN 플러드에 대비한 커널 튜닝

대부분의 배포판에서 SYN 쿠키는 기본으로 켜져 있습니다. 다음 명령으로 확인하세요.

sysctl net.ipv4.tcp_syncookies

잘못된 값은 정상 트래픽에 문제를 일으킬 수 있으므로, 다른 커널 설정은 최소한으로 바꾸고 반드시 테스트하세요.

4. Nginx에서 요청 속도 제한

http 블록에 다음을 추가합니다.

limit_req_zone $binary_remote_addr zone=perip:10m rate=10r/s;
limit_conn_zone $binary_remote_addr zone=connperip:10m;

server 또는 location 블록에 다음을 추가합니다.

limit_req zone=perip burst=20 nodelay;
limit_conn connperip 20;

sudo nginx -t && sudo systemctl reload nginx로 다시 로드하세요. 정적 파일은 캐시에서 제공하고, WordPress에서는 캐싱 플러그인을 사용해 요청당 부하를 줄이세요. 자세한 내용은 Nginx로 WordPress 설치하기를 참고하세요.

5. 트래픽 모니터링

ss -s
sudo ss -ntu state established | wc -l
sudo apt install -y nload && nload

연결 수나 대역폭이 갑자기 늘어나거나, CPU 사용률은 낮은데 서버가 느려진다면 공격일 수 있습니다. 조기에 알아챌 수 있도록 알림을 설정하세요.

6. 장애 대응 체크리스트

  1. 콘솔에서 트래픽이 공격인지 정상적인 급증인지 확인합니다.
  2. 공격 이벤트와 공격받은 IP를 확인합니다.
  3. 식별 가능한 악성 출발지 주소나 대역을 차단합니다.
  4. 더 엄격한 속도 제한을 적용하거나 점검 페이지를 켭니다.
  5. 발생 시각과 IP를 포함해 제공업체 지원팀에 문의합니다.
  6. 사후에 로그를 검토하고 이 계획을 업데이트합니다. 백업과 스냅샷은 최신 상태로 유지하세요.

자주 묻는 질문

VPS의 방화벽만으로 대규모 DDoS를 막을 수 있나요?

단독으로는 어렵습니다. 트래픽이 네트워크 회선을 가득 채우면 서버가 이를 필터링할 수 없습니다. 서버 상위 단계에서 필터링하는 장치가 필요합니다.

CDN이 도움이 되나요?

웹사이트라면 CDN이나 리버스 프록시가 웹 트래픽을 흡수할 수 있습니다. 단, DNS나 이메일 헤더에 실제 서버 IP가 노출되지 않아야 합니다.

DDoS 보호를 위해 별도 요금제가 필요한가요?

제공업체에 따라 다릅니다. 요금제와 리전에 무엇이 포함되는지 확인하세요.

출처 및 추가 자료

더 많은 VPS 가이드