diff --git a/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/forms/dialogValidation.xml b/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/forms/dialogValidation.xml
index 6cd0aa7bb..1735eac4f 100644
--- a/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/forms/dialogValidation.xml
+++ b/security/acme-client/src/opnsense/mvc/app/controllers/OPNsense/AcmeClient/forms/dialogValidation.xml
@@ -915,6 +915,27 @@
text
+
+
+ header
+
+
+
+ validation.dns_pleskxml_user
+
+ text
+
+
+ validation.dns_pleskxml_pass
+
+ password
+
+
+ validation.dns_pleskxml_uri
+
+ text
+ Plesk XML URIs often look similar to: https://my-plesk-site.com:8443/enterprise/control/agent.php
+
header
diff --git a/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/AcmeClient.xml b/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/AcmeClient.xml
index 0b5070634..293f0d7b7 100644
--- a/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/AcmeClient.xml
+++ b/security/acme-client/src/opnsense/mvc/app/models/OPNsense/AcmeClient/AcmeClient.xml
@@ -404,6 +404,7 @@
OPNsense BIND Plugin
OVH, kimsufi, soyoustart and runabove API
PowerDNS.com API
+ Plesk XML API
selectel.com / selectel.ru domain API
Servercow API v1
UnoEuro API
@@ -779,6 +780,15 @@
N
+
+ N
+
+
+ N
+
+
+ N
+
N
diff --git a/security/acme-client/src/opnsense/scripts/OPNsense/AcmeClient/certhelper.php b/security/acme-client/src/opnsense/scripts/OPNsense/AcmeClient/certhelper.php
index 7f1578ad3..aee1e5611 100755
--- a/security/acme-client/src/opnsense/scripts/OPNsense/AcmeClient/certhelper.php
+++ b/security/acme-client/src/opnsense/scripts/OPNsense/AcmeClient/certhelper.php
@@ -875,6 +875,11 @@ function run_acme_validation($certObj, $valObj, $acctObj)
$proc_env['PDNS_ServerId'] = (string)$valObj->dns_pdns_serverid;
$proc_env['PDNS_Token'] = (string)$valObj->dns_pdns_token;
break;
+ case 'dns_pleskxml':
+ $proc_env['pleskxml_user'] = (string)$valObj->dns_pleskxml_user;
+ $proc_env['pleskxml_pass'] = (string)$valObj->dns_pleskxml_pass;
+ $proc_env['pleskxml_uri'] = (string)$valObj->dns_pleskxml_uri;
+ break;
case 'dns_selectel':
$proc_env['SL_Key'] = (string)$valObj->dns_sl_key;
break;