ACME SSL /TLS Automatisering med Apache og Nginx

Denne fremgangsmåten vil lede deg gjennom å sette opp automatisk sertifikatinstallasjon og fornyelse med SSL.com for Apache og Nginx med ACME-protokollen og Certbot-klienten.

OBS: Du trenger SSH-tilgang og sudo rettigheter på webserveren din til å følge disse instruksjonene.
OBS:
Du kan bruke mange andre ACME-klienter, inkludert Kubernetes sertifiseringsleder, med SSL.coms ACME-tjeneste.
acme4j  klienten kan nå bruke SSL.com ACME-tjenester på dette depotet: https://github.com/SSLcom/acme4j
Se programvareleverandørens dokumentasjon for instruksjoner for andre ikke-Certbot ACME-klienter.

Installer Certbot og hent ACME-legitimasjon

  1. SSH inn på webserveren din.
  2. Forsikre deg om at en gjeldende versjon av certbot, sammen med Apache- og Nginx-pluginene, er installert på webserveren din:
    • Har du snapd installert, kan du bruke denne kommandoen for installasjon:
      sudo snap install - klassisk certbot
    • If /snap/bin/ er ikke i din PATH, må du også legge til det eller kjøre en kommando som denne:
      sudo ln -s / snap / bin / certbot / usr / bin / certbot
  3. Hent ACME-legitimasjonen din fra SSL.com-kontoen din:
    1. Logg inn på SSL.com-kontoen din. Hvis du allerede er logget inn, gå til Dashbord fanen.
      Dashbord
    2. Klikk api-legitimasjon, som ligger under utviklere og integrasjon.
      API-legitimasjonslink
    3. Du trenger din Konto / ACME-nøkkel og HMAC-nøkkel å be om sertifikater. Klikk på utklippstavleikonet () ved siden av hver tast for å kopiere verdien til utklippstavlen.
      Konto / ACME-nøkkel og HMAC-nøkkel

Apache installasjon og automatisering

Bruk en kommando som denne for å installere på Apache. Erstatt verdier i ALLE CAPS med dine faktiske verdier:

sudo certbot --apache --e-post EMAIL-ADRESSE --agree-tos --no-eff-email --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com --eab -kid ACCOUNT-KEY --eab-hmac-key HMAC-KEY --server https://acme.ssl.com/sslcom-dv-ecc -d DOMENE.NAME

Bryte kommandoen ned:

  • sudo certbot kjører certbot kommando med superbrukerrettigheter.
  • --apache angir å installere sertifikater for bruk med Apache.
  • --email EMAIL-ADDRESS gir en e-postadresse for registrering. Du kan spesifisere flere adresser, atskilt med komma.
  • --agree-tos (valgfritt) godtar ACME-abonnentavtalen. Du kan utelate dette hvis du vil være enig interaktivt.
  • --no-eff-email (valgfritt) indikerer at du ikke vil dele e-postadressen din med EFF. Hvis du utelater dette, vil du bli bedt om å dele e-postadressen din.
  • --config-dir /etc/ssl-com (valgfritt) angir konfigurasjonskatalogen.
  • --logs-dir /var/log/ssl-com (valgfritt) angir katalogen for logger.
  • --eab-kid ACCOUNT-KEY angir kontonøkkelen din.
  • --eab-hmac-key HMAC-KEY spesifiserer HMAC-nøkkelen.
  • --server https://acme.ssl.com/sslcom-dv-ecc spesifiserer SSL.coms ACME-server.
  • -d DOMAIN.NAME angir domenenavnet som sertifikatet skal dekke.
OBS: Certbot 2.0.0 eller nyere genererer som standard ECDSA for nye sertifikater. Kommandoen ovenfor er for et ECDSA-nøkkelpar og -sertifikat. Slik bruker du RSA-nøkler i stedet:

  • Endre --server verdi i kommandoen til https://acme.ssl.com/sslcom-dv-rsa
