hoe een SSL-certificaat te installeren op Apache voor CentOS 7
introductie
SSL-certificaten zijn kleine gegevensbestanden die het eigendom van een publieke cryptografische sleutel certificeren. CA ‘ s (Certificate Authorities) garanderen dat de sleutel behoort tot een organisatie, server of andere entiteit die in het certificaat wordt vermeld.
wanneer een gebruiker via zijn browser een gecertificeerde website bezoekt, wordt de informatie versleuteld met een unieke publieke sleutel. De gegevens kunnen alleen worden gedecodeerd met behulp van een unieke persoonlijke sleutel op de hostserver. Dit hoge niveau van versleuteling voorkomt ongeautoriseerde pogingen om toegang te krijgen tot de informatie.
in deze tutorial leert u hoe u een SSL-certificaat installeert op CentOS 7.
Vereisten
- Een user met sudo-rechten
- Toegang tot een commando-regel (Ctrl-Alt-T)
- Een CentOS 7 machine
- Een geldige domeinnaam met DNS-wees naar de server
Hoe kan ik een SSL-Certificaat
Er zijn verschillende manieren om het verkrijgen van Certificaten:
- met Behulp van een geautomatiseerd en gratis certificaat autoriteit zoals de Let ‘ s Coderen project.
- commerciële certificaatautoriteiten verstrekken certificaten voor een vergoeding (Comodo, DigiCert, GoDaddy)
- als alternatief is het mogelijk om een zelfondertekend certificaat aan te maken. Dit type certificaat is nuttig voor testdoeleinden of voor gebruik in een ontwikkelomgeving.
als u nog steeds overweegt welk type certificaat u nodig hebt, of welke CA U moet kiezen, hebben we een uitgebreide handleiding voor SSL-certificaten, privésleutels en CSR ‘ s opgesteld om u te helpen bij het proces.
opmerking: vertrouwde CA ‘ s controleren zelfondertekende certificaten niet. Gebruikers kunnen het niet gebruiken om de identiteit van hun server automatisch te valideren.
installeer SSL certificaat met Let ’s Encrypt
Let’ s Encrypt is een vrije, open en geautomatiseerde certificaat authoriteit. Het gebruikt de certbot software tool om certificaten automatisch te beheren.
Certbot is een sterk geautomatiseerd hulpmiddel. Zorg ervoor dat je Apache installatie geldig is en dat je een virtuele host hebt geconfigureerd voor je domein/s. Lees eerst onze tutorial over het installeren van Apache op CentOS 7 als je hulp nodig hebt bij het configureren van je firewall en virtuele hosts.
Certbot Installatie
1. Gebruik de opdrachtterminal om de EPEL repository en yum-utils te installeren:
sudo yum –y install epel-release yum-utils
2. Installeer vervolgens een module die SSL ondersteunt voor Apache:
sudo yum -y install mod_ssl
In dit voorbeeld is de nieuwste versie van de module al beschikbaar.
3. We kunnen nu certbot installeren voor Apache:
sudo yum –y install python-certbot-apache
4. Zodra de installatie zijn loop loopt, kunt u het proces starten om een certificaat te verkrijgen door in te voeren:
sudo certbot –apache –d yourdomain.com
u kunt certbot ook starten door te typen:
sudo certbot
5. De klant vraagt u om een e-mailadres op te geven en de Servicevoorwaarden te lezen en te accepteren. Certbot toont vervolgens de domeinen die beschikbaar zijn op uw server. Activeer HTTPS voor specifieke domeinen of alle door het veld leeg te laten.
met de volgende prompt kunt u alle verzoeken forceren om HTTPS-toegang te beveiligen.
zodra u uw keuzes hebt gemaakt, bevestigt het bericht op de terminal dat u versleuteling voor uw domein hebt ingeschakeld.
automatische Certificaatvernieuwing
de certificaten uitgegeven door Let ‘ s Encrypt zijn 90 dagen geldig. Het certbot renew Commando controleert de geïnstalleerde certificaten en probeert ze te vernieuwen als ze minder dan 30 dagen verwijderd zijn van vervaldatum. Om dit proces te automatiseren, maakt u een cron-taak aan om het commando periodiek uit te voeren.
gebruik de gewenste teksteditor om te bepalen hoe vaak het vernieuwen moet worden uitgevoerd:
sudo crontab -e
Voer deze regel in en sla de crontab op:
* */12 * * * /usr/bin/certbot renew >/dev/null 2>&1
hoe SSL certificaat te installeren met Comodo
1. De eerste stap is het indienen van een Certificaatondertekeningsverzoek bij een certificeringsinstantie. Onze gedetailleerde handleiding voor het genereren van een certificate signing request (CSR) met OpenSSL is een uitstekende bron als u hulp nodig hebt bij dit proces.
2. Zodra een CA uw verzoek certificeert, ontvangt u een kopie van uw SSL-certificaat. U kunt het certificaat Nu installeren op uw CentOS 7 server.
dit voorbeeld laat zien hoe u een certificaat installeert van een betaalde SSL-provider, Comodo.
3. Zodra Comodo verifieert uw CSR het verzoek, download de SSL-bestanden. Kopieer ze (ComodoRSACA.crt) en het primaire certificaat (uwdomein.crt), naar uw Apache server directory. De persoonlijke sleutel die tijdens het CSR-proces (Certificate Signing Request) wordt gegenereerd, moet zich op dezelfde server bevinden.
virtuele Hosts configureren voor SSL
Aftr u hebt het domein met succes gecertificeerd en de sleutelbestanden op de server geplaatst, de volgende stap is het configureren van de virtuele hosts om het certificaat weer te geven.
1. Toegang tot het SSL-configuratiebestand:
sudo nano /etc/httpd/conf.d/ssl.conf
2. Bewerk het configuratiebestand om naar de juiste bestanden op uw server te wijzen.
Verwijder commentaar op de volgende regels onder Sectie <VirtualHost_default_: 443> en voer de juiste bestandspaden in:
- DocumentRoot”/var/www / yourdomain.com ”
- ServerName yourdomain.com: 443
- SSLEngine op
- SSLCertificateFile-het pad van uw certificaatbestand.
- SSLCertificateKeyFile-het pad van uw sleutelbestand.
- SSLCertificateChainFile – het tussenbestand van COMODO-certificaten.
3. Na het maken van de nodige wijzigingen, verlaat het bestand (Ctrl+X), en druk op y om de wijzigingen op te slaan.
4. Test uw Apache configuratie voordat u opnieuw opstart. Zorg ervoor dat de syntaxis correct is door te typen:
sudo apachectl configtest
5. Zodra het systeem bevestigt dat de syntaxis correct is, herstart Apache:
sudo systemctl restart httpd
je hebt nu je Apache server ingesteld om het SSL certificaat te gebruiken.
Hoe maak je een zelfondertekend SSL certificaat
een zelfondertekend certificaat is handig voor testen, in ontwikkelomgevingen en op een intranet.
1. Net als bij Let ‘ s Encrypt, biedt de mod_ssl Apache module ondersteuning voor de SSL-encryptie:
sudo yum –y install mod_ssl
2. Een nieuwe map aanmaken om de privésleutel op te slaan:
sudo mkdir /etc/ssl/privatekey
3. De toegang tot die map beperken tot alleen de root-gebruiker:
sudo chmod 700 /etc/ssl/privatekey
4. Genereer een zelfondertekend certificaat met deze opdracht OpenSSL:
sudo openssl req -x509 -new -newkey rsa:2048 -nodes -days 365 -keyout /etc/ssl/privatekey/ yourdomain.key -out /etc/ssl/certs/yourdomain.csr
dit is een gedetailleerd overzicht van de elementen:
- openssl-activeert de OpenSSL-software
- req-geeft aan dat we een CSR
- nodig hebben-x509-geeft aan om de X. 509-ondertekeningsverzoek
- te gebruiken-new-newkey-Genereer een nieuwe sleutel
- rsa:2048 – het genereren van een 2048-bit RSA-wiskundige toets
- -knooppunten – geen DES, wat betekent dat het niet versleutelen van de persoonlijke sleutel in een PKCS#12-bestand
- –days 365– aantal dagen dat het certificaat is geldig voor
- -keyout – geeft het domein dat u bent het genereren van een sleutel voor
- -uit – hiermee geeft u de naam van het bestand bevat de MVO
Opmerking: vervang uwdomein.nl door uw werkelijke domeinnaam.
5. Het systeem lanceert een vragenlijst voor u in te vullen.
Voer uw gegevens in de beschikbare velden in:
- landnaam – gebruik een tweeletterige landcode
- staat-de staat waar de eigenaar van het domein is opgenomen in
- plaats – de stad waar de eigenaar van het domein is opgenomen in
- organisatienaam – een entiteit die eigenaar is van het domein
- organisatie – eenheid naam –de afdeling of groep in uw organisatie die werkt met certificaten
- Common name – vaakst, the fully qualified domain name (FQDN)
- e – mailadres – contact e-mailadres
- Challenge wachtwoord-definieer een optioneel wachtwoord voor uw sleutelpaar
de afbeelding vertegenwoordigt een voorbeeldvragenlijst in CentOS 7.
6. Ga verder met het configureren van de virtuele host om het nieuwe certificaat weer te geven. Het proces is identiek aan de stappen beschreven in hoofdstuk 2, virtuele Hosts configureren voor SSL.
7. Test uw Apache configuratie voordat u opnieuw opstart. Om er zeker van te zijn dat de syntaxis correct is, typt u:
sudo apachectl configtest
8. Zodra het systeem bevestigt dat de syntaxis correct is, herstart Apache:
sudo systemctl restart httpd
u hebt nu uw Apache-server ingesteld om uw zelfondertekende SSL-certificaat te gebruiken en zou uw site moeten kunnen bezoeken met SSL ingeschakeld.
Hoe controleer ik of een SSL-certificaat geldig is?
om te controleren of een SSL-certificaat geldig is, kunt u openbaar beschikbare services gebruiken, zoals de SSL-Server-Test. Bevestig de status van uw certificaat en controleer of alle gegevens juist zijn.
u kunt ook uw website Openen met https:// om te zien of het SSL-certificaat zichtbaar is. Het groene hangslot geeft aan dat de extra coderingslaag aanwezig is.
conclusie
door deze instructies te volgen, heb je verkeer op je CentOS Linux distributie website beveiligd door een SSL certificaat te implementeren.
uw nieuwe SSL-certificaat zorgt ervoor dat alle gegevens die tussen de webserver en browsers worden doorgegeven privé en veilig blijven.