首頁>Linux>source

設置如下:

  • proxy server (RHEL8 apache 2.4) in DMZ
    • contains multiple vhosts
    • each vhost acts as a reverse proxy to a web server in the LAN
    • connections from the proxy to the backend web server are secured via SSL
  • 局域網中的
  • 後端服務器(RHEL8 Apache 2.4)

要解決的問题 当前,後端服務器的apache訪問日志顯示代理的IP,而不是原始客戶端IP.我想確保將客戶端IP(正在連線到代理)記錄在後端apache服務器的訪問日志中。

網上有很多方法(例如讨論 在linode論坛上。)

代理服務器同時具有SSL證书的公钥和私钥。

如何配置代理服務器以添加 RemoteIPHeader X-Forwarded-For 標頭,同時保持与後端的SSL連線?

代理服務器(IP 192.168.1.2)的虛擬主機配置:

X-Forwarded-for
<VirtualHost *:443> ServerName service.example.com SSLEngine on SSLCipherSuite AES256+EECDH:AES256+EDH SSLProtocol All -SSLv2 -SSLv3 SSLHonorCipherOrder On SSLCompression off SSLCertificateFile /etc/pki/tls/certs/service_example_com.crt SSLCertificateKeyFile /etc/pki/tls/private/service_example_com.key SSLCertificateChainFile /etc/pki/tls/certs/CA.crt SSLProxyEngine on ProxyPass / https://backend-1.anubex.com/ ProxyPassReverse / https://backend-1.anubex.com/ RemoteIPHeader X-Forwarded-For RemoteIPInternalProxy 192.168.1.2 </VirtualHost>
最新回復
  • 5月前
    1 #

    您顯示的不是SSL直通,而是反向代理處的SSL终止,並从那裏到最终服務器的另一个HTTPS連線.根据文件,這將自動添加 X-Forwarded-Header 到最终服務器的新請求,因此不需要在反向代理上為此进行任何特殊配置。

    使用 %a實際記錄此標頭 在最终服務器(也是Apache)上,必须相應地解釋代理設置的此標頭.為此,可以使用mod_remoteip和 RemoteIPHeader 應该設置為 X-Forwarded-For -正如您(錯誤地)在反向代理的配置中所做的那樣。

相似問題

  • data recovery:通過額外的硬鏈接對重命名的崩潰保證是什麼?