Sendmail 스패머 IP 차단 쉘스크립트 v2

by 햇빛소년 posted Dec 06, 2012 Views 20428 Likes 0 Replies 0
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

국산 통나무 수공예 남원제기, 남원목기

자료가 도움이 되셨다면
혼수용품제수용품 필요시
남원제기 공식 홈페이지 http://남원제기.kr
남원목기 공식 홈페이지 http://otchil.kr
에서 구매 해 주세요
정성껏 모시겠습니다.
 

#!/bin/sh
# Script by oldpiano

DATE=`date +%Y-%m-%d' '%H:%M:%S`
CNT=0

echo "" > /tmp/spamer

if [ -e /var/log/maillog ]; then
        for i in $( cat /var/log/maillog | awk '/User unknown$/ {print $6}' | uniq ); do
                cat /var/log/maillog | awk -F 'relay=' '/'$i'.*relay\=/ {print $2}' >> /tmp/spamer
        done
fi

awk '{gsub(/^.*\[/,"");gsub(/\].*$/,"");print $0}' /tmp/spamer | sort | uniq -c > /tmp/spamer

for i in $( cat /tmp/spamer | awk '$1 > 1 {print $2}' ); do
        #ip format ::ffff:0.0.0.0
        denyip=${i#::ffff:}
        if [ ! $( cat /etc/mail/access | awk '{print $1}' | grep $denyip ) ]; then
                CNT=$(($CNT + 1))
                echo "$denyip           REJECT" >> /etc/mail/access
        fi
done

if [ $CNT = 0 ]; then
        exit
fi

echo "# --- added at $DATE" >> /etc/mail/access
mail -s 'Denied Spamer' [메일주소] < /etc/mail/access
makemap -v hash /etc/mail/access.db < /etc/mail/access #> /dev/null
service sendmail restart #> /dev/null

   

Articles

1 2 3 4 5 6 7 8 9 10