nginx 설정 을 통 해 DDoS 공격 방지

2426 단어
nginx 설정 을 통 해 DDoS 공격 방지
DDoS 공격 이란 무엇 인가
DDoS 공격 은 Distributed Denial of Service 의 줄 임 말로, 중국어 로 번역 하면 분산 서비스 거부 다.불법 해 킹 조직 이 서버 등 자원 을 통제 함으로써 국가 핵심 네트워크, 중요 네트워크 시설, 정부 기업 또는 개인 사 이 트 를 포함 한 인터넷 부임 목표 에 대한 공격 을 하여 목표 서버 가 네트워크 를 끊 고 최종 적 으로 서 비 스 를 중단 하 는 것 이다.
밤 을 들 어 내 가 가 게 를 하나 열 었 는데 장사 가 잘 돼 서 옆집 에 서 는 못 보 겠 어. 그의 일곱 고모 와 여덟 이모 에 게 매일 내 가게 에 와 서 자 리 를 차지 하고 물건 을 사지 말 라 고 하면 내 장 사 는 자연히 안 될 거 야.즉, 공격 자 는 '육계' 를 이용 하여 목표 사이트 에 대해 비교적 짧 은 시간 안에 대량의 요 구 를 하여 목표 사이트 의 호스트 자원 을 대규모 소모 하여 정상 적 인 서 비 스 를 하지 못 하 게 하 는 것 이다.온라인 게임, 인터넷 금융 등 분 야 는 디 도스 공격 의 대 박 업 종이 다.
DDoS 공격 에 어떻게 대처 할 것 인가
DDoS 공격 을 방지 하기 위해 서 는 고 방 서버 사용, CDN 가속, DDoS 세척 등 여러 가지 방법 이 있다.그러나 경비 의 제한 으로 인해 우 리 는 높 은 물건 을 만 들 수 없 기 때문에 기 존의 재료 에 가공 하여 DDoS 공격 에 대응 하 는 목적 을 달성 할 수 밖 에 없다.
nginx DDoS 공격 방지
초당 요청 수 제한
ngx_http_limit_req_모듈 모듈 은 누 출 통 원 리 를 통 해 단위 시간 내 요청 수 를 제한 하고 단위 시간 내 요청 수가 제한 을 초과 하면 503 오 류 를 되 돌려 줍 니 다.
nginx. conf 에 다음 설정 을 추가 합 니 다:
http {
    limit_req_zone $binary_remote_addr zone=one:10m rate=100r/s; //    ,    ip     10   
    ...
    server {
        ...
        location  ~ \.php$ {
            limit_req zone=one burst=5 nodelay;   //     ,  zone    
               }
           }
     }

이상 설정 에 사용 할 인자:
매개 변수
속뜻
$binary_remote_addr
2 진 원 격 주소
zone=one:10m
zone 이름 을 one 으로 정의 하고 이 zone 에 10m 메모 리 를 할당 합 니 다. 세 션 (바 이 너 리 원 격 주소) 을 저장 할 수 있 습 니 다. 1m 메모 리 는 16000 세 션 을 저장 할 수 있 습 니 다.
rate=100r/s
주파수 제한 초당 100 개 요청
burst=5
주파수 제한 초과 허용 요청 수가 5 개 보다 많 지 않 고, 1 · 2 · 3 · 4 초 요청 이 초당 9 개 라 고 가정 하면 5 초 간 15 개 요청 이 허용 되 고, 반대로 1 초 간 15 개 요청 시 5 개 요청 을 2 초, 2 초 간 10 초과 요청 은 바로 503 으로 다 초 간 평균 속도 제한 과 유사 하 다.
nodelay
초 과 된 요청 은 지연 되 지 않 습 니 다. 설정 후 15 개의 요청 은 1 초 안에 처리 합 니 다.
누 통 원 리 를 사용 하기 때문에 사실 이 설정 은 DDoS 공격 을 막 을 뿐만 아니 라 서버 의 흐름 제한 에 도 사용 할 수 있 습 니 다.
단일 IP 연결 수 제한
ngx_http_limit_conn_module 모듈 은 단일 IP 의 연결 수 를 제한 할 수 있 습 니 다. 설정 은 다음 과 같 습 니 다.
http {
    limit_conn_zone $binary_remote_addr zone=addr:10m; //    
    ...
    server {
        ...
        location /download/ {
            limit_conn addr 2;    //        2   ,       503
                }
           }
     }

간단 한 설정 을 통 해 우리 의 서 비 스 는 일부 DDoS 공격 을 걸 러 낼 수 있 지만 전문 적 인 해커 앞에서 이런 것들 은 모두 반찬 이 라 고 할 수 있 습 니 다. 서버 의 항 압 능력 을 진정 으로 향상 시 키 려 면 전문 적 인 도 구 를 사용 해 야 합 니 다.

좋은 웹페이지 즐겨찾기