Haproxy IP透傳

IP透傳

web服務器中需要記錄客戶端的真實IP地址,用於做訪問統計、安全防護、行爲分析、區域排行等場景

四層IP透傳

haproxy 配置:
listen web_prot_http_nodes
bind 192.168.7.101:80 
mode tcp
balance roundrobin
server web1 blogs.studylinux.net:80 send-proxy check inter 3000 fall 3 rise 5

nginx配置:
server {
listen 80 proxy_protocol; #透傳參數
#listen 80;
server_name blogs.studylinux.net;

七層IP透傳

當haproxy工作在七層的時候,如何透傳客戶端真實IP至後端服務器

HAProxy配置
haproxy 配置:
defaults
option forwardfor
或者:
option forwardfor header X-Forwarded-xxx #自定義傳遞IP參數,後端web服務器寫X-Forwarded-xxx,如
果寫option forwardfor則後端服務器web格式爲X-Forwarded-For
listen配置:
listen web_host
bind 192.168.7.101:80
mode http
log global
balance random
server web1 192.168.7.103:80 weight 1 check inter 3000 fall 2 rise 5
server web2 192.168.7.104:80 weight 1 check inter 3000 fall 2 rise 5
web服務器日誌格式配置
#apache 配置:
LogFormat "%{X-Forwarded-For}i %a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-
Agent}i\"" combined
#tomcat 配置:
pattern='%{X-Forwarded-For}i %l %T %t "%r" %s %b "%{User-Agent}i"'/>
#nginx 日誌格式:
log_format main '"$http_x_forwarded_For" - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" ';
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章