問題:通過IIS發佈的網站放到F5設備後邊,通過透明監聽模式WAF設備過濾後,公網訪問者的真實IP被WAF設備IP替代,在網站日誌看不到原來的真實IP了。
處理方案1:利用第三方IIS插件調用X-Forwarded-For獲得來訪者的真實IP,解決IIS放在f5後記錄不到用戶ip的問題。
處理方案2:使用微軟官方的高級日誌模塊功能調用X-Forwarded-For記錄真實IP;
請注意,以上2種方案都需要WAF管理員在F5設備上進行X-Forwarded-For數據轉發定義後使用!
方案1:
下載並解壓 F5XForwardedFor文件。
根據自己的服務器操作系統版本將x86\Release或者 x64\Release目錄下的 F5XFFHttpModule.dll 和 F5XFFHttpModule.ini拷貝到某個目錄,比如 C:\F5XForwardedFor\。確保IIS進程對該目錄有讀取權限。
打開IIS管理器,雙擊模塊功能。
單擊配置本機模塊,然後在彈出的對話框中,單擊註冊。
添加下載的.dll文件(最好x64和x86都添加好)
爲添加的兩個文件授權允許運行ISAPI和CGI擴展。
返回主頁後,重啓IIS:
去%SystemDrive%\inetpub\logs\LogFiles查詢IIS日誌,可以看到日誌裏邊已經有相關原始IP信息了
方案2:
下載安裝IIS高級日誌功能https://www.microsoft.com/en-gb/download/details.aspx?id=7211
重新進IIS主頁,雙擊打開高級日誌功能:
激活高級日誌功能:
修改本機日誌字段配置,增加字段:
Field ID輸入”ClientSourceIP”;
Category選擇”Default”;
Source type選擇”Request Header”;
Source name輸入”X-Forwarded-For”;
添加日誌定義:
在”Base file name”字段中輸入“Client Source IP”;然後點擊”Select Fields”按鈕,並選擇”ClientSourceIP”;最後點擊”應用”,回到主頁;
返回主頁後,重啓IIS:
查詢高級日誌,可以拿到訪客原始IP信息了: