Como configurar o Apache HTTP com certificado SSL

O Apache HTTP ainda é líder de mercado em um servidor web usado por milhões de sites mais movimentados.


Você pode ver que o Nginx está aumentando gradualmente; portanto, se você estiver na administração de sistema / web / middleware; então você conhece o Apache & Servidores web Nginx.

No entanto, neste artigo, abordarei apenas o Apache Web Server.

Depois que o SSL for implementado, o domínio / IP configurado ficará acessível por HTTPS. Vamos começar.

Em alto nível, faremos o seguinte.

  • Compile o Apache HTTP 2.4.5 com módulo SSL
  • Obter certificado SSL
  • Configure o Apache para suportar SSL

Instale o Apache com SSL da fonte

Para configurar o SSL, o Apache HTTP deve ser compilado com mod_ssl. Vou usar o CentOS 7 VM de Digital Ocean para demonstrar isso.

  • Entre no servidor Linux com root e baixe a versão mais recente do Apache

wget http://www-us.apache.org/dist//httpd/httpd-2.4.25.tar.gz .

  • Extrair pelo comando gunzip

gunzip -c httpd-2.4.25.tar.gz | tar xvf –

  • Você terá uma nova pasta “httpd-2.4.25
  • Entre e execute o seguinte comando configure

./ configure –enable-ssl –-enable-so

Nota: Se você estiver fazendo isso em um servidor totalmente novo, poderá encontrar problemas relacionados ao APR, PCRE, OpenSSL e consultar o guia de solução de problemas.

Verifique se você não recebeu nenhum erro acima do comando configure e, em seguida, instale o comando make.

faço
faça instalar

Como sempre, verifique se não há erros nos comandos acima. Isso conclui que você tem instalado Servidor da web Apache com suporte SSL.

Obtendo certificado SSL

Existem várias maneiras de gerar e obter o certificado SSL assinado pela autoridade de certificação.

Se você deseja implementar SSL no servidor Web da Intranet, a maioria da organização possui uma equipe interna de emissor de certificados, então você deve verificar com eles.

Mas você ainda precisa gerar um CSR (Certificate Signing Request) e pode fazê-lo usando o OpenSSL.

No entanto, se você deseja proteger URL voltado para a Internet então você pode comprar um certificado da VeriSign, GoDaddy, Namecheap, etc. ou obtenha um certificado GRATUITO no Let’s Encrypt.

Vamos criptografar é um projeto de colaboração da Linux Foundation que oferece Certificado SSL / TLS GRATUITO. Vou usar o Let’s Encrypt para obter um certificado para o meu domínio – Chandan.io

Existem várias maneiras de gerar RSE, mas mais fácil encontrei usando “SSL GRATUITAMENTEFerramenta online.

Digite o URL que você deseja proteger

Verifique a propriedade do domínio por um dos métodos listados e faça o download dos arquivos de certificado de domínio.

Você receberá três arquivos que usaremos a seguir para configurar o servidor da web Apache.

  1. chave – este é o seu arquivo de chave e não deve ser compartilhado com ninguém publicamente
  2. Certificado – certificado SSL real para o seu domínio
  3. Ca_bundle – certificado raiz / intermediário do assinante

Transfira o arquivo baixado para o servidor Web. Vamos precisar deles em breve.

Configuração SSL do Apache

E uma etapa final seria configurar o Apache para que ele possa atender à solicitação por HTTPS.

  • Efetue login no servidor da web Apache
  • Faça um backup do arquivo httpd.conf (local padrão / usr / local / apache2 / conf /)
  • Abra o arquivo com o editor vi e assegure-se de que o módulo mod_ssl & O httpd-ssl.conf existe e não é comentado

Módulos ssl_module LoadModule / mod_ssl.so
Inclua conf / extra / httpd-ssl.conf

Nós vamos usar httpd-ssl.conf para configurar os detalhes do certificado. A seguir, você precisa garantir que existem os parâmetros corretos.

  1. SSLCertificateFile – Caminho do arquivo CRT do certificado que você baixou anteriormente
  2. SSLCertificateKeyFile – caminho do arquivo de chave private.a
  3. SSLCertificateChainFile – caminho do arquivo ca_bundle.crt

Gorjeta: você pode criar uma nova pasta chamada “ssl” e manter todos os arquivos relacionados ao certificado neste.

  • Faça um backup, se necessário, e use o vi editor para modificar o arquivo.

SSLCertificateFile "/usr/local/apache2/conf/ssl/certificate.crt"
SSLCertificateChainFile "/usr/local/apache2/conf/ssl/ca_bundle.crt"
SSLCertificateKeyFile "/usr/local/apache2/conf/ssl/private.key"

Em seguida, você precisa configurar o “Nome do servidorDiretiva. Geralmente, é o seu nome de domínio / URL

ServerName chandan.io

  • Salve o arquivo e reinicie o servidor da Web Apache

cd / usr / local / apache2 / bin
./ apachectl stop
./ apachectl start

E, finalmente, você precisa garantir que seu domínio seja mapeado para o IP do servidor da Web recém-configurado. Quando terminar, tente acessar seu domínio com https.

E como você pode ver, Chandan.io é acessível por https com o certificado que eu configurei.

As etapas acima são essenciais para configurar o certificado SSL, e você deve ajustá-lo ainda mais para fortalecer e proteger o que expliquei aqui.

Antes da ativação, você também pode testar o servidor SSL / TLS para garantir que ele não seja exposto a vulnerabilidades de segurança comuns.

Espero que isso lhe dê uma idéia de como implementar o certificado SSL no servidor da Web Apache, para que o URL seja acessível por HTTPS.

Se você é novo no servidor da web Apache, recomendo que você faça isso curso online.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map