diff --git a/internal/data/cert.go b/internal/data/cert.go index f7a035da..cdbe50a9 100644 --- a/internal/data/cert.go +++ b/internal/data/cert.go @@ -515,6 +515,8 @@ func (r *certRepo) getClient(cert *biz.Cert) (*acme.Client, error) { eab = &acme.EAB{KeyID: cert.Account.Kid, MACKey: cert.Account.HmacEncoded} case "letsencrypt": ca = acme.CALetsEncrypt + case "litessl": + ca = acme.CALiteSSL case "buypass": ca = acme.CABuypass case "zerossl": diff --git a/internal/data/cert_account.go b/internal/data/cert_account.go index 1793df94..0405d7a1 100644 --- a/internal/data/cert_account.go +++ b/internal/data/cert_account.go @@ -88,6 +88,8 @@ func (r certAccountRepo) Create(ctx context.Context, req *request.CertAccountCre client, err = acme.NewRegisterAccount(context.Background(), account.Email, acme.CAGoogle, &acme.EAB{KeyID: account.Kid, MACKey: account.HmacEncoded}, acme.KeyType(account.KeyType), r.log) case "letsencrypt": client, err = acme.NewRegisterAccount(context.Background(), account.Email, acme.CALetsEncrypt, nil, acme.KeyType(account.KeyType), r.log) + case "litessl": + client, err = acme.NewRegisterAccount(context.Background(), account.Email, acme.CALiteSSL, &acme.EAB{KeyID: account.Kid, MACKey: account.HmacEncoded}, acme.KeyType(account.KeyType), r.log) case "buypass": client, err = acme.NewRegisterAccount(context.Background(), account.Email, acme.CABuypass, nil, acme.KeyType(account.KeyType), r.log) case "zerossl": @@ -150,6 +152,8 @@ func (r certAccountRepo) Update(ctx context.Context, req *request.CertAccountUpd client, err = acme.NewRegisterAccount(context.Background(), account.Email, acme.CAGoogle, &acme.EAB{KeyID: account.Kid, MACKey: account.HmacEncoded}, acme.KeyType(account.KeyType), r.log) case "letsencrypt": client, err = acme.NewRegisterAccount(context.Background(), account.Email, acme.CALetsEncrypt, nil, acme.KeyType(account.KeyType), r.log) + case "litessl": + client, err = acme.NewRegisterAccount(context.Background(), account.Email, acme.CALiteSSL, &acme.EAB{KeyID: account.Kid, MACKey: account.HmacEncoded}, acme.KeyType(account.KeyType), r.log) case "buypass": client, err = acme.NewRegisterAccount(context.Background(), account.Email, acme.CABuypass, nil, acme.KeyType(account.KeyType), r.log) case "zerossl": diff --git a/internal/service/cert.go b/internal/service/cert.go index bda7671f..70d4508e 100644 --- a/internal/service/cert.go +++ b/internal/service/cert.go @@ -30,6 +30,14 @@ func (s *CertService) CAProviders(w http.ResponseWriter, r *http.Request) { Label: "Let's Encrypt", Value: "letsencrypt", }, + { + Label: "GoogleCN", + Value: "googlecn", + }, + { + Label: "LiteSSL", + Value: "litessl", + }, { Label: "ZeroSSL", Value: "zerossl", @@ -38,10 +46,6 @@ func (s *CertService) CAProviders(w http.ResponseWriter, r *http.Request) { Label: "SSL.com", Value: "sslcom", }, - { - Label: "GoogleCN", - Value: "googlecn", - }, { Label: "Google", Value: "google", diff --git a/pkg/acme/acme.go b/pkg/acme/acme.go index 51665589..d3237cdd 100644 --- a/pkg/acme/acme.go +++ b/pkg/acme/acme.go @@ -22,6 +22,7 @@ const ( CAGoogle = "https://dv.acme-v02.api.pki.goog/directory" CALetsEncryptStaging = "https://acme-staging-v02.api.letsencrypt.org/directory" CALetsEncrypt = "https://acme-v02.api.letsencrypt.org/directory" + CALiteSSL = "https://acme.litessl.com/acme/v2/directory" CAZeroSSL = "https://acme.zerossl.com/v2/DV90" CABuypass = "https://api.buypass.com/acme/directory" CASSLcom = "https://acme.ssl.com/sslcom-dv-rsa" diff --git a/web/src/views/cert/CreateAccountModal.vue b/web/src/views/cert/CreateAccountModal.vue index c2ee7b09..9dd55c23 100644 --- a/web/src/views/cert/CreateAccountModal.vue +++ b/web/src/views/cert/CreateAccountModal.vue @@ -31,7 +31,7 @@ const model = ref({ }) const showEAB = computed(() => { - return model.value.ca === 'google' || model.value.ca === 'sslcom' + return model.value.ca === 'google' || model.value.ca === 'litessl' || model.value.ca === 'sslcom' }) const handleCreateAccount = () => {