diff --git a/net/haproxy/pkg-descr b/net/haproxy/pkg-descr
index 056cc01d9..da3d9d987 100644
--- a/net/haproxy/pkg-descr
+++ b/net/haproxy/pkg-descr
@@ -9,6 +9,7 @@ Plugin Changelog
Added:
* add support for built-in OCSP update feature
* add support for forwarded header (RFC7239)
+* add option "X-Forwarded-For Header" to backend settings
Fixed:
* fix typo in cert sync script
@@ -17,6 +18,9 @@ Changed:
* move OCSP settings from "Service" to "Global" section
* replace bundled haproxyctl library with haproxy-cli
+Deprecated:
+* frontend option "X-Forwarded-For Header" (the backend option should be used)
+
Removed:
* remove OSCP update cron job
diff --git a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogBackend.xml b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogBackend.xml
index 5895c1013..73bb33ce6 100644
--- a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogBackend.xml
+++ b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogBackend.xml
@@ -188,6 +188,12 @@
true
HAProxy documentation for a full description.]]>
+
+ backend.forwardFor
+
+ checkbox
+
+
header
diff --git a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogFrontend.xml b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogFrontend.xml
index 2a4c492a5..d21e258f9 100644
--- a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogFrontend.xml
+++ b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogFrontend.xml
@@ -207,9 +207,9 @@
frontend.forwardFor
-
+
checkbox
-
+
frontend.prometheus_enabled
diff --git a/net/haproxy/src/opnsense/mvc/app/models/OPNsense/HAProxy/HAProxy.xml b/net/haproxy/src/opnsense/mvc/app/models/OPNsense/HAProxy/HAProxy.xml
index c4eff76bc..01e1eb4de 100644
--- a/net/haproxy/src/opnsense/mvc/app/models/OPNsense/HAProxy/HAProxy.xml
+++ b/net/haproxy/src/opnsense/mvc/app/models/OPNsense/HAProxy/HAProxy.xml
@@ -814,6 +814,7 @@
HTTP/1.0
+
0
Y
@@ -1053,6 +1054,10 @@
HTTP/1.0
+
+ 0
+ N
+
0
N
diff --git a/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf b/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf
index 19b5c50ea..13754b111 100644
--- a/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf
+++ b/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf
@@ -1695,6 +1695,9 @@ backend {{backend.name}}
{% endif %}
option forwarded {{forwarded_params|join(' ')}}
{% endif %}
+{% if backend.forwardFor == '1' and backend.mode == 'http' %}
+ option forwardfor
+{% endif %}
{% if helpers.exists('OPNsense.HAProxy.general.cache') and OPNsense.HAProxy.general.cache.enabled|default("") == "1" and backend.tuning_caching|default("") == "1" and backend.mode == "http" %}
http-request cache-use opnsense-haproxy-cache
http-response cache-store opnsense-haproxy-cache