hur man får ett självsignerat certifikat

SSL använder sig av så kallad asymmetrisk kryptering, som vanligtvis kallas kryptering med öppen nyckel (PKI). Med kryptering med öppen nyckel, två nycklar skapas, en offentlig, en privat. Allt krypteras med antingen nyckeln kan endast dekrypteras med motsvarande knapp. Alltså, om ett meddelande eller dataström har krypterats med serverns privata nyckel, kan den dekrypteras endast med dess motsvarande publika nyckel, se till att uppgifterna endast kunde ha kommit från servern.

Om SSL använder kryptering med öppen nyckel för att kryptera dataströmmen färdas över Internet, varför är ett intyg som krävs? Den tekniska svaret på den frågan är att ett certifikat är egentligen inte nödvändigt – att uppgifterna är säkra och inte lätt kan dekrypteras av tredje part. Dock tjänar certifikat en avgörande roll i kommunikationsprocessen. Intyget, undertecknat av en betrodd certifikatutfärdare (CA), ser till att certifikatinnehavaren är egentligen vem han påstår sig vara. Utan ett undertecknat betrott certifikat, kan dina data krypteras, men den person du kommunicerar med kan inte vara som du tror. Utan intyg, skulle personifiering attacker bli mycket vanligare.

steg 1: skapa en privat nyckel

OpenSSL Toolkit används för att generera en RSA privat nyckel och CSR (Certificate Signing Request). Det kan också användas för att generera ett självsignerat certifikat som kan användas för testning eller intern användning.

Det första steget är att skapa din RSA privat nyckel. Denna nyckel är ett 1024 bitars RSA-nyckel som krypteras med Triple DES och lagras i en PEM-format så att de kan läsas som ASCII-text.

steg 2: Skapa en CSR (Certificate Signing Request)

När den privata nyckeln genereras en Certificate Signing Request kan genereras. CSR används sedan i ett av två sätt. Helst ska CSR skickas till en certifikatutfärdare, t.ex. Thawte eller Verisign som ska kontrollera identiteten hos den sökande och utfärda ett signerat certifikat. Det andra alternativet är att själv underteckna CSR, vilket kommer att visas i nästa avsnitt.

Under generationen av CSR, kommer du bli tillfrågad om flera bitar av information. Dessa är de X.509 attribut intyget. En av uppmaningarna kommer att vara för “Common Name (t.ex. namn)”. Det är viktigt att detta fält fyllas i med det fullständigt kvalificerade domännamnet för servern som ska skyddas av SSL. Om webbplatsen skyddas blir https://public.akadia.com, ange sedan public.akadia.com vid denna prompt.

steg 3: ta bort lösenord från nyckeln

En olycklig bieffekt av passet formulerade-privata nyckeln är att Apache ska be om pass-fras varje gång webbservern startas. Uppenbarligen är detta inte nödvändigtvis praktiskt som någon inte alltid kommer att vara runt för att skriva in lösenorden, t.ex. efter en omstart eller krasch. mod_ssl inkluderar möjligheten att använda ett externt program i stället för den inbyggda pass-fras dialog, men detta är inte nödvändigtvis det säkraste alternativet heller. Det är möjligt att ta bort Triple-DES-kryptering från nyckeln, och därmed inte längre behöva skriva in en lösenordsfras. Om den privata nyckeln inte längre krypterad, är det viktigt att denna fil endast läsbara av root-användaren! Om ditt system är aldrig äventyras och en tredje part får din okrypterade privata nyckel, kommer motsvarande intyg måste återkallas.

steg 4: generera ett självsignerat certifikat

På denna punkt måste du generera ett självsignerat certifikat eftersom du antingen inte tänker på att ha ditt certifikat signerat av en CA, eller om du vill testa din nya SSL-implementering medan CA signerar ditt certifikat. Denna tillfälliga certifikat kommer att generera ett fel i klientens webbläsare om att signeringscertifikatet myndigheten är okänd och inte betrodd.

steg 5: installera den privata nyckeln och certifikatet

När Apache med mod_ssl är installerat, det skapar flera kataloger i Apache config katalogen. Platsen för denna katalog kommer att variera beroende på hur Apache sammanställdes.

steg 6: konfigurerar SSL aktiverade virtuella värdar

Steg 7: starta om Apache och testa