Iis-7

IIS 可以根據某些查詢自動阻止 IP 嗎?

  • October 19, 2009

如果嘗試對我的伺服器進行某些查詢,IIS7 能否自動阻止 IP 地址?比如,它是否足夠聰明地發現它在短時間內被來自同一 IP 的類似請求發送了垃圾郵件?

例如

以下是我今天的日誌文件中的一些統計數據:

#Software: Microsoft Internet Information Services 7.0
#Version: 1.0
#Date: 2009-09-12 00:28:22
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) cs(Referer) sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
2009-09-12 00:28:22 208.96.29.85 GET /admin/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 196 218
2009-09-12 00:28:22 208.96.29.85 GET /admin/pma/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 200 234
2009-09-12 00:28:23 208.96.29.85 GET /admin/phpmyadmin/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 207 234
2009-09-12 00:28:23 208.96.29.85 GET /db/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 193 218
2009-09-12 00:28:23 208.96.29.85 GET /dbadmin/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 198 218
2009-09-12 00:28:24 208.96.29.85 GET /myadmin/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 198 234
2009-09-12 00:28:24 208.96.29.85 GET /mysql/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 196 218
2009-09-12 00:28:24 208.96.29.85 GET /mysqladmin/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 201 218
2009-09-12 00:28:25 208.96.29.85 GET /typo3/phpmyadmin/js/keyhandler.js - 80 - 85.25.71.40 Toata+dragostea+mea+pentru+diavola - 404 0 2 1471 207 218

沒什麼大不了的,只是屁股疼。是的,他們都是 404 的。但是現在這個垃圾郵件發送者/機器人/腳本小子也可能知道我的 IP 存在並且我是網路伺服器。是的,我太偏執了,但我想在這裡扮演魔鬼的擁護者。

因此,如果我們被一個有一些查詢的機器人/腳本擊中,比如說Toata+dragostea+mea+pentru+diavola(在這種情況下是使用者代理)或/admin/phpmyadmin/js/keyhandler.js(一個實際的資源),那麼這可以被自動阻止嗎?

看看URL Scan,甚至更好的WebKnight。兩者都允許您阻止 URL 中的某些關鍵字。

如果您執行的是 IIS7,則URL 重寫模組可能會為您提供幫助。需要一些組裝。

引用自:https://serverfault.com/questions/64711