Hvordan generere et selvsignert SSL-sertifikat på Linux

I dagens guide vil vi diskutere hvordan man genererer et selvsignert SSL-sertifikat på Linux, samt hvordan man implementerer dem i Apache. SSL blir mer og mer viktig etter hvert som internett blir mer populært. Med gratis Let’s Encrypt-sertifikater som blir en vare som alle kan bruke, er det ingen grunn til at noen ikke bruker SSL – for ikke å nevne fordelene for søkerangering, og det faktum at nettlesere og søkemotorer vil stole på nettstedet ditt.

Du kan imidlertid også generere ditt eget, selvsignerte SSL-sertifikat for privat bruk på serveren din. En stor grunn til å gjøre dette er kryptering. Mens ditt personlige sertifikat ikke vil bety noe for nettlesere, og besøkende fremdeles vil få en advarsel hvis de besøker nettstedet ditt direkte, kan du i det minste være sikker på at du er beskyttet mot «mann-i-midten» -angrep. Et selvsignert sertifikat er et godt første trinn når du bare tester ting på serveren din, og kanskje ikke engang har et domenenavn ennå.

La oss starte med vår trinnvise prosedyre på hvordan lage et selvsignert SSL-sertifikat på Linux.

Innholdsfortegnelse

Trinn 1: Opprett et RSA-tastatur

Det første trinnet i å generere ditt eget selvsignerte SSL-sertifikat er å bruke «openssl» -pakken på Linux / CentOS for å lage et RSA-nøkkelpar. For å gjøre dette må du sørge for at pakken er installert. Hvis ikke, installer den med denne kommandoen:

sudo yum install openssl

Sjansen er at du allerede har den tilgjengelig på systemet ditt – det skal nå installeres uansett. Når pakken er bekreftet å være installert på systemet ditt, genererer du tastaturet ved hjelp av følgende kommando:

openssl genrsa -des3 -passout pass:x -out keypair.key 2048

Denne kommandoen bruker 2048 bit kryptering og sender ut en fil som heter keypair.key, som vist her:

Som du kan se, er nøkkelen generert og plassert i gjeldende katalog.

Trinn 2: Pakk ut den private nøkkelen i «httpd» -mappe

/etc/httpd -mappen er der operativsystemet beholder alle viktige SSL-relaterte elementer. La oss først lage en ny mappe som inneholder alle filene våre relatert til vår private nøkkel:

sudo mkdir /etc/httpd/httpscertificate

Vi kalte mappen httpscertificate og vil henvise til den med det navnet i alle de andre eksemplene på kommandolinjen. Du kan gi mappen navnet hva du vil.

For å trekke ut den private nøkkelen fra tastaturfilen vi nettopp opprettet, skriv inn fo llowing:

openssl rsa -passin pass:x -in keypair.key -out /etc/httpd/httpscertificate/012.345.678.90.key

Erstatt seksjonen med fet skrift med IP-adressen til din egen server. Eller hvis du har tilgang til nettstedet ditt med et domenenavn, kan du også bruke det.

Dette vil opprette en .key -fil i mappen som vi nettopp skapte. Når denne prosessen er fullført, kan vi slette den opprinnelige tastaturfilen:

rm keypair.key

Trinn 3: Opprette en «Certificate Signing Request» (CSR) -fil

Med nøkkelen kan vi opprette en spesiell .csr -fil som vi enten kan signere selv eller sende til en «Certificate Authority». Den er i standardisert format, og kan enkelt genereres med nøkkelen vår fra forrige trinn. For å opprette den, skriv inn følgende kommando:

openssl req -new -key /etc/httpd/httpscertificate/012.345.678.90.key -out /etc/httpd/httpscertificate/012.345.678.90.csr

Erstatt elementene med fet skrift med IP-adressen eller domenenavnet du bestemte deg for i trinn 2. Når du kjører denne kommandoen, vil verktøyet be deg om noe av din personlige informasjon, for eksempel posisjon og organisasjonsnavn:

En CA (forkortelse for Certificate Authority) kan bruke disse detaljene for å bekrefte at du virkelig er den du sier du er. Prøv å fylle ut feltene med så mye informasjon du kan.

Når du er ferdig med å legge inn disse detaljene, avslutter verktøyet sitt arbeid og plasserer en .csr -fil i katalogen som vi opprettet for akkurat dette formålet.

Trinn 4: Opprette sertifikatet «.crt» -fil

Med CSR kan vi opprette den endelige sertifikatfilen som følger. Vi bruker nå .csr og .key -filene til å lage .crt -filen:

Dette oppretter en .crt -fil på stedet med alle våre andre filer. Vi vet nå hvordan vi kan generere vårt selvsignerte SSL-sertifikat. Her er et skjermbilde av de endelige filene i sikkerhetsmappen vår:

Nå må vi fortelle Apache hvor disse filene er.

Trinn 5: Konfigurere Apache til å bruke filene

Alt vi trenger å gjøre nå er å vise Apache hvor de genererte selvsignerte sertifikatene er. Først må vi installere mod_ssl -pakken med kommandoen:

sudo yum install mod_ssl

Når dette er gjort, vil dette plassere en ssl.conf -fil i /etc/httpd/conf.d/ -mappen. Vi må endre denne standardfilen. Bruk din foretrukne tekstredigerer:

sudo vi /etc/httpd/conf.d/ssl.conf

Rull nå ned til du finner linjene som begynner med:

SSLCertificateFileSSL CertificateKeyFile

Endre standardbanene med stiene til henholdsvis sertifikatfilen og nøkkelfilen, som vist her:

Lagre endringene. Nå er det bare å starte Apache på nytt med:

sudo apachectl restart

Og du er ferdig! Når Apache starter på nytt, blir den konfigurert til å tillate SSL-tilkoblinger ved å bruke de genererte selvsignerte SSL-sertifikatene.

Når du kobler til IP-adressen din via HTTPS neste gang, blir du advart om at den ikke er et klarert sertifikat:

Det er ok. Vi vet dette siden vi signerte det selv! Bare fortsett, så tar du deg til nettstedet:

Her kan du se at den bruker sertifikatet vi opprettet. Det er ikke mye bruk for noen andre som besøker nettstedet ditt, siden de ikke kan bekrefte identiteten din. Men du vet at det er trygt, og dessuten at det er kryptert. Ingen mann i midten angriper!

Du vet nå hvordan du kan generere dine egne selvsignerte SSL-sertifikater og implementere dem på Apache-webserveren.

Hvis du er en av våre administrerte VPS hosting klienter, vi kan gjøre alt dette for deg uten ekstra kostnad. Bare kontakt systemadministratorene våre, så vil de svare på forespørselen din så snart som mulig.

Leave a Reply

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *