diff --git a/dns/ddclient/src/opnsense/mvc/app/controllers/OPNsense/DynDNS/forms/settings.xml b/dns/ddclient/src/opnsense/mvc/app/controllers/OPNsense/DynDNS/forms/settings.xml
index 756a2c440..0a54f0a61 100644
--- a/dns/ddclient/src/opnsense/mvc/app/controllers/OPNsense/DynDNS/forms/settings.xml
+++ b/dns/ddclient/src/opnsense/mvc/app/controllers/OPNsense/DynDNS/forms/settings.xml
@@ -12,6 +12,13 @@
true
Enable verbose logging
+
+ ddclient.general.force_ssl
+
+ checkbox
+ true
+ Force update using HTTPS
+
ddclient.general.daemon_delay
diff --git a/dns/ddclient/src/opnsense/mvc/app/models/OPNsense/DynDNS/DynDNS.xml b/dns/ddclient/src/opnsense/mvc/app/models/OPNsense/DynDNS/DynDNS.xml
index 7f01a0158..36c102011 100644
--- a/dns/ddclient/src/opnsense/mvc/app/models/OPNsense/DynDNS/DynDNS.xml
+++ b/dns/ddclient/src/opnsense/mvc/app/models/OPNsense/DynDNS/DynDNS.xml
@@ -1,6 +1,6 @@
//OPNsense/DynDNS
- 1.0.0
+ 1.1.0
Dynamic DNS client
@@ -14,6 +14,10 @@
0
Y
+
+ 1
+ Y
+
300
Y
diff --git a/dns/ddclient/src/opnsense/service/templates/OPNsense/ddclient/ddclient.conf b/dns/ddclient/src/opnsense/service/templates/OPNsense/ddclient/ddclient.conf
index 5aa00ca1c..354c5917b 100644
--- a/dns/ddclient/src/opnsense/service/templates/OPNsense/ddclient/ddclient.conf
+++ b/dns/ddclient/src/opnsense/service/templates/OPNsense/ddclient/ddclient.conf
@@ -2,6 +2,9 @@
daemon={{OPNsense.DynDNS.general.daemon_delay|default('300')}}
syslog=yes # log update msgs to syslog
pid=/var/run/ddclient.pid # record PID in file.
+{% if not helpers.empty('OPNsense.DynDNS.general.force_ssl') %}
+ssl=yes
+{% endif %}
{% if not helpers.empty('OPNsense.DynDNS.general.verbose') %}
verbose=yes
{% endif %}
@@ -54,34 +57,27 @@ use=if, if={{physical_interface(account.interface)}}, \
{% endif %}
{% if account.service == 'custom' %}
protocol={{account.protocol}}, \
-ssl=yes, \
server={{account.server}}, \
{% elif account.service == 'cloudflare' %}
protocol=cloudflare, \
zone={{account.zone}}, \
{% elif account.service == 'he-net' %}
protocol=dyndns2, \
-ssl=yes, \
server=dyn.dns.he.net, \
{% elif account.service == 'he-net-tunnel' %}
protocol=dyndns2, \
-ssl=yes, \
server=ipv4.tunnelbroker.net, \
{% elif account.service == 'nsupdatev4' %}
protocol=dyndns2, \
-ssl=yes, \
server=ipv4.nsupdate.info, \
{% elif account.service == 'nsupdatev6' %}
protocol=dyndns2, \
-ssl=yes, \
server=ipv6.nsupdate.info, \
{% elif account.service == 'strato' %}
protocol=dyndns2, \
-ssl=yes, \
server=dyndns.strato.com, \
{% else %}
protocol={{account.service}}, \
-ssl=yes, \
{% endif %}
{% if account.wildcard|default('0') == '1' %}
wildcard=yes, \