Estou trabalhando com Apache2 e Passenger para um projeto Rails. Gostaria de criar um certificado SSL autoassinado para fins de teste.
sudo openssl rsa -des3 -in server.key -out server.key.new
Quando insiro o comando acima, ele diz
writing RSA key
Enter PEM pass phrase:
Se eu não inserir o phrse pass, estou recebendo o erro abaixo
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
É possível gerar uma chave RSA sem fornecer pass phrase
, pois não tenho certeza de como o /etc/init.d/httpd
script iniciará o servidor HTTP sem intervenção humana (por exemplo, se eu fornecer uma frase secreta de 4 caracteres, ele deverá fornecer isso ao iniciar o servidor HTTP Apache )
openssl
para criptografar uma chave existente. Isso soa como algo diferente do que você deseja.Respostas:
Se você estiver gerando um certificado autoassinado, poderá executar a chave e o certificado em um comando da seguinte maneira:
Ah, e o que @MadHatter disse em sua resposta sobre a omissão da
-des3
bandeira.fonte
Deixe de fora o
-des3
sinalizador, que é uma instrução para openssl para criptografar server.key.new (que, aliás, não é uma nova chave - é exatamente o mesmo que server.key, apenas com a senha alterada / removida) .fonte
O
openssl req
comando da resposta de @Tom H está correto para criar um certificado autoassinado emserver.cert
incl. uma chave privada RSA sem senha emserver.key
:Aqui está como isso funciona. Omitir
-des3
como na resposta de @MadHatter não é suficiente neste caso para criar uma chave privada sem senha. Ele é suficiente para este fim noopenssl rsa
comando ( "converter uma chave privada") referido por @MadHatter eoopenssl genrsa
comando ( "criar uma chave privada"). Apenas não para oopenssl req
comando aqui. Além disso, precisamos-nodes
("Sem criptografia DES, porserver.key
favor!").fonte
Use o
-nodes
parâmetro, se esta opção for especificada, a chave privada não será criptografada, por exemplo:fonte
Basta executá-lo novamente através do openssl
primeiro gere a chave com a senha
então
openssl rsa -in server.key -out server.key
fonte
openssl
do objetivo de alcançar o objetivo do que foi solicitado: gerar uma chave sem uma frase secreta.openssl
no Windows 10 do GitBash. Obrigado pela informação.Use o próximo comando para gerar um arquivo de chave privada sem senha e sem criptografia . O último parâmetro é o tamanho da chave privada.
fonte
4096 -des3
por4096 -sillywombat
e ele ainda funciona e produz o mesmo formato, ainda não criptografado (mas com um valor-chave diferente, é claro). Não há como ter um arquivo de chave privada criptografada sem senha e as soluções corretas para um arquivo não criptografado sem senha foram fornecidas seis anos atrás.