2012-02-27 4 views
0

이것은 DDoS 공격입니다.IP에서 초당 또는 초당 연결 수를 기준으로 IP에 대한 서비스를 거부하는 방법은 무엇입니까?

기본적으로 특정 시간에 특정 연결 수를 기반으로 사이트에 대한 액세스를 거부해야합니다. 1 분 또는 1 초. IP가 특정 시간에 최대 연결과 겹치면이 IP는 1 일 거부로 나열된 검은 색으로 표시됩니다.

예 : 1 분 동안 서버에 1000 개의 연결이 정상적으로 이루어지지 않으면이 IP는 블랙리스트에 올 것입니다.

내가 원하는 것은 PHP에서 이것을 탐지하는 스크립트입니다. 하지만 매우 중요합니다 : Google-Bots 또는 Search-bots에 대한 서비스를 거부하지 않는 방법과 일반 방문자를 거부하지 않는 방법.

+2

백 엔드 서버에서 Linux를 실행하는 경우 PHP 대신 [iptables] (http://en.wikipedia.org/wiki/Iptables)에서이 작업을 수행하는 것이 좋습니다. –

+0

DDOS 공격은 일반적으로 서버 자체가 아니라 서버를 대상으로합니다 (PHP는이를 막을 수 없습니다). 그들은 또한 PROXY를 사용하거나 자신의 IP를 숨기고 솔루션을 실제로 최적으로 만들지 않습니다. –

+0

여기에 다른 사람들과 동의하십시오 - DDos에서 자신을 보호해야 할 필요가 있다면 큰 인프라에서 도움을 받아야합니다. 코드를 호출하면 아마 이미 승리했을 것입니다. –

답변

1

이런 종류의 일은 앱의 코드에 들어가야한다고 생각하지 않습니다. 이것은 네트워크 수준에서 구현할 수있는 것입니다. 방화벽은 이미 이런 종류의 서비스를 제공 할 수 있습니다. 리눅스에서 IPTables를 사용한다면 분명히 이런 종류의 규칙을 구현할 수 있습니다.

IPTables is this의 경우 도움이 될 수있는 하나의 링크입니다.

This link는 위의 것보다 실제로 더 (감사, 구글!)

이 기능의이 종류를 지원하지 않는 Linux 또는 방화벽을 사용하지 않는 경우, 당신은 쉽게 앞에 리눅스 박스를 넣을 수 있습니다 DB 서버에 저장하고이 방법을 구현한다.