-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathaccesslog.sh
97 lines (90 loc) · 1.63 KB
/
accesslog.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
ban(){
# 获取目标名
name=$1
# 读取 /home/site/access-log/access.log 日志
ips=`cat /home/site/access-log/access.log |grep ${name} | awk '{print $4}'`
if [[ ! -z ${ips} ]]; then
for ip in ${ips}
do
# 检查重复
exist=`iptables -nL | grep ${ip}`
# 封禁并记录到文本
[[ -z ${exist} ]] && iptables -t filter -A INPUT -s ${ip} -j DROP && date=`date +%Y.%m.%d-%H:%M:%S` && echo "${date} ${name} ${ip}" >> /home/ban/accesslog.conf
done
fi
}
#每 1800 秒循环一次
while true
do
# 输入 $1
ban 'wp-login'
ban 'UptimeRobot'
ban 'qihoobot'
ban 'Baiduspider'
ban 'Mediapartners-Google'
ban 'Adsbot-Google'
ban 'Feedfetcher-Google'
ban 'Yahoo'
ban 'Slurp'
ban 'YoudaoBot'
ban 'Sosospider'
ban 'Sogou'
ban 'MSNBot'
ban 'ia_archiver'
ban 'Tomato'
ban 'FeedDemon'
ban 'JikeSpider'
ban 'Library'
ban 'Alexa'
ban 'Toolbar'
ban 'AskTbFXTV'
ban 'AhrefsBot'
ban 'CrawlDaddy'
ban 'CoolpadWebkit'
ban 'Feedly'
ban 'UniversalFeedParser'
ban 'ApacheBench'
ban 'Swiftbot'
ban 'ZmEuoBot'
ban 'jaunty'
ban 'Python-urllib'
ban 'lightDeckReports'
ban 'YYSpider'
ban 'DigExt'
ban 'Yisou'
ban 'MJ12bot'
ban 'heritrix'
ban 'Easou'
ban 'Ezooms'
ban 'Yodao'
ban 'Bingbot'
ban 'Teoma'
ban 'twiceler'
ban 'Scrubby'
ban 'Robozilla'
ban 'Gigabot'
ban 'Googlebot-image'
ban 'Googlebot-mobile'
ban 'psbot'
ban 'DuckDuckBot'
ban 'YandexBot'
ban 'Exabot'
ban 'facebot'
ban 'facebookexternalhit'
ban 'Scrapy'
ban 'HttpClient'
ban 'Curl'
ban 'Wget'
ban 'Idm'
ban 'Aria2'
ban 'Axel'
ban 'Thunder'
ban 'Youtube'
ban 'Movgrab'
ban 'torrent'
ban 'Transmission'
ban 'vuze'
ban 'blogspot'
ban '444'
sleep 1800
done