ACME SSL /TLS Automatisering met Apache en Nginx

Deze how-to helpt u bij het opzetten en vernieuwen van certificaten met SSL.com voor Apache en Nginx met het ACME-protocol en Certbot-client.

Opmerking: Je hebt SSH-toegang nodig en sudo privileges op uw webserver om deze instructies te volgen.
Opmerking:
U kunt vele andere ACME-clients gebruiken, waaronder Kubernetes-certificaatbeheerder, met de ACME-service van SSL.com.
top4j  klant kan nu SSL.com ACME-services gebruiken in deze repository: https://github.com/SSLcom/acme4j
Raadpleeg de documentatie van uw softwareleverancier voor instructies voor andere niet-Certbot ACME-clients.

Installeer Certbot en haal ACME-inloggegevens op

  1. SSH naar uw webserver.
  2. Zorg ervoor dat er een actuele versie van Certbot, samen met de Apache- en Nginx-plug-ins, zijn op uw webserver geïnstalleerd:
    • Als je snapd geïnstalleerd, je kunt dit commando gebruiken voor installatie:
      sudo snap install --klassieke certbot
    • If /snap/bin/ zit niet in je PATH, je moet het ook toevoegen of een commando als dit uitvoeren:
      sudo ln -s / snap / bin / certbot / usr / bin / certbot
  3. Haal uw ACME-inloggegevens op van uw SSL.com-account:
    1. Log in op uw SSL.com-account. Als u al bent aangemeld, gaat u naar het Overzicht Tab.
      Overzicht
    2. Klik api-gegevens, gelegen onder ontwikkelaars en integratie.
      API-inloggegevens link
    3. Je hebt je Account / ACME-sleutel en HMAC-sleutel om certificaten aan te vragen. Klik op het klembordpictogram () naast elke toets om de waarde naar het klembord te kopiëren.
      Account / ACME-sleutel en HMAC-sleutel

Apache-installatie en automatisering

Gebruik een commando als dit om op Apache te installeren. Vervang waarden in HOOFDLETTERS door uw werkelijke waarden:

sudo certbot --apache --email EMAIL-ADDRESS --agree-tos --no-eff-email --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com --eab -kid ACCOUNT-SLEUTEL --eab-hmac-sleutel HMAC-SLEUTEL --server https://acme.ssl.com/sslcom-dv-ecc -d DOMEIN.NAME

Het commando verbreken:

  • sudo certbot loopt het certbot commando met superuser-rechten.
  • --apache specificeert om certificaten te installeren voor gebruik met Apache.
  • --email EMAIL-ADDRESS biedt een registratie-e-mailadres. U kunt meerdere adressen opgeven, gescheiden door komma's.
  • --agree-tos (optioneel) gaat akkoord met de ACME-abonneeovereenkomst. U kunt dit weglaten als u interactief akkoord wilt gaan.
  • --no-eff-email (optioneel) geeft aan dat u uw e-mailadres niet met de EFF wilt delen. Als u dit weglaat, wordt u gevraagd om uw e-mailadres te delen.
  • --config-dir /etc/ssl-com (optioneel) stelt de configuratiemap in.
  • --logs-dir /var/log/ssl-com (optioneel) stelt de map voor logboeken in.
  • --eab-kid ACCOUNT-KEY specificeert uw accountsleutel.
  • --eab-hmac-key HMAC-KEY specificeert uw HMAC-sleutel.
  • --server https://acme.ssl.com/sslcom-dv-ecc specificeert de ACME-server van SSL.com.
  • -d DOMAIN.NAME specificeert de domeinnaam die onder het certificaat valt.
Opmerking: Certbot 2.0.0 of nieuwer genereert standaard ECDSA voor nieuwe certificaten. De bovenstaande opdracht is voor een ECDSA-sleutelpaar en certificaat. Om in plaats daarvan RSA-sleutels te gebruiken:

  • Verander de --server waarde in het commando to https://acme.ssl.com/sslcom-dv-rsa
