Índice:

Fortalecendo os serviços SSL em seu servidor Web (Apache / Linux): 3 etapas
Fortalecendo os serviços SSL em seu servidor Web (Apache / Linux): 3 etapas

Vídeo: Fortalecendo os serviços SSL em seu servidor Web (Apache / Linux): 3 etapas

Vídeo: Fortalecendo os serviços SSL em seu servidor Web (Apache / Linux): 3 etapas
Vídeo: Servidor Web e SSH no Debian Linux [PASSO A PASSO] 2024, Novembro
Anonim
Fortalecendo os serviços SSL em seu servidor Web (Apache / Linux)
Fortalecendo os serviços SSL em seu servidor Web (Apache / Linux)

Este é um tutorial muito curto relacionado a um aspecto da segurança cibernética - a força do serviço SSL em seu servidor web. O pano de fundo é que os serviços SSL em seu site são usados para garantir que ninguém possa hackear dados que estão sendo transmitidos de e para seu site. Houve ataques bem divulgados a serviços SSL vulneráveis, como o bug Heartbleed no OpenSSL e o bug Poodle que explorava vulnerabilidades SSL 3.0. (Esta área é um alvo móvel, então você precisa construir o teste SSL em seu ciclo de plano-fazer-verificar-agir (PDCA) ISO 27001.)

Quando ssl for instalado em seu site usando um certificado de um provedor reconhecido, você verá que seu site pode ser acessado em https://seudominio.com. Isso significa que os dados são transmitidos para frente e para trás em formato criptografado. Em contraste, https://yourdomain.com ou criptografia fraca expõe os dados transmitidos em texto não criptografado, o que significa que até mesmo um hacker infantil pode acessar seus dados de senha, etc., usando ferramentas prontamente disponíveis, como o Wireshark.

Para o restante deste tutorial, presumo que você usará o Apache como seu servidor da web no Linux e que terá acesso ao seu servidor da web por meio de um emulador de terminal como o putty. Para simplificar, também presumirei que seu ISP forneceu seu certificado SSL e você tem a capacidade de reconfigurar alguns aspectos dele.

Etapa 1: Testar a força do seu serviço SSL

Testando a força do seu serviço SSL
Testando a força do seu serviço SSL

Basta ir a https://www.ssllabs.com/ssltest/ e inserir seu nome de domínio ao lado da caixa Nome do host e selecionar a caixa de seleção "Não mostrar os resultados nos fóruns" e clicar no botão enviar. (Observe que você não deve testar nenhum domínio sem permissão prévia e nunca deve mostrar resultados nos painéis.)

Após a execução dos testes, você receberá uma pontuação de F a A +. Você receberá resultados de teste detalhados que, com sorte, tornarão óbvio por que você recebeu a pontuação atribuída.

Os motivos usuais de falha são porque você está usando componentes desatualizados, como criptografias ou protocolos. Vou me concentrar em cifras em breve, mas primeiro uma palavra rápida sobre protocolos criptográficos.

Os protocolos criptográficos fornecem segurança nas comunicações em uma rede de computadores. … A conexão é privada (ou segura) porque a criptografia simétrica é usada para criptografar os dados transmitidos. Os dois protocolos principais são TLS e SSL. Este último está proibido de usar e, por sua vez, o TLS está evoluindo e, enquanto escrevo isso, a versão mais recente é 1.3, embora em formato de rascunho. Em termos práticos, em janeiro de 2018, você só deveria ter o TLS v 1.2. ativado. Provavelmente haverá uma mudança para o TLV v 1.3. durante 2018. O teste Qualys listará quais protocolos criptográficos você aplicou e, atualmente, se estiver usando o TLS v 1.2., você receberá uma pontuação baixa.

Uma última coisa a dizer sobre os protocolos criptográficos: quando você compra um pacote da web e um certificado SSL de um provedor de serviços de Internet convencional, como GoDaddy, ele será o TLS v 1.2. o que é bom, mas mais adiante, você pode achar difícil atualizar para dizer TLS v 1.3. Pessoalmente, eu instalo meus próprios certificados SSL e, portanto, estou no controle do meu próprio destino, por assim dizer.

Etapa 2: reconfigurando o Apache para fazer alterações de SSL

Reconfigurando o Apache para fazer alterações SSL
Reconfigurando o Apache para fazer alterações SSL

