Laatst bijgewerkt op 28 sep 2023 10:23:08.
Categorie:
Alles over SSL certificaten
| SSL configuratie
Dit artikel gaat ervan uit dat u uw certificaat ontvangen hebt van de certificaatuitgever en het wenst te installeren op uw Apache webserver. Om te weten hoe een certificaat aan te vragen, kan u het artikel « Hoe een certificaataanvraag met OpenSSL genereren? » raadplegen.
Apache maakt gebruik van twee SSL instellingen om de paden van uw SSL certificaten na te gaan, één voor uw eigen certificaat, en één voor de intermediate en root certificaten van de certificaatuitgever.
Afhankelijk van de Certificate Authority waarbij u uw certificaat bestelde, heeft u ofwel één enkel bestand met alle certificaten ontvangen, ofwel één bestand voor uw eigen certificaat en een bundel met certificaten van de CA, ofwel allemaal gescheiden bestanden. Het tweede scenario is het meest voorkomende, omdat dat een snelle installatie toelaat in Apache.
Als u afzonderlijke bestanden hebt ontvangen van uw CA, gebruik dan het volgende commando om ze samen te voegen in omgekeerde volgorde. Als er slechts één intermediair certificaat is, dient u er uiteraard maar één toe toe voegen.
cat intermediate_2.crt intermediate_1.crt CA_root.crt >> /etc/certs/bundle.crt
De volgorde waarin u de bestanden bijeenvoegt is van belang:
Het root certificaat hoeft strikt gezien niet mee opgenomen te worden, aangezien het reeds gekend is door de webbrowsers, maar het kan nuttig zijn om een volledige keten van certificaten op te bouwen.
Als u uw eigen certificaat en een certificatenbundel ontving, bewaar ze dan eenvoudig in de directory waar u uw certificaten en sleutels bewaart, bijvoorbeeld /etc/certs.
Open het SSL virtual hosts bestand van uw Apache server. Afhankelijk van uw distributie kan u dit vinden op één van de onderstaande plekken:
Als u twijfelt over de exacte locatie, kan u volgend commando uitvoeren vanuit de /etc directory of één van bovenstaande mappen om een lijst te krijgen van bestaande virtual hosts:
grep -r VirtualHost *
Voeg een nieuw VirtualHost blok toe aan het virtual hosts bestand. Let erop dat u in onderstaand voorbeelde de paden naar de root directory van uw website dient te laten verwijzen, en de SSL parameters naar de directory waar u uw sleutels en certificaten bewaart. Het is mogelijk eenvoudiger om een bestaand VirtualHost blok te kopiëren en aan te passen.
<Virtualhost :443=""> DocumentRoot /home/www/public_html/www.mijndomein.com/public/ ServerName www.mijndomein.com <strong> SSLEngine on SSLCertificateFile /etc/certs/www.mijndomein.com.crt SSLCertificateKeyFile /etc/certs/www.mijndomein.com.key SSLCertificateChainFile /etc/certs/bundle.crt </strong></Virtualhost>
Bovenstaande configuratie is een absoluut minimale SSL configuratie, en het is aan te raden uw web server verder te configureren voor meer performantie en meer veiligheid. U kan de Kinamo artikels over Apache performantie en veiligheid hiervoor gebruiken.
Test uw configuratie alvorens de webserver te herstarten, zoniet loopt u de kans dat Apache door een foute configuratie niet wil opstarten en dat andere websites daardoor hinder ondervinden. U test de configuratie met één van volgende commando's:
httpd -t apachectl configtest apache2ctl configtest
Herstart Apache om uw nieuwe configuratie toe te passen met één van volgende commando's:
/etc/init.d/httpd restart service httpd restart apachectl -k restart
Als uw certificaat niet correct in een browser weergegeven wordt, controleer dan of de webserver de volledige keten van certificaten naar de browser stuurt, met het volgende commando, waarbij u www.kinamo.be vervangt door uw eigen domeinnaam:
openssl s_client -connect www.kinamo.be:443 ... Certificate chain 0 s:/1.3.6.1.4.1.311.60.2.1.3=BE/businessCategory=Private Organization/serialNumber=0861.077.215/C=BE/ST=Antwerpen/L=antwerpen/O=Kinamo NV/CN=www.kinamo.be i:/C=US/O=GeoTrust Inc./CN=GeoTrust Extended Validation SSL CA - G2 1 s:/C=US/O=GeoTrust Inc./CN=GeoTrust Extended Validation SSL CA - G2 i:/C=US/O=GeoTrust Inc./CN=GeoTrust Primary Certification Authority
U zou een reeks certificaten moeten te zien krijgen, te beginnen met het uwe, en eindigend met het root certificaat van de uitgever.
Surf naar de testpagina van Qualys SSL Labs om na te gaan of uw webserver en uw certificaat correct en veilig geconfigureerd zijn.
Werden niet al uw vragen beantwoord?
Geen nood, via een support aanvraag helpen wij u graag verder!