Mainos / Advertisement:

Openssl

Kohteesta Taisto
Versio hetkellä 9. kesäkuuta 2014 kello 09.18 – tehnyt Minh (keskustelu | muokkaukset) (→‎Esimerkkejä SubjectAltName)
Siirry navigaatioon Siirry hakuun

Asennus

1. Asennetaan Openssl

 aptitude install openssl

2. Luodaan kansio locacerts

mkdir /etc/ssl/localcerts

3. Siirry hakemistoon /etc/openssl/localcerts

 cd /etc/ssl/localcerts

openssl.cnf

Laitetaan openssl.conf tiedostoon oletuskonffit helpottamaan myöhempää käyttöä.

 [ req_distinguished_name ]
 countryName                     = Country Name (2 letter code)
 countryName_default             = FI

Oletus maa-asetus (maakoodi), esim. FI

 countryName_min                 = 2
 countryName_max                 = 2
 
 stateOrProvinceName             = State or Province Name (full name)
 stateOrProvinceName_default     = Lääni/Provinssi

Määritä lääni/provinssi, esim. Uusimaa

 localityName                    = Locality Name (eg, city)
 localityName_default            = Kaupunki

Kaupungin nimi, esim. Helsinki

 0.organizationName              = Organization Name (eg, company)
 0.organizationName_default      = Organisaation nimi

Organisaation nimi, esimerkiksi yritys

 # we can do this but it is not needed normally :-)
 #1.organizationName             = Second Organization Name (eg, company)
 #1.organizationName_default     = World Wide Web Pty Ltd
 organizationalUnitName          = Organizational Unit Name (eg, section)
 #organizationalUnitName_default =
 commonName                      = Common Name (e.g. server FQDN or YOUR name)
 commonName_max                  = 64
 
 emailAddress                    = Email Address
 emailAddress_max                = 64


 [ v3_req ]
 #Extensions to add to a certificate request
 basicConstraints = CA:FALSE
 keyUsage = nonRepudiation, digitalSignature, keyEncipherment
 subjectAltName = @alt_names

Lisätään subjectAltName = @alt_names konffi tiedostoon

 [alt_names]
 DNS.1 = helenius.dy.fi
 DNS.2 = datatekniikka.fi

Verkko-osoitteet, jossa sertifikaatti on voimassa.

 IP.1 = 0.0.0.0
 IP.2 = 1.1.1.1

IP-osoiteet jossa sertifikaatti voimassa.

Esimerkkejä SubjectAltName

 DNS.1 = *.domain.com = Wildcard (* = mitä tahansa pisteen ennen.. HUOM! ei toimi domain.com)
 DNS.2 = domain.com
 DNS.3 = www.domain.com(kaikki alidomainit, ellei ole wildcard)
 DNS.4 = www.domain2.com (voidaan osoittaa eri domaineille)
 IP.1 -> Laitetaan IP-osoiteet, missä sertifikaatti on voimassa.

RootCA - Root sertifikaatti

1. Luodaan RSA avain

 openssl genrsa -des3 -out rootCA.key 4096
  • des3 = salasana suojattu
  • rootCA.key = tiedoston nimi
  • 4096 = RSA avaimen pituus

2. Luodaan ROOT sertifikaatti

openssl req -x509 -new -nodes -key rootCA.key -days 3650 -out rootCA.crt
  • -days = sertifikaatin voimassaoloaika, esimerkissä 10 vuotta
  • -key = tiedosto jossa RSA avain sijaitsee
  • -key rootCA.key RSA avain tiedosto, jonka loit aikaisemmin
  • -out rootCA.crt = sertifikaatti tiedosto

Luodaan alisertifikaatti

1. Luodaan RSA avain

 openssl genrsa -des3 -out ssl.key 2048
  • des3 = salasana suojattu
  • ssl.key = tiedoston nimi
  • 2048 = RSA avaimen pituus

2. Luodaan sertifikaatin allekirjoituspyyntö

 openssl req -new -out ssl.csr -key ssl.key -config /etc/ssl/openssl.cnf

3. Luodaan sertifikaatti ROOT sertifikaatin alle

 openssl x509 -req -in ssl.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial  -out ssl.crt -days 365 -extensions v3_req -extfile /etc/ssl/openssl.cnf
  • -days 365 = sertifikaatin voimassaoloaika
  • -extensions v3_req -extfile /etc/ssl/openssl.cnf = Openssl konffi tiedosto, josta haetaan subjectAltName tiedot

Sertifikaattien siirto pfx-tiedoston avulla

Openssl sertifikaattia voidaan käyttää myös muillakin webbiservereillä. Voit siirtää mm. IIS:ään pfx tiedoston avulla.

 openssl pkcs12 -export -out ssl.pfx -inkey ssl.key -in ssl.crt -certfile rootCA.crt

Sinun tulee määrittää tiedostoon salasana.

Katso lisää

Apache2#HTTPS_.2F_SSL HTTPS salliminen apacheen

Mainos / Advertisement: