일본 서버호스팅으로 웹 서비스나 게임서버를 운영하다 보면 DDoS 공격을 경험하는 경우가 있습니다. 특히 게임서버, 커뮤니티 사이트, 이커머스는 경쟁자나 악의적인 사용자에 의한 공격 대상이 되기 쉽습니다. 이 글에서는 DDoS 공격 유형과 서버 레벨 방어 방법, 전문 방어 서비스 활용법을 정리합니다.

DDoS 공격이란?

DDoS(Distributed Denial of Service)는 다수의 출처에서 동시에 대량의 트래픽이나 요청을 보내 서버나 네트워크를 마비시키는 공격입니다. 단일 IP 차단으로는 막기 어렵고, 공격 규모에 따라 서버 업스트림 대역폭 자체가 포화될 수도 있습니다.


DDoS 공격 주요 유형

L3/L4 네트워크 레이어 공격

  • UDP Flood: 대량의 UDP 패킷을 전송해 대역폭을 소진
  • SYN Flood: TCP 연결 요청(SYN)을 대량으로 보내 서버의 연결 테이블을 가득 채움
  • ICMP Flood: 대량의 Ping 요청으로 대역폭 소진

특징: 트래픽 볼륨이 크고(수십~수백 Gbps), 서버 업스트림 자체를 마비시킬 수 있습니다.

L7 애플리케이션 레이어 공격

  • HTTP Flood: 정상처럼 보이는 HTTP 요청을 대량으로 전송
  • Slowloris: 연결을 천천히 맺어 서버 연결 자원을 고갈
  • CC 공격: 동적 페이지 요청으로 DB 부하 유발

특징: 트래픽 볼륨은 작지만 서버 리소스를 고갈시켜 서비스를 다운시킵니다.


서버 레벨 방어 설정

iptables로 SYN Flood 방어

# SYN 쿠키 활성화
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

# 연결 속도 제한
iptables -A INPUT -p tcp --syn -m limit --limit 1/s --limit-burst 3 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP

# ICMP Flood 방어
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

Nginx HTTP Flood 방어

http {
    # 연결 속도 제한
    limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;
    limit_conn_zone $binary_remote_addr zone=conn:10m;

    server {
        location / {
            limit_req zone=api burst=20 nodelay;
            limit_conn conn 10;
        }

        # Slowloris 방어
        client_body_timeout 10s;
        client_header_timeout 10s;
        keepalive_timeout 5 5;
        send_timeout 10s;
    }
}

fail2ban으로 반복 공격 IP 차단

# /etc/fail2ban/jail.local
[nginx-limit-req]
enabled = true
filter = nginx-limit-req
logpath = /var/log/nginx/error.log
maxretry = 10
bantime = 3600

서버 레벨 방어의 한계

서버 레벨의 iptables나 Nginx 설정은 L7 소규모 공격에 효과적입니다. 그러나 L3/L4 대용량 공격(수십 Gbps 이상)은 트래픽 자체가 서버 업스트림 회선을 포화시켜 어떤 서버 설정으로도 막을 수 없습니다.

이런 경우에는 업스트림 레벨의 전문 DDoS 방어 서비스가 필요합니다.


TCP-80.NET DDoS 방어 서비스

TCP-80.NET은 두 단계의 DDoS 방어를 제공합니다:

1. 기본 네트워크 레이어 방어 (무료 포함)

모든 서버에 기본 포함되는 L3/L4 네트워크 레이어 DDoS 방어입니다. 일반적인 UDP Flood, SYN Flood 등을 자동으로 차단합니다.

2. 전용 DDoS 방어 서비스 (추가 옵션)

더 강력한 보호가 필요한 경우 전용 DDoS 방어 서비스를 이용할 수 있습니다:

  • 대용량 트래픽 완화: 더 높은 방어 용량
  • L7 WAF: 애플리케이션 레이어 공격 차단
  • 24시간 모니터링: 실시간 공격 감지 및 대응

DDoS 공격 시 즉각 대응 절차

  1. 공격 유형 파악: iftop, nethogs, netstat 등으로 비정상 트래픽 확인
  2. 공격 IP 범위 차단: iptables로 주요 공격 IP 대역 임시 차단
  3. 업스트림 통보: 호스팅 업체에 공격 알림 (방어 서비스 활성화 요청)
  4. 서비스 임시 중단 또는 트래픽 분산: 공격 규모에 따라 판단

TCP-80.NET 고객은 DDoS 공격 발생 시 텔레그램 @tcp80net으로 즉시 알려주시면 24시간 내 대응합니다.


마치며

일본 서버에서 서비스를 운영할 때 DDoS 방어는 선택이 아닌 필수입니다. 서버 레벨 설정으로 기본 방어를 갖추고, 전문 방어 서비스로 대용량 공격에 대비하세요. TCP-80.NET은 기본 DDoS 방어를 무료로 제공하며, 더 강력한 보호는 별도 서비스로 이용할 수 있습니다.