Como desativar o SSLv2 para o Apache httpd


8

Acabei de testar meu site em https://www.ssllabs.com/ e dizia que o SSLv2 é inseguro e devo desativá-lo junto com os fracos Cipher Suites.

Como posso desativar isso? Eu tentei o seguinte, mas não está funcionando.

  1. Fui /etc/httpd/conf.d/ssl.confpor ftp. Adicionado

    SSLProtocol -ALL +SSLv3 +TLSv1
    SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:!LOW:!SSLv2:!EXPORT
    
  2. Conectado ao servidor por massa e deu o service httpd restartcomando.

Mas ainda está mostrando inseguro no site. Como posso corrigir isso? Meu servidor é o Plesk 10.3.1 CentOS. Existem 3-4 sites no mesmo servidor.


Alguns anos atrás, tive um problema ao renovar um certificado SSL. A nova configuração foi ignorada, mesmo após a reinicialização do apache. Parar o apache e iniciar o apache resolveu o problema.

@EricDANNIELOU - Reiniciei o servidor inteiro, mas ainda não tive sorte
Yahoo

Respostas:


10

Altere as linhas SSLProtocol e SSLCipherSuite para,

SSLProtocol -ALL +SSLv3 +TLSv1 -SSLv2
SSLHonorCipherOrder On
SSLCipherSuite ECDHE-RSA-AES128-SHA256:AES128-GCM-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH

Recarregue seu apache para que a configuração entre em vigor.

O SSLHonorCipherOrder On tentará as cifras na ordem especificada.

A configuração acima passa na verificação ssllabs.com, exceto na versão TLS. Meu CentOS 6 suporta apenas TLS 1.0 por causa do OpenSSL 1.0.0. O OpenSSL 1.0.1 suporta TLS 1.1 e 1.2.

Você tem algum balanceador de carga ou proxy na frente do seu apache?


Eu adicionei as linhas que você mencionou acima, mas ainda não funciona. Quando eu verifico, www.ssllabs.com ele ainda mostra que está ativado. Não tenho conhecimento sobre o `balanceador de carga ou proxy na frente do apache`, como posso verificar isso? Vou informar os detalhes do que você precisa saber.
Yahoo

No entanto, quando executo isso, recebo um erro. Parece que está desativado, mas o site não está mostrando. openssl s_client -ssl2 -connect localhost:443 CONNECTED(00000003) 21731:error:1407F0E5:SSL routines:SSL2_WRITE:ssl handshake failure:s2_pkt.c:428: ]0;root@u15341216:~[root@u15341216 ~]#
Yahoo

Pode ser proveniente do seu loadbalancer ou proxy de algum outro aplicativo de back-end. Sem muitos detalhes sobre sua configuração / arquitetura, é difícil depurar. A configuração que eu mencionei, trabalha para o meu apache que serve SSL direta e ssllabs.com me dá uma classificação de 88.
Chida

Então, eu deveria desativar o balanceador de carga, se está lá no sistema? Como posso descobrir se não está instalado?
Yahoo

Se o apache ouvir na porta *: 80 e o servidor tiver o ip público correspondente ao seu site, não haverá balanceador de carga. Verifique também os registros DNS para round robin.

3

Você pode ter certeza de que não há outro SSLProtocolou SSLCiperSuitedireto em sua configuração do Apache que esteja substituindo o que você acabou de adicionar.

Se você não conseguir encontrá-lo, tente adicionar esses dois ao seu vhost SSL em vez de ssl.conf. Isso ajudará a garantir que os corretos sejam os últimos aplicados.


Não há nenhuma entrada duplicada no arquivo. Como posso verificar o SSL Vhost? Onde esse arquivo é colocado? (Sou novo aqui)
Yahoo

1
Usando o PuTTY, grep -r SSLProtocol /etc/httpddeve encontrar duplicatas. Quanto ao vhost SSL, não sei onde o Plesk os coloca, mas provavelmente estará com todos os outros vhosts. A grep recursivo para VirtualHost, SSLCertificateFileou o DocumentRoot provavelmente irá fazer o truque.
Ladadadada

/var/www/vhosts/mydomain/conf/vhost_ssl.conf & /var/www/vhosts/mydomain/conf/vhost.conf Nos dois arquivos que eu SSLProtocol -ALL +SSLv3 +TLSv1 SSLHonorCipherOrder On SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUMadicionei, ainda não está funcionando: /
Yahoo

0

O que funcionou para mim

SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !EDH"

Tente este.


Você está usando o Plesk? Por favor, elabore como sua situação corresponde à descrita na pergunta original.
Deer Hunter

-2

Para desativar o SSL no Centos6.x, execute o seguinte comando:

yum remove mod_ssl

Então

serviço httpd recarregar

Para ativar o SSL novamente, instale o pacote "mod_ssl" como:

yum install mod_ssl

Então

serviço httpd recarregar


Eu acho que o usuário só queria remover o SSL v2.
Paul Paul
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.