Pracuję z Apache2 i Passenger dla projektu Rails. Chciałbym utworzyć samopodpisany certyfikat SSL do celów testowych.
sudo openssl rsa -des3 -in server.key -out server.key.new
Kiedy wprowadzę powyższe polecenie, mówi
writing RSA key
Enter PEM pass phrase:
Jeśli nie podam hasła fraze, otrzymuję błąd poniżej
unable to write key
3079317228:error:28069065:lib(40):UI_set_result:result too small:ui_lib.c:869:Yo
u must type in 4 to 1024 characters
3079317228:error:0906406D:PEM routines:PEM_def_callback:problems getting passwor
d:pem_lib.c:111:
3079317228:error:0906906F:PEM routines:PEM_ASN1_write_bio:read key:pem_lib.c:382
Czy możliwe jest wygenerowanie klucza RSA bez podawania pass phrase
, ponieważ nie jestem pewien, jak /etc/init.d/httpd
skrypt uruchomi serwer HTTP bez interwencji człowieka (tzn. Jeśli podam hasło składające się z 4 znaków, oczekuje, że podam to podczas uruchamiania serwera HTTP Apache ).
openssl
o zaszyfrowaniu istniejącego klucza. To brzmi jak coś innego niż chcesz.Odpowiedzi:
Jeśli generujesz samopodpisany certyfikat, możesz wykonać zarówno klucz, jak i certyfikat w jednym poleceniu:
Aha, i co @MadHatter powiedział w swojej odpowiedzi na temat pominięcia
-des3
flagi.źródło
Pozostaw
-des3
flagę, która jest instrukcją openssl do szyfrowania server.key.new (która, nawiasem mówiąc, wcale nie jest nowym kluczem - jest dokładnie taka sama jak server.key, tylko ze zmienionym / usuniętym hasłem) .źródło
openssl req
Polecenie od Odpowiedź @Tom H jest poprawna, aby utworzyć certyfikat z podpisem własnym wserver.cert
zaw. klucz prywatny RSA bez hasła wserver.key
:Oto jak to działa. Pominięcie
-des3
jak w odpowiedzi @MadHatter nie wystarczy w tym przypadku, aby utworzyć klucz prywatny bez hasła. To jest wystarczające dla tego celu wopenssl rsa
( „Convert klucz prywatny”) określoną przez komendy @MadHatter iopenssl genrsa
polecenia ( „Utwórz klucz prywatny”). Tylko nie dlaopenssl req
polecenia tutaj. Potrzebujemy dodatkowo-nodes
(„Proszę nie szyfrować DESserver.key
!”).źródło
Użyj
-nodes
parametru, jeśli ta opcja jest określona, klucz prywatny nie będzie szyfrowany, np .:źródło
Po prostu uruchom go ponownie przez openssl
najpierw wygeneruj klucz za pomocą hasła
następnie
openssl rsa -in server.key -out server.key
źródło
openssl
W ten sposób osiągam cel, o który został poproszony: wygenerowanie klucza bez hasła.openssl
w systemie Windows 10 z GitBash. Dzięki za informacje.Użyj następnego polecenia, aby wygenerować plik klucza prywatnego bez hasła bez szyfrowania . Ostatni parametr to rozmiar klucza prywatnego.
źródło
4096 -des3
się4096 -sillywombat
i nadal działa i produkuje ten sam format, nadal Nieszyfrowane (ale inną wartość klucza oczywiście). Nie ma sposobu, aby mieć zaszyfrowany plik prywatny bez hasła, a prawidłowe rozwiązania dla niezaszyfrowanego pliku bez hasła podano sześć lat temu.