Merge pull request #1099 from jc21/updates-dns-providers

Updates Porkbun, DuckDNS & Azure challenge providers
This commit is contained in:
jc21 2021-05-20 08:12:12 +10:00 committed by GitHub
commit 9f146b8fc3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 52 additions and 34 deletions

View File

@ -4,11 +4,20 @@ const App = require('../../main');
const CertificateModel = require('../../../models/certificate'); const CertificateModel = require('../../../models/certificate');
const template = require('./form.ejs'); const template = require('./form.ejs');
const i18n = require('../../i18n'); const i18n = require('../../i18n');
const dns_providers = require('../../../../../global/certbot-dns-plugins'); const dns_providers = sortProvidersAlphabetically(require('../../../../../global/certbot-dns-plugins'));
require('jquery-serializejson'); require('jquery-serializejson');
require('selectize'); require('selectize');
function sortProvidersAlphabetically(obj) {
return Object.entries(obj)
.sort((a,b) => a[1].display_name.toLowerCase() > b[1].display_name.toLowerCase())
.reduce((result, entry) => {
result[entry[0]] = entry[1];
return result;
}, {});
}
module.exports = Mn.View.extend({ module.exports = Mn.View.extend({
template: template, template: template,
className: 'modal-dialog', className: 'modal-dialog',

View File

@ -40,32 +40,31 @@ certbot_dns_aliyun:dns_aliyun_access_key_secret = 1234567890abcdef1234567890abcd
full_plugin_name: 'certbot-dns-aliyun:dns-aliyun', full_plugin_name: 'certbot-dns-aliyun:dns-aliyun',
}, },
//####################################################// //####################################################//
// This can be reactivated once the plugin supports --dns-azure-credentials (https://github.com/binkhq/certbot-dns-azure/issues/7) azure: {
// azure: { display_name: 'Azure',
// display_name: 'Azure', package_name: 'certbot-dns-azure',
// package_name: 'certbot-dns-azure', package_version: '1.2.0',
// package_version: '1.1.0', dependencies: '',
// dependencies: '', credentials: `# This plugin supported API authentication using either Service Principals or utilizing a Managed Identity assigned to the virtual machine.
// credentials: `# This plugin supported API authentication using either Service Principals or utilizing a Managed Identity assigned to the virtual machine. # Regardless which authentication method used, the identity will need the DNS Zone Contributor role assigned to it.
// # Regardless which authentication method used, the identity will need the “DNS Zone Contributor” role assigned to it. # As multiple Azure DNS Zones in multiple resource groups can exist, the config file needs a mapping of zone to resource group ID. Multiple zones -> ID mappings can be listed by using the key dns_azure_zoneX where X is a unique number. At least 1 zone mapping is required.
// # As multiple Azure DNS Zones in multiple resource groups can exist, the config file needs a mapping of zone to resource group ID. Multiple zones -> ID mappings can be listed by using the key dns_azure_zoneX where X is a unique number. At least 1 zone mapping is required.
// # Using a service principal (option 1) # Using a service principal (option 1)
// dns_azure_sp_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5 dns_azure_sp_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5
// dns_azure_sp_client_secret = E-xqXU83Y-jzTI6xe9fs2YC~mck3ZzUih9 dns_azure_sp_client_secret = E-xqXU83Y-jzTI6xe9fs2YC~mck3ZzUih9
// dns_azure_tenant_id = ed1090f3-ab18-4b12-816c-599af8a88cf7 dns_azure_tenant_id = ed1090f3-ab18-4b12-816c-599af8a88cf7
// # Using used assigned MSI (option 2) # Using used assigned MSI (option 2)
// # dns_azure_msi_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5 # dns_azure_msi_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5
// # Using system assigned MSI (option 3) # Using system assigned MSI (option 3)
// # dns_azure_msi_system_assigned = true # dns_azure_msi_system_assigned = true
// # Zones (at least one always required) # Zones (at least one always required)
// dns_azure_zone1 = example.com:/subscriptions/c135abce-d87d-48df-936c-15596c6968a5/resourceGroups/dns1 dns_azure_zone1 = example.com:/subscriptions/c135abce-d87d-48df-936c-15596c6968a5/resourceGroups/dns1
// dns_azure_zone2 = example.org:/subscriptions/99800903-fb14-4992-9aff-12eaf2744622/resourceGroups/dns2`, dns_azure_zone2 = example.org:/subscriptions/99800903-fb14-4992-9aff-12eaf2744622/resourceGroups/dns2`,
// full_plugin_name: 'dns-azure', full_plugin_name: 'dns-azure',
// }, },
//####################################################// //####################################################//
cloudflare: { cloudflare: {
display_name: 'Cloudflare', display_name: 'Cloudflare',
@ -127,9 +126,9 @@ certbot_dns_cpanel:cpanel_password = hunter2`,
duckdns: { duckdns: {
display_name: 'DuckDNS', display_name: 'DuckDNS',
package_name: 'certbot-dns-duckdns', package_name: 'certbot-dns-duckdns',
package_version: '0.5', package_version: '0.6',
dependencies: '', dependencies: '',
credentials: 'dns_duckdns_token=<your-duckdns-token>', credentials: 'dns_duckdns_token=your-duckdns-token',
full_plugin_name: 'dns-duckdns', full_plugin_name: 'dns-duckdns',
}, },
//####################################################// //####################################################//
@ -182,6 +181,15 @@ certbot_dns_dnspod:dns_dnspod_api_token = "DNSPOD-API-TOKEN"`,
full_plugin_name: 'certbot-dns-dnspod:dns-dnspod', full_plugin_name: 'certbot-dns-dnspod:dns-dnspod',
}, },
//####################################################// //####################################################//
dynu: {
display_name: 'Dynu',
package_name: 'certbot-dns-dynu',
package_version: '0.0.1',
dependencies: '',
credentials: 'certbot_dns_dynu:dns_dynu_auth_token = YOUR_DYNU_AUTH_TOKEN',
full_plugin_name: 'certbot-dns-dynu:dns-dynu',
},
//####################################################//
eurodns: { eurodns: {
display_name: 'EuroDNS', display_name: 'EuroDNS',
package_name: 'certbot-dns-eurodns', package_name: 'certbot-dns-eurodns',
@ -327,6 +335,16 @@ dns_ovh_consumer_key = MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw`,
full_plugin_name: 'dns-ovh', full_plugin_name: 'dns-ovh',
}, },
//####################################################// //####################################################//
porkbun: {
display_name: 'Porkbun',
package_name: 'certbot-dns-porkbun',
package_version: '0.2',
dependencies: '',
credentials: `dns_porkbun_key=your-porkbun-api-key
dns_porkbun_secret=your-porkbun-api-secret`,
full_plugin_name: 'dns-porkbun',
},
//####################################################//
powerdns: { powerdns: {
display_name: 'PowerDNS', display_name: 'PowerDNS',
package_name: 'certbot-dns-powerdns', package_name: 'certbot-dns-powerdns',
@ -394,13 +412,4 @@ certbot_dns_transip:dns_transip_key_file = /etc/letsencrypt/transip-rsa.key`,
credentials: 'certbot_dns_vultr:dns_vultr_key = YOUR_VULTR_API_KEY', credentials: 'certbot_dns_vultr:dns_vultr_key = YOUR_VULTR_API_KEY',
full_plugin_name: 'certbot-dns-vultr:dns-vultr', full_plugin_name: 'certbot-dns-vultr:dns-vultr',
}, },
//####################################################//
dynu: {
display_name: 'Dynu',
package_name: 'certbot-dns-dynu',
package_version: '0.0.1',
dependencies: '',
credentials: 'certbot_dns_dynu:dns_dynu_auth_token = YOUR_DYNU_AUTH_TOKEN',
full_plugin_name: 'certbot-dns-dynu:dns-dynu',
},
}; };