OBS: Du kan også bruke det -d DOMAIN.NAME alternativ flere ganger i kommandoen din for å legge til domenenavn i sertifikatet ditt. Se vår informasjon på sertifikattyper og fakturering for å se hvordan forskjellige kombinasjoner av domenenavn tilordnes SSL.com-sertifikattyper og deres tilsvarende priser.
Når du først kjører ovennevnte certbot ACME-kontoinformasjon lagres på datamaskinen din i konfigurasjonskatalogen (/etc/ssl-com i kommandoen vist ovenfor. På fremtidige kjøringer av certbot kan du utelate --eab-hmac-key og --eab-kid alternativer fordi certbot vil ignorere dem til fordel for den lokalt lagrede kontoinformasjonen.

Hvis du trenger å knytte ACME-sertifikatordrene til datamaskinen til en annen SSL.com-konto, bør du fjerne denne kontoinformasjonen fra datamaskinen din med kommandoen. sudo rm -r /etc/ssl-com/accounts/acme.ssl.com (eller hvis du har utelatt det valgfrie --config-dir alternativ, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com).

Du bør se utdata som dette etter at du har kjørt kommandoen:

Lagrer feilsøkingslogg til /var/log/ssl-com/letsencrypt.log Valgte programtillegg: Authenticator apache, Installer apache Få ​​et nytt sertifikat Utfører følgende utfordringer: http-01 utfordring for DOMAIN.NAME Venter på bekreftelse ... Rydd opp utfordringer Opprettet en SSL-vhost på /etc/apache2/sites-available/DOMAIN-le-ssl.conf Implementering av sertifikat til VirtualHost /etc/apache2/sites-available/DOMAIN-le-ssl.conf Aktivering av tilgjengelig nettsted: / etc / apache2 / nettsteder tilgjengelig / DOMAIN-le-ssl.conf Omdirigerer vhost i /etc/apache2/sites-enabled/DOMAIN.NAME.conf til ssl vhost i /etc/apache2/sites-available/DOMAIN-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Gratulerer! Du har aktivert https://DOMAIN.NAME - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Certbot vil også lage en crontab-fil som denne for automatisk ikke-interaktiv fornyelse av ethvert certbot-installert sertifikat som utløper innen 30 dager:

$ cat /etc/cron.d/certbot # /etc/cron.d/certbot: crontab-oppføringer for certbot-pakken # # Upstream anbefaler forsøk på fornyelse to ganger om dagen # # Til slutt vil dette være en mulighet til å validere sertifikater # haven ' ikke ble tilbakekalt, etc. Fornyelse vil bare skje hvis utløpet # er innen 30 dager. # # Viktig notat! Denne cronjobben blir IKKE utført hvis du # kjører systemd som ditt init-system. Hvis du kjører systemd, har funksjonen cronjob.timer forrang over denne cronjobben. For # flere detaljer, se systemd.timer manpage, eller bruk systemctl show # certbot.timer. SHELL = / bin / sh PATH = / usr / local / sbin: / usr / local / bin: / sbin: / bin: / usr / sbin: / usr / bin 0 * / 12 * * * root test -x / usr / bin / certbot -a \! -d / run / systemd / system && perl -e 'sleep int (rand (43200))' && certbot -q fornye
OBS: Alt SSL /TLS sertifikater utstedt via ACME av SSL.com har ett års levetid.

Nginx installasjon og automatisering

For Nginx er det bare å erstatte --nginx forum --apache i kommandoen vist ovenfor:

sudo certbot --nginx --e-post EMAIL-ADRESSE --agree-tos --no-eff-email --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com --eab -kid ACCOUNT-KEY --eab-hmac-key HMAC-KEY --server https://acme.ssl.com/sslcom-dv-ecc -d DOMENE.NAME
OBS: Certbot 2.0.0 eller nyere genererer som standard ECDSA for nye sertifikater. Kommandoen ovenfor er for et ECDSA-nøkkelpar og -sertifikat. Slik bruker du RSA-nøkler i stedet:

  • Endre --server verdi i kommandoen til https://acme.ssl.com/sslcom-dv-rsa

Tving fornyelse manuelt

Hvis du ønsker å fornye et sertifikat manuelt før utløpet er nært forestående, bruk denne kommandoen:

certbot fornye - tvangsfornyelse - sert-navn DOMAIN.NAME

SSL.com tilbyr et bredt utvalg av SSL /TLS serversertifikater for HTTPS-nettsteder.

SAMMENLIGN SSL /TLS SERTIFIKATER

Abonner på SSL.coms nyhetsbrev

Ikke gå glipp av nye artikler og oppdateringer fra SSL.com

Hold deg informert og sikker

SSL.com er en global leder innen cybersikkerhet, PKI og digitale sertifikater. Registrer deg for å motta de siste bransjenyhetene, tipsene og produktkunngjøringene fra SSL.com.

Vi vil gjerne ha tilbakemeldinger

Ta vår spørreundersøkelse og fortell oss dine tanker om ditt nylige kjøp.