0
我使用rules file將端口8888上的提琴手配置爲reverse proxy(轉發至80)。現在我想限制可以訪問反向代理的IP範圍作爲安全措施。如何在反向代理模式下編程Fiddler以限制IP範圍?
是否有可能只使用Fiddler規則文件而不需要配置防火牆或Fiddler編程外部的任何內容?
我使用rules file將端口8888上的提琴手配置爲reverse proxy(轉發至80)。現在我想限制可以訪問反向代理的IP範圍作爲安全措施。如何在反向代理模式下編程Fiddler以限制IP範圍?
是否有可能只使用Fiddler規則文件而不需要配置防火牆或Fiddler編程外部的任何內容?
規則>自定義規則。滾動到OnBeforeRequest。
在那裏,你可以使用屬性oSession["X-CLIENTIP"]
獲取客戶端的IP地址,如果你不是滿意的價值,這樣做oSession.oRequest.FailSession(403, "Proxy access denied", "You are not permitted to use this site.");
更新的問題,筆者
使用的示例腳本:
// restrict usage to IPs and ranges
if (oSession["X-CLIENTIP"].indexOf(/*My Business, modify to your IP range>*/"0.0.0.") != 0
&&
oSession["X-CLIENTIP"].indexOf(/*private*/"192.168.") != 0
&&
oSession["X-CLIENTIP"].indexOf(/*localhost*/"127.0.0.") != 0
&&
oSession["X-CLIENTIP"].indexOf(/*private*/"10.") != 0
) {
oSession.oRequest.FailSession(403, "Proxy access denied", "Your IP# is not permitted to use this Fiddler debugger.");
return;
}
另請注意,IPv6可能會拋出一個mon扳手到的事情,因爲X-CLIENTIP可以 192.168.100.139
或::ffff:192.168.100.139
此時程序員可能會考慮使用正則表達式測試,像這樣的是,IP#任化身匹配:
/^(?:\:\:ffff\:)?192\.168\..+/.test(oSession["X-CLIENTIP"])
這是偉大的,它就像一個魅力。我已經將我的實際腳本附加到您的答案中供將來參考 - 它可能會幫助其他人。 –
快速查看X-CLIENTIP向Fiddler報告的內容是將此語句作爲規則文件oSession.oRequest.FailSession(403,「Proxy access denied」,oSession [「X- CLIENTIP「]);'沒有任何條件導致它總是失敗並打印該值,然後使用任何Web瀏覽器打開代理。完成後刪除或註釋掉它。在Fiddler中可能有不同的方式來看這個值,但我還沒有找到它。 –
您可以通過右鍵單擊會話並選擇「屬性」來查看X-ClientIP標誌以及所有其他標誌。 (或者選擇一個並按ALT + ENTER)。 – EricLaw