Generera SSL certifikat i Debian Jessie: Difference between revisions
mNo edit summary |
mNo edit summary |
||
(8 intermediate revisions by the same user not shown) | |||
Line 7: | Line 7: | ||
Välj en plats där inställningar och certifikaten ska genereras. | Välj en plats där inställningar och certifikaten ska genereras. | ||
{{Warning|Det är viktigt att de privata nycklarna inte faller i orätta händer. Välj därför en plats där vanliga användare inte har access.}} | {{Warning|Det är viktigt att de privata nycklarna inte faller i orätta händer. Välj därför en plats där vanliga användare inte har access. Det är också viktigt att du gör säkerhetskopior på certifikaten. Annars riskerar du behöva skapa nya ifall du tappar bort ditt CA certifikat.}} | ||
Vi väljer att lägga dessa under /root: | Vi väljer att lägga dessa under /root: | ||
{{RootCmd|cp -r /usr/share/easy-rsa /root}} | {{RootCmd|cp -r /usr/share/easy-rsa /root}} | ||
Line 30: | Line 30: | ||
}} | }} | ||
{{Warning|Följande | {{Warning|Följande kommandon raderar alla nycklar under keys mappen. Se till att inga nycklar du vill spara ligger där.}} | ||
Läs in dina inställningar, radera alla tidigare genererade certifikat och skapa ditt CA certifikat: | Läs in dina inställningar, radera alla tidigare genererade certifikat och skapa ditt CA certifikat: | ||
{{RootCmd|. ./vars-example.com | {{RootCmd|. ./vars-example.com | ||
Line 44: | Line 44: | ||
Förutsätter att vi har skapat vårt CA certifikat. För att skapa ett server certifikat för www.example.com kör kommandot i easy-rsa katalogen: | Förutsätter att vi har skapat vårt CA certifikat. För att skapa ett server certifikat för www.example.com kör kommandot i easy-rsa katalogen: | ||
{{RootCmd|./build-key-server www.example.com}} | {{RootCmd|./build-key-server www.example.com}} | ||
Följande filer har nu skapats i keys mappen: | |||
* www.example.com.crt | |||
* www.example.com.csr (Certificate Signing Request) | |||
* www.example.com.key (privat nyckel) | |||
== Installera CA certifikatet == | |||
Kopiera CA certifikatet till mappen /usr/local/share/ca-certificates samt ge den ett lite tydligare namn: | |||
{{RootCmd|cp keys/ca.crt /usr/local/share/ca-certificates/example.com-ca.crt}} | |||
Kör sedan kommandot: | |||
{{RootCmd|update-ca-certificates}} | |||
{{Note|Certifikatet som installeras under /etc/ssl/certs kommer döpas till example.com-ca.pem}} | |||
Du behöver installera detta certifikat på alla maskiner som ska kunna kontrollera att alla övriga certifikat kommer från dig. | |||
== Installera webserver certifikatet == | |||
Detta behöver bara göras på den maskin som kör webservern. Kopiera den privata nyckeln till mappen /etc/ssl/private och .crt filen till /etc/ssl/certs: | |||
{{RootCmd|cp keys/www.example.com.key /etc/ssl/private | |||
|cp keys/www.example.com.crt /etc/ssl/certs}} | |||
Fixa sedan till ägare och rättigheter på filerna: | |||
{{RootCmd|chown root:ssl-cert /etc/ssl/private/www.example.com.key | |||
|chmod 640 /etc/ssl/private/www.example.com.key | |||
|chown root:root /etc/ssl/certs/www.example.com.crt | |||
|chmod 644 /etc/ssl/certs/www.example.com.crt}} | |||
[[Category:GammalGuide]] |
Latest revision as of 14:01, 12 August 2023
Denna guide beskriver hur man genererar sitt egna CA (Certificate Authority) certifikat och ett certifikat för en webserver i Debian Jessie. Vår domän i exemplen är example.com och vår webserver har hostname www.example.com.
Installera easy-rsa
Man kan generera alla certifikat direkt med openssl kommandon om man vill, men för att göra livet lite enklare kommer vi använda oss av lite skript från OpenVPN som heter easy-rsa:
Välj en plats där inställningar och certifikaten ska genereras.
Vi väljer att lägga dessa under /root:
Gå till easy-rsa mappen:
Generera CA certifikat
Kopiera filen vars och anpassa den för våra behov:
De variabler vi ändrar på är (anpassa enligt dina uppgifter):
export KEY_COUNTRY="SE" export KEY_PROVINCE="<Landskap/Kommun>" export KEY_CITY="<Stad>" export KEY_ORG="example.com" export KEY_EMAIL="root@example.com" #export KEY_OU="MyOrganizationalUnit" export KEY_NAME="root"
Läs in dina inställningar, radera alla tidigare genererade certifikat och skapa ditt CA certifikat:
Bygg nödvändiga Diffie-Hellman parametrar:
Generera server certifikat
Förutsätter att vi har skapat vårt CA certifikat. För att skapa ett server certifikat för www.example.com kör kommandot i easy-rsa katalogen:
Följande filer har nu skapats i keys mappen:
- www.example.com.crt
- www.example.com.csr (Certificate Signing Request)
- www.example.com.key (privat nyckel)
Installera CA certifikatet
Kopiera CA certifikatet till mappen /usr/local/share/ca-certificates samt ge den ett lite tydligare namn:
Kör sedan kommandot:
Du behöver installera detta certifikat på alla maskiner som ska kunna kontrollera att alla övriga certifikat kommer från dig.
Installera webserver certifikatet
Detta behöver bara göras på den maskin som kör webservern. Kopiera den privata nyckeln till mappen /etc/ssl/private och .crt filen till /etc/ssl/certs:
Fixa sedan till ägare och rättigheter på filerna: