답변:
tail -n 10000 yourweblog.log|cut -f 1 -d ' '|sort|uniq -c|sort -nr|more
상위 IP 주소를 살펴보십시오. 어떤 것이 다른 것들보다 두드러지면 방화벽에있는 것일 것입니다.
netstat -n|grep :80|cut -c 45-|cut -f 1 -d ':'|sort|uniq -c|sort -nr|more
포트 80에 연결된 IP가 있는지 확인하기 위해 현재 활성 연결을 확인합니다. IP 주소가 45 열에서 시작되지 않을 수 있으므로 cut -c 45-를 변경해야 할 수도 있습니다. 귀하의 웹 서버는 이것도 선택합니다.
이 중 어느 것도 표준을 벗어난 IP를 전혀 보여주지 않을 경우, 봇넷이 자신을 공격한다고 가정하고 로그에서 특정 패턴을 찾아서 그들이하는 일을 확인해야합니다. 워드 프레스 사이트에 대한 일반적인 공격은 다음과 같습니다.
GET /index.php? HTTP/1.0
웹 사이트의 액세스 로그를 살펴보면 다음과 같은 작업을 수행 할 수 있습니다.
cut -f 2 -d '"' yourweblog.log|cut -f 2 -d ' '|sort|uniq -c|sort -nr|more
가장 많이 사용되는 URL을 보여줍니다. 전체 사이트를로드하지 않고 특정 스크립트를 사용하고 있음을 알 수 있습니다.
cut -f 4 -d '"' yourweblog.log|sort|uniq -c|sort -nr|more
일반적인 UserAgent를 볼 수 있습니다. 공격시 단일 UserAgent를 사용하고있을 수 있습니다.
트릭은 일반 트래픽에 존재하지 않는 공격 트래픽과 공통된 것을 찾은 다음 iptables, mod_rewrite 또는 웹 호스트의 업스트림을 통해 필터링합니다. Slowloris에 부딪 치면 Apache 2.2.15에 reqtimeout 모듈이있어 Slowloris를보다 효과적으로 보호하기 위해 일부 설정을 구성 할 수 있습니다.
여기 좋은 팁이 있습니다. 나는 또한 이것을 추가 할 것이다 :
netstat -an | grep ESTABLISHED | awk '\''{print $5}'\'' | awk -F: '\''{print $1}'\'' | sort | uniq -c | awk '\''{ printf("%s\t%s\t",$2,$1); for (i = 0; i < $1; i++) {printf("*")}; print ""}'\''
이것을 별칭 아래에 두십시오 (예 : nn). 이렇게하면보다 확실한 연결로 IP에 대한 "그래픽"관점이 제공됩니다.
이것이 도움이되기를 바랍니다.
이것을 작동시키지 못한 사람들을 위해 나는 구문을 수정하여 우분투에서 나를 위해 실행되었습니다.
netstat -an|grep ESTABLISHED|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|awk '{ printf("%s\t%s\t",$2,$1); for (i = 0; i < $1; i++) {printf("*")}; print ""}'
내 서버를 보호하기 위해 Fail2Ban 간단한 스크립트를 사용합니다.
/ var / log / pwdfail 또는 / var / log / apache / error_log와 같은 로그 파일을 검사하고 너무 많은 암호 오류를 일으키는 IP를 금지합니다. IP 주소를 거부하도록 방화벽 규칙을 업데이트합니다.
어떤 배포판?
로그가 Ubuntu와 함께 /var/log/apache2/access.log 아래에 있다고 생각합니다. 아마도 데비안입니다.
sudo로 updatedb를 실행 한 다음 명령 행에서 access.log를 찾으십시오.
편집 : 나는 이것이 페이지를 요청하거나 포트 80을 통해 직접 당신을 때리는 경우에만 발생한다고 생각합니다. 다른 포트를 때리는 경우 필요한 정보를 볼 수 없습니다 어떤 프로세스가 있는지 확인하고 확인해야합니다 해당 포트에서 실행 중이고 해당 프로세스의 연결 로그를 살펴보십시오.
분산 DOS를 사용하는 경우 차단할 IP가 둘 이상 있고 IP가 위조 될 수있는 경우 mfinni가 말한 것처럼 ISP에 문의하는 것이 좋습니다 . 또한 이것은 서버에 대한 DOS 이상의 것일 수 있지만 실제 공격이 감지되지 않도록하는 미끼 일 수 있으므로 노출 된 모든 서비스가 최신 소프트웨어에 의해 실행되는지 확인하십시오. 당신은 또한 아파치에 대한 mod_dosevasive에 관심이있을 수 있습니다.
먼저 DOS 유형을 결정해야합니다. 일부 공격은 매우 은밀하지만 효과적이지만 (느린 공격) 일부 공격은 너무 커서 ISP를 다운시킬 수 있습니다 (ISP 소스보다 높은 대역폭에서 ICMP 플러드).
DOS 유형을 확인한 후 ISP에 연락하여 트래픽을 필터링 할 수 있는지 문의하십시오.
ICMP 홍수가 너무 심해서 업스트림 ISP에 BGP 커뮤니티를 통해 대상 IP를 필터링하도록 요청해야했습니다.