Generovanie vlastného certifikátu SSL (s vlastným podpisom)
Generovanie certifikátu s vlastným podpisom pomocou Windows PowerShell
Vygenerujte vlastný certifikát SSL a importujte ho do základných úložísk (essential stores) na operačnom systéme Windows Server 2012 R2:
1.Otvorte Windows PowerShell.
2.Spustite nasledujúce príkazy:
a.$customcertificate = New-SelfSignedCertificate -DnsName "<FQDN>" -CertStoreLocation "cert:\localmachine\my"
V príkaze vyššie nahraďte <FQDN> príslušným názvom predmetu, ktorý vidíte v nástroji ESA Web Console v sekcii Components > Invitations > Server access.
Ak zadefinujete viacero DnsNames, napríklad:
-DnsName "my.esa.installation.com", "my.authentication.server", "twofactor.auth"
Prvá položka (ďalej len „my.esa.installation.com“) bude použitá v poli Subject, pričom nasledujúce položky budú použité v poli Subject Alternative Name daného certifikátu.
b.$exportpassword = ConvertTo-SecureString -String '<password>' -Force -AsPlainText
V príkaze vyššie nahraďte <password> heslom podľa svojho výberu.
c.$certPath = 'cert:\localMachine\my\' + $customcertificate.thumbprint
d.Export-PfxCertificate -cert $certPath -FilePath $env:USERPROFILE\Desktop\ESAcustomCertificate.pfx -Password $exportpassword
Posledný príkaz umiestni certifikát ESAcustomCertificate.pfx na pracovnú plochu.
3. Stlačením kombinácie klávesov Windows + R otvorte dialógové okno Run.
4.Pridajte modul snap-in pre certifikát:
a.Napíšte mmc a stlačte Enter.
b.Kliknite na File -> Add/Remove Snap-in.
c.Vyberte Certificates > Add.
d.Vyberte Computer Account, kliknite na Next a potom na Finish. Kliknite na OK a zatvorte okno Add or Remove Snap-ins.
5.Importujte príslušný certifikát:
a.V ľavom paneli konzoly MMC rozbaľte Certificates (Local Computer) > Personal a pravým tlačidlom myši kliknite na Certificates.
b.Vyberte All Tasks > Import.
c.V sprievodcovi importom kliknite na Next a potom na Browse. Zo zoznamu prípon súborov vyberte Personal Information Exchange (*.pfx, *.p12) a vyhľadajte exportovaný súbor s certifikátom. Kliknite na Open a potom na Next.
d.Zadajte heslo použité v druhom príkaze uvedenom vyššie a kliknite na Next.
e.Vyberte možnosť Place all certificates in the following store a ako názov úložiska zadajte Personal. Kliknite na Next a potom na Finish.
6.V ľavom paneli konzoly MMC rozbaľte Certificates (Local Computer) > Trusted Root Certification Authorities a pravým tlačidlom myši kliknite na Certificates.
7.Vyberte All Tasks > Import a zopakujte kroky 6a až 6c.
8.V priečinku Certificates (Local Computer) > Personal > Certificates dvakrát kliknite na certifikát a uistite sa, že sa zobrazí text You have a private key that corresponds to this certificate.
V prípade, že potrebujete súbor .crt a .key namiesto súboru .pfx, skonvertujte .pfx na .crt a .key pomocou OpenSSL alebo inej metódy.
Konverzia .pfx na .crt a .key pomocou OpenSSL
Skontrolujte, či je nainštalované OpenSSL pre Windows, a spustite nasledujúce príkazy.
openssl pkcs12 -in D:\ESAcustomCertificate.pfx -clcerts -nokeys -out D:\ESAcustomCertificate.crt |
Keď sa zobrazí okno Enter Import Password, zadajte heslo definované v príkaze Export-PfxCertificate počas generovania certifikátu pomocou Windows PowerShell.
openssl pkcs12 -in D:\ESAcustomCertificate.pfx -nocerts -out D:\ESAcustomCertificate_encrypted.key |
Pre Enter PEM pass phrase zadajte nové heslo, ktoré má minimálne štyri znaky.
openssl rsa -in D:\ESAcustomCertificate_encrypted.key -out D:\ESAcustomCertificate.key |
Po vyzvaní zadajte heslo, ktoré ste definovali pre Enter PEM pass phrase.
Generovanie certifikátu s vlastným podpisom pomocou OpenSSL
Skontrolujte, či je nainštalované OpenSSL pre Windows.
Vytvorenie konfiguračného súboru
Aby ste zabránili zobrazeniu upozornenia na neplatný certifikát, súbor ESAcustomCertificate.conf musí obsahovať zoznam alternatívnych názvov DNS, pod ktorými bude autentifikačný server k dispozícii. Príkaz vyššie vygeneruje súbory newKey.rsa a newCertificate.crt.
Vzorka obsahu súboru ESAcustomCertificate.conf:
[ req ] default_bits = 4096 distinguished_name = req_distinguished_name req_extensions = req_ext x509_extensions = x509_ext
[ req_distinguished_name ] countryName = Country Name (2 letter code) countryName_default = SK stateOrProvinceName = State or Province Name (full name) stateOrProvinceName_default = Slovakia localityName = Locality Name (eg, city) localityName_default = Bratislava organizationName = Organization Name (eg, company) organizationName_default = My company running ESA commonName = Common Name (e.g. server FQDN) commonName_default = my.esa.installation.com
[ req_ext ] subjectAltName = @alternative_names
[ x509_ext ] subjectAltName = @alternative_names
[alternative_names] DNS.1 = my.esa.installation.com DNS.2 = my.authentication.server DNS.3 = twofactor.auth DNS.4 = 192.168.0.1 IP.1 = 192.168.0.1 |
Generovanie certifikátu a kľúča OpenSSL pomocou príkazového riadka systému Windows
openssl req -config D:\ESAcustomCertificate.conf -new -x509 -sha256 -newkey rsa:2048 -nodes -keyout D:\ESAcustomCertificate.key -days 365 -out D:\ESAcustomCertificate.crt |
Ak bolo commonName v konfiguračnom súbore prednastavené správne, po zobrazení okna CommonName stlačte Enter.