Séchert Apache mat Lets Encrypt SSL Certificate op CentOS 8


D'Sécherheet vun Ärem Webserver ass ëmmer ee vun de Schlësselfaktoren déi Dir sollt berücksichtegen ier Dir mat Ärer Websäit live geet. E Sécherheetszertifika ass kritesch fir de Traffic ze sécheren, dee vu Webbrowser op de Webserver geschéckt gëtt, an doduerch inspiréiert et d'Benotzer fir Daten mat Ärer Websäit auszetauschen am vollen Wëssen datt de geschéckte Traffic geséchert ass.

An deene meeschte Fäll gi Sécherheetszertifikater all Joer bezuelt an erneiert. Let's Encrypt Zertifikat ass eng gratis, oppen an automatiséiert Zertifika Autoritéit déi Dir benotze kënnt fir Äre Site ze verschlësselen. Den Zertifika leeft no all 90 Deeg of a gëtt automatesch erneiert ouni Käschten.

Recommandéiert Liesen: Wéi Séchert Nginx mat Let's Encrypt op CentOS 8

An dësem Artikel wäerte mir Iech weisen wéi Dir de Let's Encrypt Certificate mat Certbot fir den Apache Webserver installéiere kënnt a spéider den Zertifika konfiguréieren fir automatesch op CentOS 8 ze erneieren.

Ier Dir ufänkt, gitt sécher datt Dir déi folgend op der Plaz hutt:

1. Eng Instanz vum CentOS 8 Server mat Apache HTTP Webserver installéiert a lafen. Dir kënnt bestätegen datt Ären Apache Webserver op a leeft.

$ sudo dnf install httpd
$ sudo systemctl status httpd

2. E Fully Qualified Domain Name (FQDN) weist op Är ëffentlech IP Adress vun Ärem Webserver op Ärem DNS Webhosting Provider. Fir dëse Guide benotze mir linuxtechwhiz.info déi op d'IP vum Server weist 34.67.63.136.

Schrëtt 1. Installéiert Certbot an CentOS 8

Certbot ass e Client deen d'Installatioun vum Sécherheetszertifika automatiséiert. Et hëlt den Zertifika vun der Let's Encrypt Autoritéit an setzt se op Ärem Webserver ouni vill Stress.

Certbot ass absolut gratis an erlaabt Iech den Zertifika op eng interaktiv Manéier z'installéieren andeems Dir Instruktiounen generéiert baséiert op der Konfiguratioun vun Ärem Webserver.

Ier Dir den certbot eroflueden, installéiere fir d'éischt Packagen déi néideg sinn fir d'Konfiguratioun vun enger verschlësselter Verbindung.

Mir fänken un mat der Installatioun vum EPEL Repository deen héichqualitativ zousätzlech Packagen fir RHEL-baséiert Systemer ubitt:

$ sudo dnf install epel-release

Als nächst installéiert d'mod_ssl an openssl Packagen.

$ sudo dnf install mod_ssl openssl

Wann all d'Ofhängegkeeten installéiert sinn, installéiert Certbot an den Apache Modul fir Certbot.

$ sudo dnf install certbot python3-certbot-apache

De Kommando installéiert Certbot, den Apache Modul fir Certbot, an aner Ofhängegkeeten.

Schrëtt 2: Erstellt en Apache Virtual Host

De nächste Schrëtt ass eng virtuell Hostdatei fir eis Domain ze kreéieren - linuxtechwhiz.info. Fänkt un mam éischten Dokumentroot ze kreéieren wou Dir Är HTML Dateien placéiert.

$ sudo mkdir /var/www/linuxtechwhiz.info.conf

Erstellt en Test index.html Datei wéi gewisen.

$ sudo echo “<h1>Welcome to Apache HTTP server</h1>” > /var/www/linuxtechwhiz.info/index.html

Als nächst erstellt eng virtuell Hostdatei wéi gewisen.

$ sudo vim /etc/httpd/conf.d/linuxtechwhiz.info

Fügt d'Konfiguratioun hei ënnen un.

<VirtualHost *:443>
  ServerName linuxtechwhiz.info
  ServerAlias www.linuxtechwhiz.info
  DocumentRoot /var/www/linuxtechwhiz.info/
  <Directory /var/www/linuxtechwhiz.info/>
      Options -Indexes +FollowSymLinks
      AllowOverride All
  </Directory>
  ErrorLog /var/log/httpd/www.linuxtechwhiz.info-error.log
  CustomLog /var/log/httpd/www.linuxtechwhiz.info-access.log combined
</VirtualHost>

Retten an Sortie.

Gitt d'Permissiounen un d'Dokumentroot wéi gewisen.

$ sudo chown -R apache:apache /var/www/linuxtechwhiz.info

Fir d'Ännerungen a Kraaft ze kommen, start den Apache Service nei.

$ sudo systemctl restart httpd

Schrëtt 3: Installéiere Let's Encrypt SSL Certificate op CentOS 8

Elo lafen certbot wéi gewisen fir d'Installatioun vum Let's Encrypt Zertifika unzefänken.

$ sudo certbot --apache -d domain.com

An eisem Fall wäert dëst sinn:

$ sudo certbot --apache -d linuxtechwhiz.info

De Kommando féiert Iech duerch eng Serie vu Prompts fir Iech z'erméiglechen Lets Encrypt fir Är Domain ze konfiguréieren. Gitt sécher Är E-Mailadress unzebidden, akzeptéiert d'Konditioune vum Service a spezifizéiert d'Domainnimm déi Dir wëllt den HTTPS Protokoll benotzen, deen déi verschlësselte Versioun vum HTTP ass.

Wann alles gutt gaang ass, sollt Dir um Enn e Gratulatiounsmessage kréien deen Iech informéiert datt Äre Site mat Let's Encrypt Zertifikat geséchert ass. D'Validitéit vun Ärem Zertifika gëtt och ugewisen - dat ass normalerweis no 90 Deeg nom Ofbau.

Gitt elo zréck op Är virtuell Hostdatei an fügt déi folgend Konfiguratiounslinnen un.

SSLEngine On
 SSLCertificateFile    /etc/letsencrypt/live/linuxtechwhiz.info/fullchain.pem
 SSLCertificateKeyFile  /etc/letsencrypt/live/linuxtechwhiz.info/privkey.pem

Retten an Sortie.

Déi lescht Apache virtuelle Hostkonfiguratioun wäert sou ausgesinn:

<VirtualHost *:443>
  ServerName linuxtechwhiz.info
  ServerAlias www.linuxtechwhiz.info
  DocumentRoot /var/www/linuxtechwhiz.info/
  <Directory /var/www/linuxtechwhiz.info/>
      Options -Indexes +FollowSymLinks
      AllowOverride All
  </Directory>
  ErrorLog /var/log/httpd/www.linuxtechwhiz.info-error.log
  CustomLog /var/log/httpd/www.linuxtechwhiz.info-access.log combined

 SSLEngine On
 SSLCertificateFile    /etc/letsencrypt/live/linuxtechwhiz.info/fullchain.pem
 SSLCertificateKeyFile  /etc/letsencrypt/live/linuxtechwhiz.info/privkey.pem
</VirtualHost>

Nach eng Kéier, Restart Apache.

$ sudo systemctl restart httpd

Schrëtt 4: Verifizéiert de Let's Encrypt SSL Certificate

Fir z'iwwerpréiwen datt alles funktionnéiert, start Äre Browser a besicht d'IP Adress vun Ärem Server. Dir sollt elo e Padlock Symbol um Ufank vun der URL gesinn.

Fir méi Detailer ze kréien, klickt op de Padlock Symbol a klickt op d'Optioun 'Zertifikat' am Pull-Down Menü deen erschéngt.

D'Zertifikat Detailer ginn an der nächster Pop-up Fënster ugewisen.

Och kënnt Dir Äre Server op https://www.ssllabs.com/ssltest/ testen an Äre Site soll en 'A' Grad kréien wéi gewisen.

Schrëtt 5: Auto-Erneierung Loosst eis SSL Zertifika verschlësselen

Let's Encrypt ass nëmme valabel fir 90 Deeg. Normalerweis gëtt den Erneierungsprozess vum certbot Package duerchgefouert, deen e erneiert Skript an /etc/cron.d Verzeichnis bäidréit. De Skript leeft zweemol am Dag a gëtt automatesch all Zertifika bannent 30 Deeg nom Oflaf erneiert.

Fir den Auto-Erneierungsprozess ze testen, maacht en Dréchentest mat certbot.

$ sudo /usr/local/bin/certbot-auto renew --dry-run

Wa keng Feeler begéint goufen, dann implizéiert et datt Dir gutt sidd fir ze goen.

Dëst bréngt eis um Enn vun dësem Guide. An dësem Guide hu mir bewisen wéi Dir certbot benotze kënnt fir de Let's Encrypt Zertifikat op Apache Webserver z'installéieren an ze konfiguréieren op engem CentOS 8 System.