Uma das áreas importantes testadas no teste Qualys SSL e o foco desta seção são os conjuntos de criptografia, que determinam a força da criptografia dos dados transmitidos. Aqui está um exemplo de resultado de um teste SSL da Qualys em um dos meus domínios.

Cipher Suites # TLS 1.2 (suites, a fim de servidor preferencial) TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) ECDH secp256r1 (eq. 3072 pedaços RSA) FS256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f) ECDH secp256r1 (Eq. 3072 bits de RSA) FS128TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028) ECDH secp256r1 (Eq. 3072 Bits RSA) FS256TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027) ECDH secp256r1 (eq. 3072 bits RSA) FS128

Você pode gastar muito tempo reconfigurando a configuração do Apache para remover as linhas vermelhas (falhas) do seu relatório de teste Qualys, mas eu recomendo a abordagem a seguir para obter as melhores configurações do Cipher Suite.

1) Visite o site da Apache e obtenha suas recomendações para usar um Cipher Suite. No momento da escrita, eu seguia este link -

2) Adicione a configuração recomendada ao seu arquivo de configuração do Apache e reinicie o Apache. Esta foi a configuração recomendada que usei.

SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384: ECDHE-RSA-AES256-GCM-SHA384: ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACHA20-POLY1305: ECDHE-ECDSA-ECDSA-AES125 -AES128-GCM-SHA256: ECDHE-ECDSA-AES256-SHA384: ECDHE-RSA-AES256-SHA384: ECDHE-ECDSA-AES128-SHA256: ECDHE-RSA-AES128-SHA256

Notas - Um dos desafios é encontrar qual arquivo você precisa para alterar sua diretiva SSLCipherSuite. Para fazer isso, faça login no Putty e faça login no diretório etc (sudo cd / etc) Procure um diretório apache como apache2 ou http. Em seguida, faça uma pesquisa no diretório apache da seguinte maneira: grep -r "SSLCipherSuite" / etc / apache2 - Isso fornecerá uma saída semelhante a esta:

/etc/apache2/mods-available/ssl.conf:#SSLCipherSuite HIGH: MEDIUM:! aNULL:! MD5:! RC4:! DES / etc / apache2 / mods-available / ssl.conf: #SSLCipherSuite HIGH:! aNULL: ! MD5:! RC4:! DES /etc/apache2/mods-available/ssl.conf:#SSLCipherSuite ECDH + AESGCM: DH + AESGCM: ECDH + AES256: DH + AES256: ECDH + AES128: DH + AES: ECDH + 3DES: DH + 3DES: RSA + AESGCM: RSA + AES: RSA + 3DES:! ANULL:! MD5:! DSS

O importante a se notar é o arquivo /etc/apache2/mods-available/ssl.conf ou o que for seu. Abra o arquivo usando um editor como o nano e vá para a seção # SSL Cipher Suite:. Em seguida, substitua a entrada existente na diretiva SSLCipherSuite por uma acima do site da Apache. Lembre-se de comentar as diretivas SSLCipherSuite mais antigas e reiniciar o Apache - no meu caso, fiz isso digitando sudo /etc/init.d/apache2 restart

Observe que às vezes você pode precisar remover cifras específicas que estão dando a você uma pontuação baixa no teste Qualys SSL (digamos porque novas vulnerabilidades foram descobertas), mesmo que você tenha usado as configurações recomendadas do Apache. Um exemplo é se a linha a seguir aparece em vermelho (falha) em seu relatório Qualys TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) A primeira etapa é encontrar qual código você precisa alterar em sua diretiva Apache SSLCipherSuite. Para encontrar o código, vá para https://www.openssl.org/docs/man1.0.2/apps/ciphers … - mostra o código da seguinte maneira: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 ECDHE-RSA-AES256-GCM-SHA384

Pegue ECDHE-RSA-AES256-GCM-SHA384 e remova-o da entrada que você adicionou como a diretiva Apache Apache SSLCipherSuite e adicione-o ao final precedendo-o com:!

Novamente, reinicie o Apache e teste novamente

Etapa 3: Conclusão

Eu tenho que você aprendeu algo sobre teste SSL. Há muito mais para aprender sobre isso, mas espero que eu tenha apontado a direção certa. Em meus próximos tutoriais, estarei cobrindo outras áreas da segurança cibernética, portanto, fique ligado.

Recomendado: