Índice:
- Etapa 1: Testar a força do seu serviço SSL
- Etapa 2: reconfigurando o Apache para fazer alterações de SSL
- Etapa 3: Conclusão
Vídeo: Fortalecendo os serviços SSL em seu servidor Web (Apache / Linux): 3 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:39
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
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
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:
Monitoramento de temperatura do Nodemcu ESP8266 usando DHT11 em um servidor da Web local - Obtenha a temperatura e umidade da sala no seu navegador: 6 etapas
Monitoramento de temperatura Nodemcu ESP8266 usando DHT11 em um servidor da Web local | Obtenha a temperatura e umidade da sala no seu navegador: Olá, pessoal, hoje vamos fazer um teste de umidade & sistema de monitoramento de temperatura usando ESP 8266 NODEMCU & Sensor de temperatura DHT11. A temperatura e a umidade serão obtidas no DHT11 Sensor & pode ser visto em um navegador cuja página da web será gerenciada
AWS e IBM: uma comparação de serviços IoT: 4 etapas
AWS e IBM: uma comparação de serviços IoT: Hoje estamos comparando duas pilhas que tornam possível desenvolver aplicativos IoT sob o ponto de vista de diferentes ofertas de serviço
Conecte seu Arduino a serviços externos: 6 etapas
Conecte seu Arduino a serviços externos: Olá! Este tutorial mostrará como conectar seu Arduino conectado ou dispositivo IOT de escolha a um serviço externo. Por causa deste tutorial, estaremos trabalhando com Easy Window (uma janela inteligente fictícia, mas programável), se este
Relógio de animação SMART LED conectado à web com painel de controle baseado na web, servidor de hora sincronizado: 11 etapas (com imagens)
Relógio de animação SMART LED conectado à web com painel de controle baseado na web, servidor de tempo sincronizado: a história desse relógio remonta há muito tempo - mais de 30 anos. Meu pai foi o pioneiro dessa ideia quando eu tinha apenas 10 anos de idade, muito antes da revolução do LED - na época em que os LEDs tinham 1/1000 do brilho de seu atual brilho ofuscante. Um verdadeiro
Configure seu próprio servidor web !: 12 etapas
Configure o seu próprio servidor da Web !: Você já quis ter um lugar onde pudesse manter seus arquivos e acessá-los de qualquer lugar com conexão à Internet? Digamos que você queira ter sua biblioteca de música disponível, caso queira dar uma música para um de seus amigos, ou talvez queira