Geralmente sou muito bom com o Apache e o OpenSSL, mas este me deixa completamente perplexo. Estou executando o Apache 2.2.22 e o OpenSSL 1.0.1 em um servidor LTS do Ubuntu 12.04. Eu tenho um host virtual baseado em IP configurado, que redireciona todas as solicitações HTTP para HTTPS e usa segurança de transporte rígida para ajudar a mantê-lo assim.
Estou migrando o site de um certificado emitido por uma CA interna para um certificado assinado pelo StartSSL. O certificado atual tem uma chave RSA de 1024 bits, a nova possui uma chave RSA de 2048 bits. O servidor possui um ou dois outros vhosts SSL, todos usando chaves de 1024 bits. O certificado atual funciona perfeitamente.
As chaves para os dois certificados estão no mesmo diretório, de propriedade da raiz, e com 600
permissions (o diretório é 710
). Os certificados estão em um diretório diferente, de propriedade da raiz e com 644
de permissões (o diretório possui 755
). (Por exemplo, ambas as chaves estão em /var/ssl/keys
e ambas as certs estão em /var/ssl/certs
.)
No entanto, quando eu altero a configuração para usar o novo certificado (esta é a alteração somente , eu não atualizo o hostname ou qualquer outra coisa) O Apache se recusa a iniciar, dando um "incapaz de escreva 'estado aleatório' "erro. Eu verifiquei e não tenho nenhum arquivo (% de propriedade ou de outra forma) .rnd
por aí. Se eu mudar de volta para o certificado de 1024 bits, o Apache começa perfeitamente e tudo está normal.
Me deparei com esta entrada de FAQ , informando que o Apache não é compatível com 2048 -bit chaves, mas eu também deparei com esta postagem no blog , declarando que a entrada do FAQ deve ser antiga (muitas das entradas parecem bastante antigas), pois funciona perfeitamente no Apache 2.2.11.
Alguém pode sugerir por que o Apache pode estar falhando com o novo certificado?