Installer et SSL-sertifikat på Apache Mod_SSL

Konfigurerer Apache med SSL

Følgende instruksjoner forutsetter at du ønsker å kjøre begge en sikker server (på port 443) og en vanlig server (på port 80). Først må du konfigurere serveren til å lytte i begge porter. Enten rediger /etc/apache2/ports.conf (i Debian; dette er inkludert i apache2.conf) eller rediger /etc/apache2/apache2.conf direkte for å inkludere linjene:

Lytt 80 Lytt 443

Deretter redigerer du /etc/apache2/sites-enabled/yoursite for å bruke SSL-innstillingene. Å skille de vanlige og sikre serverinnstillingene ut ved å bruke VirtualHosts er det enkleste alternativet når det gjelder vedlikehold. Enhver konfigurasjon utenfor VirtualHosts-seksjonene (for eksempel å sette ServerAdmin) vil gjelde for både (og andre) VirtualHosts.

OBS: Fra Apache 2.4.8 har praksisen med å oppbevare serversertifikat og mellomliggende sertifikatkjede blitt avviklet. Både gjeldende og gamle metoder er detaljert i de klikkbare fanene nedenfor.
Apache 2.4.8 eller nyereApache 2.4.7 eller nyere

Versjoner av Apache 2.4.8 og over forventer at serversertifikatet ditt blir sammenkoblet med eventuelle mellomliggende sertifikater i en fil. For å laste ned en lenket fil fra SSL.com, velg Nginx nedlastingslink i portalkontoen din:

Nginx

Alternativt kan du slå sammen ditt eksisterende sertifikat og mellomfiler med en kommando som følgende:

$ cat /etc/ssl/private/ca-bundle-client.crt >> /etc/ssl/private/yourdomain.crt

Legg til følgende seksjon i konfigurasjonsfilen:

# ===================================================== # SSL /TLS innstillinger # ==================================================== = NameVirtualHost *: 443 DocumentRoot "/ var / www / yoursite" SSLEngine on SSLCertificateFile /etc/ssl/private/yourdomain.chained.crt SSLCertificateKeyFile /etc/ssl/private/myserver.key

Noen få merknader om denne konfigurasjonen:

  • SSLEngine må være aktivert slik at serveren bruker SSL.
  • DocumentRoot angir rotkatalogen for denne virtuelle verten. Dette betyr at du kan skille sikkert innhold helt fra vanlig innhold.
  • SSLCertificateFile bør settes til stedet der du plasserer filen med serverbeviset og mellomkjeden.
  • SSLCertificateKeyFile bør settes til stedet der du legger din private nøkkelfil.

Legg til følgende seksjon i konfigurasjonsfilen:

# ===================================================== # SSL /TLS innstillinger # ==================================================== = NameVirtualHost *: 443 DocumentRoot "/ var / www / yoursite" SSLEngine on SSLCertificateFile /etc/ssl/private/yourdomain.crt SSLCertificateKeyFile /etc/ssl/private/myserver.key SSLCertificateChainFile / etc / ssl / private / ca-bundle klient.crt

Noen få merknader om denne konfigurasjonen:

  • SSLEngine må være aktivert slik at serveren bruker SSL.
  • DocumentRoot angir rotkatalogen for denne virtuelle verten. Dette betyr at du kan skille sikkert innhold helt fra vanlig innhold.
  • SSLCertificateFile, SSLCertificateChainFile, og SSLCertificateKeyFile bør settes til stedene der du plasserer sertifikat-, mellomliggende og private nøkkelfiler.

Hvis du vil kjøre den vanlige serveren på port 80, legger du til følgende avsnitt i konfigurasjonsfilen:

NameVirtualHost *: 80 DocumentRoot "/ var / www / yoursite" # Vertspesifikk katalogoppsett, alternativer osv. # De fleste av disse alternativene blir sannsynligvis satt utenfor VirtualHosts # -seksjonene.

Når du har lagret den redigerte konfigurasjonsfilen, starter du webserveren på nytt. Hvis du brukte en passordfrase når du genererte sertifikatet ditt, må du angi det når du blir utfordret.

Testing

Lag en grunnleggende index.html-side hvor rotkatalogen til webserveren din er, hvis du ikke allerede har innhold der.

Pek deretter nettleseren din på https://www.yoursite.com. Du bør se en SSL-tilkobling åpnet og siden levert. Hvis du bruker et selvsignert sertifikat, vil nettleseren din vise et varsel som advarer deg om at serverens identitet ikke kan bekreftes. Du kan velge å vise og godta sertifikatet. Hvis du bruker et eksternt sertifikat, bør det hele skje uten inngrep.

Sørg også for at du ikke får tilgang til det beskyttede innholdet ved hjelp av http: //. Hvis du prøver, bør du få en feilmelding.

Feilsøking

Hvis det ikke fungerer som forventet, må du først kontrollere at serveren din faktisk kjører ps -a | grep apache. Hvis det ikke gir noe, kan du prøve å starte det på nytt og se etter feilmeldinger på terminalen.

Sjekk også at tillatelsene til nøkkel- og sertifikatfilene dine er riktig angitt (se over), samt tillatelsene til test-HTML-filen og den overordnede katalogen.

Kontroller deretter loggene. Du bør sjekke både hovedserverloggene og også SSL-loggene du konfigurerer i konfigurasjonsfilen ovenfor. Hvis du ikke får noe nyttig, kan du prøve å endre LogLevel-verdien i Apache2-konfigurasjonsfilen til "feilsøking", starte Apache2 på nytt og teste igjen. Dette burde gi mer loggdata.

Hvis du også kjører en vanlig webserver på port 80, kan du prøve å hente en testside via http: // i stedet for https: // for å identifisere om problemet er med webserveren eller med SSL-tilkoblingen. Merk at i oppsettet ovenfor er webserverens rotkatalog forskjellig for http: // og https: //, så du vil ikke (eller ikke burde!) Få tilgang til samme innhold. Hvis testsiden din i http: // rotkatalogen fungerer bra, og testsiden din i https: // rotkatalogen ikke, kan det hjelpe deg med å finne problemet.

Hvis problemet er SSL-tilkoblingen, er det et nyttig verktøy s_client, som er et diagnostisk verktøy for feilsøking TLS/ SSL-tilkoblinger. Den grunnleggende bruken er: /usr/bin/openssl s_client -connect localhost:443. Det er mange andre alternativer også, som du kan sjekke dokumentasjonen for. Hvis du får feilmeldinger, skal dette hjelpe deg med å finne problemet.

Takk for at du valgte SSL.com! Hvis du har spørsmål, kan du kontakte oss via e-post på Support@SSL.com, anrop 1-877-SSL-SECURE, eller bare klikk på chat-koblingen nederst til høyre på denne siden.

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.