Problemas ao trocar o Apache para usar um novo certificado SSL

2

Atualmente, tenho um site que executa o Ubuntu Linux e o Apache 2.0 que usa um certificado SSL emitido pela GoDaddy. Desde que eu tenho sido geralmente pouco impressionado com GoDaddy, eu decidi obter um certificado SSL de outro fornecedor, mas eu tive problemas tentando mudar minha configuração do Apache para usar o novo certificado.

As configurações de SSL para minha configuração original do Apache são assim:

SSLEngine on
SSLProtocol all
SSLCertificateFile /etc/apache2/ssl/store.fatcatsoftware.com.crt
SSLCertificateKeyFile /etc/apache2/ssl/fatcatstore.key
SSLCertificateChainFile /etc/apache2/ssl/gd_intermediate_bundle.crt
SSLProxyEngine on

Eu instalei o novo certificado SSL e alterei o Apache para o seguinte:

SSLEngine on
SSLProtocol all
SSLCertificateFile /etc/apache2/ssl_geotrust/store.fatcatsoftware.com.crt
SSLCertificateKeyFile /etc/apache2/ssl_geotrust/store.fatcatsoftware.com.key
SSLProxyEngine on

Eu verifiquei o dobro e o triplo de todos os caminhos e eles estão corretos. No entanto, quando eu reinicio o Apache e tento carregar o site, recebo um erro do navegador da Web dizendo que o certificado foi assinado por uma autoridade desconhecida. A parte realmente estranha é que também diz que o certificado foi emitido pelo GoDaddy, então é como se o Apache não estivesse usando o novo certificado de alguma forma, mesmo que o arquivo de configuração esteja apontando para ele. Eu chequei duas vezes o arquivo cert usando openssl x509 -noout -text -in server.crt e ele verifica se o certificado nesse caminho é de fato o recém-instalado.

Como teste adicional, tentei obter os mesmos arquivos de certificados / chaves e instalá-los em minha própria máquina executando o OS X. Configurei o arquivo de configuração do Apache como fiz no servidor real e editei / etc / hosts para que digitar o nome do meu domínio seja redirecionado para localhost, para evitar uma incompatibilidade de nome de domínio ao carregar o site. Quando eu tento essa configuração, tudo funciona perfeitamente! Então, certamente não parece que o certificado em si é o culpado.

As únicas grandes diferenças entre as duas configurações são a) a caixa do OS X tem Apache 2.2 em vez de 2.0 eb) no site, o Apache atua como um proxy para um cluster mestiço executando uma aplicação Rails nos bastidores, enquanto Eu não tenho nada disso configurado na minha máquina OS X. Eu já passei por todas as configurações de mongrel / Rails que posso encontrar, mas não encontrei nada que pareça estar relacionado ao SSL. Tanto quanto eu posso dizer, apenas o Apache é responsável por lidar com a parte SSL das coisas.

Neste ponto, estou totalmente perplexo. A única coisa em que consigo pensar é que há algo sendo armazenado em algum lugar em algum lugar, mas não sei se consigo encontrá-lo. Eu até tentei desligar o SSLSessionCache no Apache, mas isso não fez nenhuma diferença. Alguém tem sugestões de coisas novas para tentar?

    
por Brian Webster 07.01.2010 / 20:37

2 respostas

6

Verifique se você não tem outro host virtual em algum lugar nos arquivos de configuração que ainda esteja usando o certificado antigo. Especialmente verifique vários diretórios include (/etc/apache.d) onde você pode ter configurado o host virtual e esquecido.

    
por 07.01.2010 / 20:54
1

Além disso, verifique se você não tem outro arquivo httpd.conf em algum lugar que seja o que o apache esteja realmente observando, especialmente se você não for o único a configurar o sistema.

    
por 07.01.2010 / 21:21