Generowanie CSR-a i klucza prywatnego dla certyfikatów S/MIME
14.08.2022
Przed wystawieniem certyfikatu S/MIME
W celu wygenerowania CSR-a i klucza prywatnego będzie potrzebny OpenSSL, króry jest dostępny w każdym systemie Linux i macOS.
Utwórz katalog, w którym będzie znajdował się wygenerowany klucz prywatny oraz CSR, np:
mkdir certyfikat-smime
Przejdź do nowo utworzonego katalogu
cd certyfikat-smime
Na początek należy wygenerować nowy klucz prywatny
openssl genrsa -out smime.key 2048
Następnie na postawie wygenerowanego klucza prywatnego generujemy nowy CSR
openssl req -new -key smime.key -out smime.csr
Zawartość otrzymanego pliku CSR będzie należało wkleić do formularza zamówieniowego w celu zakupu certyfikatu S/MIME. Aby wyświetlić zawartość CSR-a, użyj polecenia cat
.
cat smime.csr
Przykład CSR-a (nie używaj go)
-----BEGIN CERTIFICATE REQUEST-----
MIICizCzAXMCAQAwRjEdmBsGCSqGSIb3DQEmARYOY5JjMUBnbWFpbC5jb20xGDAW
BgNVBA4xdfhdfml1c3og7HJvZ29zejELMAkGA554677CUEwwggEiMA0GCSqGSIb3
28MbWfCkh6QuldsfgOEzXc5zkKhjhkHVEM574fPokgy76w==
-----END CERTIFICATE REQUEST-----
Po wystawieniu certyfikatu S/MIME
Po otrzymaniu nowego certyfikatu S/MIME należy go przekonwertować do formatu, który będzie możliwy do zaimportowania w klientach poczty. W przesłanym od nas e-mailu otrzymasz plik w formacie P7B (#PKCS7). Nazwa pliku będzie zbliżona do certyfikat_smime_twoj-adres-email.p7b
i taką nazwą będziemy się posługiwać w poniższym przykładzie.
Konwersja składa się z dwóch kroków:
- W pierwszy kroku należy przekonwertować certyfikat z formatu P7B do formatu PEM. Po konwersji otrzymamy plik
smime.pem
.
openssl pkcs7 -print_certs -in certyfikat_smime_twoj-adres-email.p7b -out smime.pem
smime.key
. W wyniku otrzymasz plik o nazwie cert.pfx
, który będzie możliwy do zaimportowania do klienta poczty (np. Thunderbird). Format PFX (inaczej #PKCS12) jest kontenerem, który zawiera w jednym pliku klucz prywatny, właściwy certyfikat S/MIME oraz certyfikat pośredni wystawcy. Podczas konwersji zostanie wyświetlony monit o nadanie nowego hasła zabezpieczającego plik PFX. Gdy będziesz importował plik PFX do klienta poczowego będziesz musiał podać te hasło w celu odblokowania dostępu.openssl pkcs12 -export -in cert_smime.pem -inkey smime.key -out cert.pfx