From 32e6a1d6185a3c90a32d8cb21b1acc45b154650f Mon Sep 17 00:00:00 2001 From: Frank Wall Date: Tue, 11 Oct 2022 13:17:46 +0200 Subject: [PATCH] net/haproxy: add support for req.ssl_hello_type, closes #2311 --- net/haproxy/pkg-descr | 5 +++++ .../controllers/OPNsense/HAProxy/forms/dialogAcl.xml | 11 +++++++++++ .../mvc/app/models/OPNsense/HAProxy/HAProxy.xml | 10 ++++++++++ .../service/templates/OPNsense/HAProxy/haproxy.conf | 2 ++ 4 files changed, 28 insertions(+) diff --git a/net/haproxy/pkg-descr b/net/haproxy/pkg-descr index d33a113b1..c6e99b526 100644 --- a/net/haproxy/pkg-descr +++ b/net/haproxy/pkg-descr @@ -6,6 +6,11 @@ very high loads while needing persistence or Layer7 processing. Plugin Changelog ================ +3.12 + +Added: +* add support for req.ssl_hello_type (#2311) + 3.11 Added: diff --git a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogAcl.xml b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogAcl.xml index 4643f99a8..895bd6e4b 100644 --- a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogAcl.xml +++ b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogAcl.xml @@ -278,6 +278,17 @@ text + + + header + + + + acl.ssl_hello_type + + dropdown + + header 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 f6baa5c87..3be9a91e1 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 @@ -1599,6 +1599,7 @@ SSL Client certificate is valid SSL Client certificate verify error result SSL Client certificate issued by CA common-name + SSL Hello Type Source IP matches specified IP Source IP is local Source IP: TCP source port @@ -1764,6 +1765,15 @@ /^.{1,4096}$/u N + + N + x1 + + 0 - no client hello + 1 - client hello + 2 - server hello + + /^.{1,4096}$/u 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 ea00d11a8..79fde03a0 100644 --- a/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf +++ b/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf @@ -284,6 +284,8 @@ {% set acl_enabled = '0' %} # ERROR: missing parameters {% endif %} +{% elif acl_data.expression == 'ssl_hello_type' %} +{% do acl_options.append('req.ssl_hello_type ' ~ acl_data.ssl_hello_type|replace('x', '')) %} {% elif acl_data.expression == 'src' %} {% if acl_data.src|default("") != "" %} {% do acl_options.append('src ' ~ acl_data.src) %}