Dwa potrzebne pliki to certyfikat SSL z kodowaniem PEM i klucz prywatny. Certyfikaty i klucze zakodowane w formacie PEM to tekst zakodowany w standardzie Base64 z ogranicznikami początku / końca, które wyglądają podobnie -----BEGIN RSA PRIVATE KEY-----
lub podobnie.
Aby utworzyć certyfikat SSL, musisz najpierw wygenerować klucz prywatny i żądanie podpisania certyfikatu lub CSR (który zawiera również Twój klucz publiczny). Możesz to zrobić na wiele sposobów, ale oto jak w OpenSSL.
openssl req -newkey rsa:2048 -new -nodes -keyout key.pem -out csr.pem
Spowoduje to wprowadzenie interaktywnego monitu w celu wygenerowania 2048-bitowego klucza prywatnego RSA i CSR zawierającego wszystkie informacje, które zdecydujesz się wprowadzić w monitach. ( Uwaga: nazwa zwykła to miejsce, w którym będziesz chciał umieścić nazwę domeny, której będziesz używać do uzyskiwania dostępu do swojej witryny ) . Gdy to zrobisz, zwykle prześlij ten CSR do zaufanego urzędu certyfikacji i po jego weryfikacji Twoja prośba otrzymałabyś certyfikat.
Jeśli nie zależy Ci na tym, aby Twój certyfikat był zaufany (zwykle ma to miejsce w celach programistycznych), możesz po prostu utworzyć certyfikat z podpisem własnym. Aby to zrobić, możemy użyć prawie tej samej linii, ale przekażemy dwa dodatkowe parametry.
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
W ten sposób otrzymasz certyfikat (ważny przez 10 lat) i parę kluczy, których możesz użyć w opublikowanym fragmencie kodu.
Po prostu wykonaj tę procedurę:
utwórz folder, w którym chcesz przechowywać swój klucz i certyfikat:
mkdir conf
przejdź do tego katalogu:
cd conf
pobierz ten
ca.cnf
plik, aby użyć go jako skrótu konfiguracyjnego:wget https://raw.githubusercontent.com/anders94/https-authorized-clients/master/keys/ca.cnf
utwórz nowy urząd certyfikacji przy użyciu tej konfiguracji:
openssl req -new -x509 -days 9999 -config ca.cnf -keyout ca-key.pem -out ca-cert.pem
teraz, gdy mamy nasz urząd certyfikacji
ca-key.pem
ica-cert.pem
, wygenerujmy klucz prywatny dla serwera:openssl genrsa -out key.pem 4096
pobierz ten
server.cnf
plik, aby użyć go jako skrótu konfiguracyjnego:wget https://raw.githubusercontent.com/anders94/https-authorized-clients/master/keys/server.cnf
wygeneruj żądanie podpisania certyfikatu przy użyciu tej konfiguracji:
openssl req -new -config server.cnf -key key.pem -out csr.pem
podpisz wniosek:
openssl x509 -req -extfile server.cnf -days 999 -passin "pass:password" -in csr.pem -CA ca-cert.pem -CAkey ca-key.pem -CAcreateserial -out cert.pem
Znalazłem tę procedurę tutaj , wraz z dodatkowymi informacjami na temat korzystania z tych certyfikatów.
źródło