nginx 일부 유형의 클 라 이언 트 접근 제한

1036 단어
며칠 연속 소 규모 cc 공격 을 당 했 습 니 다. 해 가 크 지 않 지만 공격 을 받 을 때마다 서버 에 로그 인하 여 조 치 를 다시 한 번 취해 야 합 니 다.한 번 은 밤 11 시, 한 번 은 토요일 로 휴식 에 영향 을 주 고 짜증 이 납 니 다.이 몇 번 의 cc 공격 은 같은 조직 에서 왔 을 것 입 니 다. 왜냐하면 이 몇 번 의 cc 공격 이 access log 에 남 겨 진 클 라 이언 트 유형 이 모두 같 기 때 문 입 니 다.
"Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0; MyIE 3.01)Cache-Control: no-store, must-revalidate"

그래서 갑자기 이상 한 생각 이 들 었 어 요. 이 유형의 클 라 이언 트 를 금지 하면 되 지 않 을까요?웹 서버 는 nginx 를 사용 하여 must - revaidate 를 키워드 로 하여 nginx. conf 의 server 세그먼트 에 몇 마디 를 추가 합 니 다.
if ($http_user_agent ~ must-revalidate) {
    return 503;
}

nginx 를 다시 시작 합 니 다.아 날로 그 클 라 이언 트 가 방 문 했 습 니 다.
curl 
www.okpython.com -A "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0; MyIE 3.01)Cache-Control: no-store, must-revalidate"

503 Service Temporarily Unavailable 로 돌아 가 503 을 반환 하고 403 을 반환 하지 않 는 것 은 적 을 현혹 시 키 기 위 한 것 이다.503 을 되 돌려 주 는 것 은 서버 에 큰 영향 을 미 치지 않 고 nginx 의 스 레 드 만 차지 합 니 다.상대 적 으로 수지 가 맞다.

좋은 웹페이지 즐겨찾기