certbot-dns-plugins.js 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608
  1. /**
  2. * This file contains info about available Certbot DNS plugins.
  3. * This only works for plugins which use the standard argument structure, so:
  4. * --authenticator <plugin-name> --<plugin-name>-credentials <FILE> --<plugin-name>-propagation-seconds <number>
  5. *
  6. * File Structure:
  7. *
  8. * {
  9. * cloudflare: {
  10. * display_name: "Name displayed to the user",
  11. * package_name: "Package name in PyPi repo",
  12. * version_requirement: "Optional package version requirements (e.g. ==1.3 or >=1.2,<2.0, see https://www.python.org/dev/peps/pep-0440/#version-specifiers)",
  13. * dependencies: "Additional dependencies, space separated (as you would pass it to pip install)",
  14. * credentials: `Template of the credentials file`,
  15. * full_plugin_name: "The full plugin name as used in the commandline with certbot, e.g. 'dns-njalla'",
  16. * },
  17. * ...
  18. * }
  19. *
  20. */
  21. module.exports = {
  22. //####################################################//
  23. acmedns: {
  24. display_name: 'ACME-DNS',
  25. package_name: 'certbot-dns-acmedns',
  26. version_requirement: '~=0.1.0',
  27. dependencies: '',
  28. credentials: `dns_acmedns_api_url = http://acmedns-server/
  29. dns_acmedns_registration_file = /data/acme-registration.json`,
  30. full_plugin_name: 'dns-acmedns',
  31. },
  32. aliyun: {
  33. display_name: 'Aliyun',
  34. package_name: 'certbot-dns-aliyun',
  35. version_requirement: '~=0.38.1',
  36. dependencies: '',
  37. credentials: `dns_aliyun_access_key = 12345678
  38. dns_aliyun_access_key_secret = 1234567890abcdef1234567890abcdef`,
  39. full_plugin_name: 'dns-aliyun',
  40. },
  41. //####################################################//
  42. azure: {
  43. display_name: 'Azure',
  44. package_name: 'certbot-dns-azure',
  45. version_requirement: '~=1.2.0',
  46. dependencies: '',
  47. credentials: `# This plugin supported API authentication using either Service Principals or utilizing a Managed Identity assigned to the virtual machine.
  48. # Regardless which authentication method used, the identity will need the “DNS Zone Contributor” role assigned to it.
  49. # 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.
  50. # Using a service principal (option 1)
  51. dns_azure_sp_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5
  52. dns_azure_sp_client_secret = E-xqXU83Y-jzTI6xe9fs2YC~mck3ZzUih9
  53. dns_azure_tenant_id = ed1090f3-ab18-4b12-816c-599af8a88cf7
  54. # Using used assigned MSI (option 2)
  55. # dns_azure_msi_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5
  56. # Using system assigned MSI (option 3)
  57. # dns_azure_msi_system_assigned = true
  58. # Zones (at least one always required)
  59. dns_azure_zone1 = example.com:/subscriptions/c135abce-d87d-48df-936c-15596c6968a5/resourceGroups/dns1
  60. dns_azure_zone2 = example.org:/subscriptions/99800903-fb14-4992-9aff-12eaf2744622/resourceGroups/dns2`,
  61. full_plugin_name: 'dns-azure',
  62. },
  63. //####################################################//
  64. bunny: {
  65. display_name: 'bunny.net',
  66. package_name: 'certbot-dns-bunny',
  67. version_requirement: '~=0.0.9',
  68. dependencies: '',
  69. credentials: `# Bunny API token used by Certbot (see https://dash.bunny.net/account/settings)
  70. dns_bunny_api_key = xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx`,
  71. full_plugin_name: 'dns-bunny',
  72. },
  73. //####################################################//
  74. cloudflare: {
  75. display_name: 'Cloudflare',
  76. package_name: 'certbot-dns-cloudflare',
  77. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  78. dependencies: 'cloudflare',
  79. credentials: `# Cloudflare API token
  80. dns_cloudflare_api_token = 0123456789abcdef0123456789abcdef01234567`,
  81. full_plugin_name: 'dns-cloudflare',
  82. },
  83. //####################################################//
  84. cloudns: {
  85. display_name: 'ClouDNS',
  86. package_name: 'certbot-dns-cloudns',
  87. version_requirement: '~=0.4.0',
  88. dependencies: '',
  89. credentials: `# Target user ID (see https://www.cloudns.net/api-settings/)
  90. dns_cloudns_auth_id=1234
  91. # Alternatively, one of the following two options can be set:
  92. # dns_cloudns_sub_auth_id=1234
  93. # dns_cloudns_sub_auth_user=foobar
  94. # API password
  95. dns_cloudns_auth_password=password1`,
  96. full_plugin_name: 'dns-cloudns',
  97. },
  98. //####################################################//
  99. cloudxns: {
  100. display_name: 'CloudXNS',
  101. package_name: 'certbot-dns-cloudxns',
  102. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  103. dependencies: '',
  104. credentials: `dns_cloudxns_api_key = 1234567890abcdef1234567890abcdef
  105. dns_cloudxns_secret_key = 1122334455667788`,
  106. full_plugin_name: 'dns-cloudxns',
  107. },
  108. //####################################################//
  109. constellix: {
  110. display_name: 'Constellix',
  111. package_name: 'certbot-dns-constellix',
  112. version_requirement: '~=0.2.1',
  113. dependencies: '',
  114. credentials: `dns_constellix_apikey = 5fb4e76f-ac91-43e5-f982458bc595
  115. dns_constellix_secretkey = 47d99fd0-32e7-4e07-85b46d08e70b
  116. dns_constellix_endpoint = https://api.dns.constellix.com/v1`,
  117. full_plugin_name: 'dns-constellix',
  118. },
  119. //####################################################//
  120. corenetworks: {
  121. display_name: 'Core Networks',
  122. package_name: 'certbot-dns-corenetworks',
  123. version_requirement: '~=0.1.4',
  124. dependencies: '',
  125. credentials: `dns_corenetworks_username = asaHB12r
  126. dns_corenetworks_password = secure_password`,
  127. full_plugin_name: 'dns-corenetworks',
  128. },
  129. //####################################################//
  130. cpanel: {
  131. display_name: 'cPanel',
  132. package_name: 'certbot-dns-cpanel',
  133. version_requirement: '~=0.2.2',
  134. dependencies: '',
  135. credentials: `cpanel_url = https://cpanel.example.com:2083
  136. cpanel_username = user
  137. cpanel_password = hunter2`,
  138. full_plugin_name: 'cpanel',
  139. },
  140. //####################################################//
  141. desec: {
  142. display_name: 'deSEC',
  143. package_name: 'certbot-dns-desec',
  144. version_requirement: '~=1.2.1',
  145. dependencies: '',
  146. credentials: `dns_desec_token = YOUR_DESEC_API_TOKEN
  147. dns_desec_endpoint = https://desec.io/api/v1/`,
  148. full_plugin_name: 'dns-desec',
  149. },
  150. //####################################################//
  151. duckdns: {
  152. display_name: 'DuckDNS',
  153. package_name: 'certbot-dns-duckdns',
  154. version_requirement: '~=0.9',
  155. dependencies: '',
  156. credentials: 'dns_duckdns_token=your-duckdns-token',
  157. full_plugin_name: 'dns-duckdns',
  158. },
  159. //####################################################//
  160. digitalocean: {
  161. display_name: 'DigitalOcean',
  162. package_name: 'certbot-dns-digitalocean',
  163. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  164. dependencies: '',
  165. credentials: 'dns_digitalocean_token = 0000111122223333444455556666777788889999aaaabbbbccccddddeeeeffff',
  166. full_plugin_name: 'dns-digitalocean',
  167. },
  168. //####################################################//
  169. directadmin: {
  170. display_name: 'DirectAdmin',
  171. package_name: 'certbot-dns-directadmin',
  172. version_requirement: '~=0.0.23',
  173. dependencies: '',
  174. credentials: `directadmin_url = https://my.directadminserver.com:2222
  175. directadmin_username = username
  176. directadmin_password = aSuperStrongPassword`,
  177. full_plugin_name: 'directadmin',
  178. },
  179. //####################################################//
  180. dnsimple: {
  181. display_name: 'DNSimple',
  182. package_name: 'certbot-dns-dnsimple',
  183. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  184. dependencies: '',
  185. credentials: 'dns_dnsimple_token = MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw',
  186. full_plugin_name: 'dns-dnsimple',
  187. },
  188. //####################################################//
  189. dnsmadeeasy: {
  190. display_name: 'DNS Made Easy',
  191. package_name: 'certbot-dns-dnsmadeeasy',
  192. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  193. dependencies: '',
  194. credentials: `dns_dnsmadeeasy_api_key = 1c1a3c91-4770-4ce7-96f4-54c0eb0e457a
  195. dns_dnsmadeeasy_secret_key = c9b5625f-9834-4ff8-baba-4ed5f32cae55`,
  196. full_plugin_name: 'dns-dnsmadeeasy',
  197. },
  198. //####################################################//
  199. dnspod: {
  200. display_name: 'DNSPod',
  201. package_name: 'certbot-dns-dnspod',
  202. version_requirement: '~=0.1.0',
  203. dependencies: '',
  204. credentials: `dns_dnspod_email = "[email protected]"
  205. dns_dnspod_api_token = "id,key"`,
  206. full_plugin_name: 'dns-dnspod',
  207. },
  208. //####################################################//
  209. domainoffensive: {
  210. display_name: 'DomainOffensive (do.de)',
  211. package_name: 'certbot-dns-do',
  212. version_requirement: '~=0.31.0',
  213. dependencies: '',
  214. credentials: 'dns_do_api_token = YOUR_DO_DE_AUTH_TOKEN',
  215. full_plugin_name: 'dns-do',
  216. },
  217. //####################################################//
  218. domeneshop: {
  219. display_name: 'Domeneshop',
  220. package_name: 'certbot-dns-domeneshop',
  221. version_requirement: '~=0.2.8',
  222. dependencies: '',
  223. credentials: `dns_domeneshop_client_token=YOUR_DOMENESHOP_CLIENT_TOKEN
  224. dns_domeneshop_client_secret=YOUR_DOMENESHOP_CLIENT_SECRET`,
  225. full_plugin_name: 'dns-domeneshop',
  226. },
  227. //####################################################//
  228. dynu: {
  229. display_name: 'Dynu',
  230. package_name: 'certbot-dns-dynu',
  231. version_requirement: '~=0.0.1',
  232. dependencies: '',
  233. credentials: 'dns_dynu_auth_token = YOUR_DYNU_AUTH_TOKEN',
  234. full_plugin_name: 'dns-dynu',
  235. },
  236. //####################################################//
  237. eurodns: {
  238. display_name: 'EuroDNS',
  239. package_name: 'certbot-dns-eurodns',
  240. version_requirement: '~=0.0.4',
  241. dependencies: '',
  242. credentials: `dns_eurodns_applicationId = myuser
  243. dns_eurodns_apiKey = mysecretpassword
  244. dns_eurodns_endpoint = https://rest-api.eurodns.com/user-api-gateway/proxy`,
  245. full_plugin_name: 'dns-eurodns',
  246. },
  247. //####################################################//
  248. gandi: {
  249. display_name: 'Gandi Live DNS',
  250. package_name: 'certbot_plugin_gandi',
  251. version_requirement: '~=1.3.2',
  252. dependencies: '',
  253. credentials: `# live dns v5 api key
  254. dns_gandi_api_key=APIKEY
  255. # optional organization id, remove it if not used
  256. dns_gandi_sharing_id=SHARINGID`,
  257. full_plugin_name: 'dns-gandi',
  258. },
  259. //####################################################//
  260. godaddy: {
  261. display_name: 'GoDaddy',
  262. package_name: 'certbot-dns-godaddy',
  263. version_requirement: '~=0.2.0',
  264. dependencies: '',
  265. credentials: `dns_godaddy_secret = 0123456789abcdef0123456789abcdef01234567
  266. dns_godaddy_key = abcdef0123456789abcdef01234567abcdef0123`,
  267. full_plugin_name: 'dns-godaddy',
  268. },
  269. //####################################################//
  270. google: {
  271. display_name: 'Google',
  272. package_name: 'certbot-dns-google',
  273. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  274. dependencies: '',
  275. credentials: `{
  276. "type": "service_account",
  277. ...
  278. }`,
  279. full_plugin_name: 'dns-google',
  280. },
  281. //####################################################//
  282. googledomains: {
  283. display_name: 'GoogleDomainsDNS',
  284. package_name: 'certbot-dns-google-domains',
  285. version_requirement: '~=0.1.5',
  286. dependencies: '',
  287. credentials: `dns_google_domains_access_token = 0123456789abcdef0123456789abcdef01234567
  288. dns_google_domains_zone = "example.com"`,
  289. full_plugin_name: 'dns-google-domains',
  290. },
  291. //####################################################//
  292. hetzner: {
  293. display_name: 'Hetzner',
  294. package_name: 'certbot-dns-hetzner',
  295. version_requirement: '~=1.0.4',
  296. dependencies: '',
  297. credentials: 'dns_hetzner_api_token = 0123456789abcdef0123456789abcdef',
  298. full_plugin_name: 'dns-hetzner',
  299. },
  300. //####################################################//
  301. infomaniak: {
  302. display_name: 'Infomaniak',
  303. package_name: 'certbot-dns-infomaniak',
  304. version_requirement: '~=0.1.12',
  305. dependencies: '',
  306. credentials: 'dns_infomaniak_token = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
  307. full_plugin_name: 'dns-infomaniak',
  308. },
  309. //####################################################//
  310. inwx: {
  311. display_name: 'INWX',
  312. package_name: 'certbot-dns-inwx',
  313. version_requirement: '~=2.1.2',
  314. dependencies: '',
  315. credentials: `dns_inwx_url = https://api.domrobot.com/xmlrpc/
  316. dns_inwx_username = your_username
  317. dns_inwx_password = your_password
  318. dns_inwx_shared_secret = your_shared_secret optional`,
  319. full_plugin_name: 'dns-inwx',
  320. },
  321. //####################################################//
  322. ionos: {
  323. display_name: 'IONOS',
  324. package_name: 'certbot-dns-ionos',
  325. version_requirement: '==2022.11.24',
  326. dependencies: '',
  327. credentials: `dns_ionos_prefix = myapikeyprefix
  328. dns_ionos_secret = verysecureapikeysecret
  329. dns_ionos_endpoint = https://api.hosting.ionos.com`,
  330. full_plugin_name: 'dns-ionos',
  331. },
  332. //####################################################//
  333. ispconfig: {
  334. display_name: 'ISPConfig',
  335. package_name: 'certbot-dns-ispconfig',
  336. version_requirement: '~=0.2.0',
  337. dependencies: '',
  338. credentials: `dns_ispconfig_username = myremoteuser
  339. dns_ispconfig_password = verysecureremoteuserpassword
  340. dns_ispconfig_endpoint = https://localhost:8080`,
  341. full_plugin_name: 'dns-ispconfig',
  342. },
  343. //####################################################//
  344. isset: {
  345. display_name: 'Isset',
  346. package_name: 'certbot-dns-isset',
  347. version_requirement: '~=0.0.3',
  348. dependencies: '',
  349. credentials: `dns_isset_endpoint="https://customer.isset.net/api"
  350. dns_isset_token="<token>"`,
  351. full_plugin_name: 'dns-isset',
  352. },
  353. joker: {
  354. display_name: 'Joker',
  355. package_name: 'certbot-dns-joker',
  356. version_requirement: '~=1.1.0',
  357. dependencies: '',
  358. credentials: `dns_joker_username = <Dynamic DNS Authentication Username>
  359. dns_joker_password = <Dynamic DNS Authentication Password>
  360. dns_joker_domain = <Dynamic DNS Domain>`,
  361. full_plugin_name: 'dns-joker',
  362. },
  363. //####################################################//
  364. linode: {
  365. display_name: 'Linode',
  366. package_name: 'certbot-dns-linode',
  367. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  368. dependencies: '',
  369. credentials: `dns_linode_key = 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ64
  370. dns_linode_version = [<blank>|3|4]`,
  371. full_plugin_name: 'dns-linode',
  372. },
  373. //####################################################//
  374. loopia: {
  375. display_name: 'Loopia',
  376. package_name: 'certbot-dns-loopia',
  377. version_requirement: '~=1.0.0',
  378. dependencies: '',
  379. credentials: `dns_loopia_user = user@loopiaapi
  380. dns_loopia_password = abcdef0123456789abcdef01234567abcdef0123`,
  381. full_plugin_name: 'dns-loopia',
  382. },
  383. //####################################################//
  384. luadns: {
  385. display_name: 'LuaDNS',
  386. package_name: 'certbot-dns-luadns',
  387. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  388. dependencies: '',
  389. credentials: `dns_luadns_email = [email protected]
  390. dns_luadns_token = 0123456789abcdef0123456789abcdef`,
  391. full_plugin_name: 'dns-luadns',
  392. },
  393. //####################################################//
  394. namecheap: {
  395. display_name: 'Namecheap',
  396. package_name: 'certbot-dns-namecheap',
  397. version_requirement: '~=1.0.0',
  398. dependencies: '',
  399. credentials: `dns_namecheap_username = 123456
  400. dns_namecheap_api_key = 0123456789abcdef0123456789abcdef01234567`,
  401. full_plugin_name: 'dns-namecheap',
  402. },
  403. //####################################################//
  404. netcup: {
  405. display_name: 'netcup',
  406. package_name: 'certbot-dns-netcup',
  407. version_requirement: '~=1.0.0',
  408. dependencies: '',
  409. credentials: `dns_netcup_customer_id = 123456
  410. dns_netcup_api_key = 0123456789abcdef0123456789abcdef01234567
  411. dns_netcup_api_password = abcdef0123456789abcdef01234567abcdef0123`,
  412. full_plugin_name: 'dns-netcup',
  413. },
  414. //####################################################//
  415. njalla: {
  416. display_name: 'Njalla',
  417. package_name: 'certbot-dns-njalla',
  418. version_requirement: '~=1.0.0',
  419. dependencies: '',
  420. credentials: 'dns_njalla_token = 0123456789abcdef0123456789abcdef01234567',
  421. full_plugin_name: 'dns-njalla',
  422. },
  423. //####################################################//
  424. nsone: {
  425. display_name: 'NS1',
  426. package_name: 'certbot-dns-nsone',
  427. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  428. dependencies: '',
  429. credentials: 'dns_nsone_api_key = MDAwMDAwMDAwMDAwMDAw',
  430. full_plugin_name: 'dns-nsone',
  431. },
  432. //####################################################//
  433. oci: {
  434. display_name: 'Oracle Cloud Infrastructure DNS',
  435. package_name: 'certbot-dns-oci',
  436. package_version: '0.3.6',
  437. dependencies: 'oci',
  438. credentials: `[DEFAULT]
  439. user = ocid1.user.oc1...
  440. fingerprint = xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
  441. tenancy = ocid1.tenancy.oc1...
  442. region = us-ashburn-1
  443. key_file = ~/.oci/oci_api_key.pem`,
  444. full_plugin_name: 'dns-oci',
  445. },
  446. //####################################################//
  447. online: {
  448. display_name: 'Online',
  449. package_name: 'certbot-dns-online',
  450. version_requirement: '~=0.0.8',
  451. dependencies: '',
  452. credentials: 'dns_online_token=0123456789abcdef0123456789abcdef01234567',
  453. full_plugin_name: 'dns-online',
  454. },
  455. //####################################################//
  456. ovh: {
  457. display_name: 'OVH',
  458. package_name: 'certbot-dns-ovh',
  459. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  460. dependencies: '',
  461. credentials: `dns_ovh_endpoint = ovh-eu
  462. dns_ovh_application_key = MDAwMDAwMDAwMDAw
  463. dns_ovh_application_secret = MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
  464. dns_ovh_consumer_key = MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw`,
  465. full_plugin_name: 'dns-ovh',
  466. },
  467. //####################################################//
  468. plesk: {
  469. display_name: 'Plesk',
  470. package_name: 'certbot-dns-plesk',
  471. version_requirement: '~=0.3.0',
  472. dependencies: '',
  473. credentials: `dns_plesk_username = your-username
  474. dns_plesk_password = secret
  475. dns_plesk_api_url = https://plesk-api-host:8443`,
  476. full_plugin_name: 'dns-plesk',
  477. },
  478. //####################################################//
  479. porkbun: {
  480. display_name: 'Porkbun',
  481. package_name: 'certbot-dns-porkbun',
  482. version_requirement: '~=0.2',
  483. dependencies: '',
  484. credentials: `dns_porkbun_key=your-porkbun-api-key
  485. dns_porkbun_secret=your-porkbun-api-secret`,
  486. full_plugin_name: 'dns-porkbun',
  487. },
  488. //####################################################//
  489. powerdns: {
  490. display_name: 'PowerDNS',
  491. package_name: 'certbot-dns-powerdns',
  492. version_requirement: '~=0.2.0',
  493. dependencies: '',
  494. credentials: `dns_powerdns_api_url = https://api.mypowerdns.example.org
  495. dns_powerdns_api_key = AbCbASsd!@34`,
  496. full_plugin_name: 'dns-powerdns',
  497. },
  498. //####################################################//
  499. regru: {
  500. display_name: 'reg.ru',
  501. package_name: 'certbot-regru',
  502. version_requirement: '~=1.0.2',
  503. dependencies: '',
  504. credentials: `dns_username=username
  505. dns_password=password`,
  506. full_plugin_name: 'dns',
  507. },
  508. //####################################################//
  509. rfc2136: {
  510. display_name: 'RFC 2136',
  511. package_name: 'certbot-dns-rfc2136',
  512. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  513. dependencies: '',
  514. credentials: `# Target DNS server
  515. dns_rfc2136_server = 192.0.2.1
  516. # Target DNS port
  517. dns_rfc2136_port = 53
  518. # TSIG key name
  519. dns_rfc2136_name = keyname.
  520. # TSIG key secret
  521. dns_rfc2136_secret = 4q4wM/2I180UXoMyN4INVhJNi8V9BCV+jMw2mXgZw/CSuxUT8C7NKKFs AmKd7ak51vWKgSl12ib86oQRPkpDjg==
  522. # TSIG key algorithm
  523. dns_rfc2136_algorithm = HMAC-SHA512`,
  524. full_plugin_name: 'dns-rfc2136',
  525. },
  526. //####################################################//
  527. route53: {
  528. display_name: 'Route 53 (Amazon)',
  529. package_name: 'certbot-dns-route53',
  530. version_requirement: '==$(certbot --version | grep -Eo \'[0-9](\\.[0-9]+)+\')', // official plugin, use certbot version
  531. dependencies: '',
  532. credentials: `[default]
  533. aws_access_key_id=AKIAIOSFODNN7EXAMPLE
  534. aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY`,
  535. full_plugin_name: 'dns-route53',
  536. },
  537. //####################################################//
  538. strato: {
  539. display_name: 'Strato',
  540. package_name: 'certbot-dns-strato',
  541. version_requirement: '~=0.1.1',
  542. dependencies: '',
  543. credentials: `dns_strato_username = user
  544. dns_strato_password = pass
  545. # uncomment if youre using two factor authentication:
  546. # dns_strato_totp_devicename = 2fa_device
  547. # dns_strato_totp_secret = 2fa_secret
  548. #
  549. # uncomment if domain name contains special characters
  550. # insert domain display name as seen on your account page here
  551. # dns_strato_domain_display_name = my-punicode-url.de
  552. #
  553. # if youre not using strato.de or another special endpoint you can customise it below
  554. # you will probably only need to adjust the host, but you can also change the complete endpoint url
  555. # dns_strato_custom_api_scheme = https
  556. # dns_strato_custom_api_host = www.strato.de
  557. # dns_strato_custom_api_port = 443
  558. # dns_strato_custom_api_path = "/apps/CustomerService"`,
  559. full_plugin_name: 'dns-strato',
  560. },
  561. //####################################################//
  562. transip: {
  563. display_name: 'TransIP',
  564. package_name: 'certbot-dns-transip',
  565. version_requirement: '~=0.4.3',
  566. dependencies: '',
  567. credentials: `dns_transip_username = my_username
  568. dns_transip_key_file = /etc/letsencrypt/transip-rsa.key`,
  569. full_plugin_name: 'dns-transip',
  570. },
  571. //####################################################//
  572. tencentcloud: {
  573. display_name: 'Tencent Cloud',
  574. package_name: 'certbot-dns-tencentcloud',
  575. version_requirement: '~=2.0.2',
  576. dependencies: '',
  577. credentials: `dns_tencentcloud_secret_id = TENCENT_CLOUD_SECRET_ID
  578. dns_tencentcloud_secret_key = TENCENT_CLOUD_SECRET_KEY`,
  579. full_plugin_name: 'dns-tencentcloud',
  580. },
  581. //####################################################//
  582. vultr: {
  583. display_name: 'Vultr',
  584. package_name: 'certbot-dns-vultr',
  585. version_requirement: '~=1.0.3',
  586. dependencies: '',
  587. credentials: 'dns_vultr_key = YOUR_VULTR_API_KEY',
  588. full_plugin_name: 'dns-vultr',
  589. },
  590. //####################################################//
  591. websupportsk: {
  592. display_name: 'Websupport.sk',
  593. package_name: 'certbot-dns-websupportsk',
  594. version_requirement: '~=0.1.6',
  595. dependencies: '',
  596. credentials: `dns_websupportsk_api_key = <api_key>
  597. dns_websupportsk_secret = <secret>
  598. dns_websupportsk_domain = example.com`,
  599. full_plugin_name: 'dns-websupportsk',
  600. },
  601. };