Răsfoiți Sursa

Fix creating wrong cert type when trying dns

Jamie Curnow 1 lună în urmă
părinte
comite
e4d9f48870

+ 20 - 14
backend/internal/certificate.js

@@ -20,6 +20,8 @@ import internalNginx from "./nginx.js";
 
 const letsencryptConfig = "/etc/letsencrypt.ini";
 const certbotCommand = "certbot";
+const certbotLogsDir = "/data/logs";
+const certbotWorkDir = "/tmp/letsencrypt-lib";
 
 const omissions = () => {
 	return ["is_deleted", "owner.is_deleted"];
@@ -830,18 +832,18 @@ const internalCertificate = {
 			"--config",
 			letsencryptConfig,
 			"--work-dir",
-			"/tmp/letsencrypt-lib",
+			certbotWorkDir,
 			"--logs-dir",
-			"/tmp/letsencrypt-log",
+			certbotLogsDir,
 			"--cert-name",
 			`npm-${certificate.id}`,
 			"--agree-tos",
 			"--authenticator",
 			"webroot",
-			"--email",
+			"-m",
 			email,
 			"--preferred-challenges",
-			"dns,http",
+			"http",
 			"--domains",
 			certificate.domain_names.join(","),
 		];
@@ -884,14 +886,16 @@ const internalCertificate = {
 			"--config",
 			letsencryptConfig,
 			"--work-dir",
-			"/tmp/letsencrypt-lib",
+			certbotWorkDir,
 			"--logs-dir",
-			"/tmp/letsencrypt-log",
+			certbotLogsDir,
 			"--cert-name",
 			`npm-${certificate.id}`,
 			"--agree-tos",
-			"--email",
+			"-m",
 			email,
+			"--preferred-challenges",
+			"dns",
 			"--domains",
 			certificate.domain_names.join(","),
 			"--authenticator",
@@ -987,13 +991,13 @@ const internalCertificate = {
 			"--config",
 			letsencryptConfig,
 			"--work-dir",
-			"/tmp/letsencrypt-lib",
+			certbotWorkDir,
 			"--logs-dir",
-			"/tmp/letsencrypt-log",
+			certbotLogsDir,
 			"--cert-name",
 			`npm-${certificate.id}`,
 			"--preferred-challenges",
-			"dns,http",
+			"http",
 			"--no-random-sleep-on-renew",
 			"--disable-hook-validation",
 		];
@@ -1031,11 +1035,13 @@ const internalCertificate = {
 			"--config",
 			letsencryptConfig,
 			"--work-dir",
-			"/tmp/letsencrypt-lib",
+			certbotWorkDir,
 			"--logs-dir",
-			"/tmp/letsencrypt-log",
+			certbotLogsDir,
 			"--cert-name",
 			`npm-${certificate.id}`,
+			"--preferred-challenges",
+			"dns",
 			"--disable-hook-validation",
 			"--no-random-sleep-on-renew",
 		];
@@ -1068,9 +1074,9 @@ const internalCertificate = {
 			"--config",
 			letsencryptConfig,
 			"--work-dir",
-			"/tmp/letsencrypt-lib",
+			certbotWorkDir,
 			"--logs-dir",
-			"/tmp/letsencrypt-log",
+			certbotLogsDir,
 			"--cert-path",
 			`${internalCertificate.getLiveCertPath(certificate.id)}/fullchain.pem`,
 			"--delete-after-revoke",

+ 3 - 0
frontend/src/modals/DNSCertificateModal.tsx

@@ -42,6 +42,9 @@ const DNSCertificateModal = EasyModal.create(({ visible, remove }: InnerModalPro
 					{
 						domainNames: [],
 						provider: "letsencrypt",
+						meta: {
+							dnsChallenge: true,
+						},
 					} as any
 				}
 				onSubmit={onSubmit}