Opmerking: U kunt gebruik maken van de -d DOMAIN.NAME optie meerdere keren in uw opdracht om domeinnamen aan uw certificaat toe te voegen. Zie onze informatie over certificaattypen en facturering om te zien hoe verschillende combinaties van domeinnamen overeenkomen met SSL.com-certificaattypen en hun bijbehorende prijzen.
Wanneer u het bovenstaande voor het eerst uitvoert certbot opdracht, wordt ACME-accountinformatie op uw computer opgeslagen in de configuratiemap (/etc/ssl-com in de hierboven getoonde opdracht. Bij toekomstige uitvoeringen van certbot kunt u de . weglaten --eab-hmac-key en --eab-kid opties omdat certbot ze negeert ten gunste van de lokaal opgeslagen accountinformatie.

Als u uw ACME-certificaatbestellingen voor de computer moet koppelen aan een ander SSL.com-account, moet u deze accountgegevens van uw computer verwijderen met de opdracht sudo rm -r /etc/ssl-com/accounts/acme.ssl.com (of, als je de optionele . hebt weggelaten --config-dir keuze, sudo rm -r /etc/letsencrypt/accounts/acme.ssl.com).

Je zou de output als volgt moeten zien nadat je de opdracht hebt uitgevoerd:

Foutopsporingslogboek opslaan in /var/log/ssl-com/letsencrypt.log Geselecteerde plug-ins: Authenticator apache, Apache van installatieprogramma Een nieuw certificaat verkrijgen De volgende uitdagingen uitvoeren: http-01-uitdaging voor DOMAIN.NAME Wachten op verificatie ... Uitdagingen opruimen Een SSL-vhost gemaakt op /etc/apache2/sites-available/DOMAIN-le-ssl.conf Certificaat implementeren in VirtualHost /etc/apache2/sites-available/DOMAIN-le-ssl.conf Beschikbare site inschakelen: / etc / apache2 / sites-available / DOMAIN-le-ssl.conf Vhost in /etc/apache2/sites-enabled/DOMAIN.NAME.conf omleiden naar ssl vhost in /etc/apache2/sites-available/DOMAIN-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Gefeliciteerd! Je hebt met succes https://DOMAIN.NAME - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ingeschakeld -

Certbot maakt ook een crontab-bestand zoals dit voor automatische niet-interactieve verlenging van elk door Certbot geïnstalleerd certificaat dat binnen 30 dagen verloopt:

$ cat /etc/cron.d/certbot # /etc/cron.d/certbot: crontab-vermeldingen voor het certbot-pakket # # Upstream raadt aan om tweemaal per dag te vernieuwen # # Uiteindelijk is dit een gelegenheid om certificaten te valideren # haven ' t is ingetrokken, etc. Verlenging vindt alleen plaats als de vervaldatum binnen 30 dagen is. # # Belangrijke notitie! Deze cronjob wordt NIET uitgevoerd als je # systemd draait als je init-systeem. Als u systemd draait, # heeft de functie cronjob.timer voorrang op deze cronjob. Voor meer details, zie de systemd.timer manpage, of gebruik 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 vernieuwen
Opmerking: Alle SSL /TLS certificaten uitgegeven via ACME door SSL.com hebben een levensduur van één jaar.

Nginx installatie en automatisering

Voor Nginx, vervang gewoon --nginx For --apache in de bovenstaande opdracht:

sudo certbot --nginx --email EMAIL-ADDRESS --agree-tos --no-eff-email --config-dir /etc/ssl-com --logs-dir /var/log/ssl-com --eab -kid ACCOUNT-SLEUTEL --eab-hmac-sleutel HMAC-SLEUTEL --server https://acme.ssl.com/sslcom-dv-ecc -d DOMEIN.NAME
Opmerking: Certbot 2.0.0 of nieuwer genereert standaard ECDSA voor nieuwe certificaten. De bovenstaande opdracht is voor een ECDSA-sleutelpaar en certificaat. Om in plaats daarvan RSA-sleutels te gebruiken:

  • Verander de --server waarde in het commando to https://acme.ssl.com/sslcom-dv-rsa

Forceer verlenging handmatig

Als u een certificaat handmatig wilt vernieuwen voordat de vervaldatum nadert, gebruikt u deze opdracht:

certbot vernieuwen --force-vernieuwing --cert-naam DOMAIN.NAME

SSL.com biedt een breed scala aan SSL /TLS server certificaten voor HTTPS-websites.

VERGELIJK SSL /TLS CERTIFICATEN

Abonneer u op de nieuwsbrief van SSL.com

Mis geen nieuwe artikelen en updates van SSL.com

Blijf geïnformeerd en veilig

SSL.com is een wereldleider op het gebied van cyberbeveiliging, PKI en digitale certificaten. Meld u aan om het laatste branchenieuws, tips en productaankondigingen te ontvangen van SSL.com.

We willen graag uw feedback

Vul onze enquête in en laat ons uw mening over uw recente aankoop weten.