Como Instalar um Certificado SSL no Apache para CentOS 7
Introdução
Certificados SSL são pequenos arquivos de dados que atestam a propriedade de uma chave criptográfica pública. As autoridades de certificação (CA) garantem que a chave pertence a uma organização, servidor ou outra entidade listada no certificado.
quando um usuário, por meio de seu navegador, acessa um site Certificado, as informações são criptografadas com uma chave pública exclusiva. Os dados só podem ser descriptografados usando uma chave privada exclusiva localizada no servidor host. Esse alto nível de criptografia impede tentativas não autorizadas de acessar as informações.Neste tutorial, aprenda como instalar um certificado SSL no CentOS 7.
pré-Requisitos
- Um usuário com privilégios sudo
- Acesso a uma linha de comando (Ctrl-Alt-T)
- Um CentOS 7 máquina
- Um nome de domínio válido com o DNS apontado para o servidor
Como Obter um Certificado SSL
Existem várias maneiras de obter Certificados:
- Usando um sistema automatizado e livre de certificado de autoridade, como o Vamos Criptografar projeto.
- as autoridades de Certificação Comercial fornecem certificados por uma taxa (Comodo, DigiCert, GoDaddy)
- alternativamente, é possível criar um certificado autoassinado. Este tipo de certificado é útil para fins de teste ou para uso em um ambiente de desenvolvimento.
se você ainda está considerando que tipo de certificado você precisa, ou qual CA escolher, preparamos um guia abrangente para certificados SSL, chaves privadas e CSRs para ajudá-lo no processo.
Nota: Os CAs confiáveis não verificam certificados autoassinados. Os usuários não podem usá-lo para validar a identidade de seu servidor automaticamente.
Instale o certificado SSL com Let’s Encrypt
Let’s Encrypt é uma autoridade de certificação gratuita, aberta e automatizada. Ele usa a ferramenta de software certbot para administrar certificados automaticamente.O Certbot é uma ferramenta altamente automatizada. Certifique-se de que sua instalação do Apache seja válida e que você tenha um host virtual configurado para seus domínios. Você deve primeiro ler nosso tutorial sobre como instalar o Apache no CentOS 7 se precisar de Ajuda para configurar seu firewall e hosts virtuais.
Instalação Do Certbot
1. Use o terminal de comando para instalar o repositório EPEL e yum-utils:
sudo yum –y install epel-release yum-utils
2. Em seguida, instale um módulo que suporte SSL para Apache:
sudo yum -y install mod_ssl
neste exemplo, a versão mais recente do módulo já está disponível.
3. Agora podemos instalar certbot para Apache:
sudo yum –y install python-certbot-apache
4. Uma vez que a instalação segue seu curso, você pode iniciar o processo para obter um certificado de entrar:
sudo certbot –apache –d yourdomain.com
como Alternativa, inicie o certbot digitando:
sudo certbot
5. O cliente pede que você forneça um endereço de E-mail e leia e aceite os Termos de serviços. Certbot então lista os domínios disponíveis em seu servidor. Ative HTTPS para domínios específicos ou todos eles, deixando o campo em branco.
o próximo prompt permite forçar todas as solicitações a proteger o acesso HTTPS.
depois de fazer suas escolhas, a mensagem no terminal confirma que você ativou a criptografia para o seu domínio.
renovação automática do certificado
os certificados emitidos pelo Let’s Encrypt são válidos por 90 dias. O comando certbot renew verifica os certificados instalados e tenta renová-los se estiverem a menos de 30 dias da expiração. Para automatizar esse processo, crie um cron job para executar o comando periodicamente.
Use seu editor de texto preferido para definir com que frequência executar o comando renew:
sudo crontab -e
insira esta linha e salve o crontab:
* */12 * * * /usr/bin/certbot renew >/dev/null 2>&1
como instalar o certificado SSL com o comodo
1. O primeiro passo é enviar uma solicitação de assinatura de Certificado a uma Autoridade de Certificação. Nosso guia detalhado sobre como gerar uma solicitação de assinatura de certificado (CSR) com OpenSSL é um excelente recurso se você precisar de ajuda com este processo.
2. Uma vez que uma CA certifica sua solicitação, você recebe uma cópia do seu certificado SSL. Agora você pode instalar o certificado no seu servidor CentOS 7.
este exemplo mostra como instalar um certificado de um provedor SSL pago, Comodo.
3. Depois que o Comodo verificar sua CSR a solicitação, baixe os arquivos SSL. Copie-os (ComodoRSACA.crt) e o certificado primário (yourdomain.crt), para o diretório do servidor Apache. A chave privada gerada durante o processo CSR (Certificate Signing Request) precisa estar no mesmo servidor.
Configurar Hosts Virtuais para SSL
Aftr você tem certificação bem-sucedida, o domínio e colocou a chave de arquivos no servidor, o próximo passo será configurar os hosts virtuais para exibir o certificado.
1. Acesse o arquivo de configuração SSL:
sudo nano /etc/httpd/conf.d/ssl.conf
2. Edite o arquivo de configuração para apontar para os arquivos corretos em seu servidor.
Descomente as seguintes linhas na seção <VirtualHost_default_:443> e insira o arquivo correto caminhos:
- DocumentRoot “/var/www/yourdomain.com”
- ServerName yourdomain.com: 443
- SSLEngine on
- SSLCertificateFile – O caminho do seu arquivo de certificado.
- SSLCertificateKeyFile-o caminho do seu arquivo de chave.
- SSLCertificateChainFile-o arquivo de certificado Comodo intermediário.
3. Depois de fazer as alterações necessárias, saia do arquivo (Ctrl+X) e pressione y para salvar as alterações.
4. Teste sua configuração do Apache antes de reiniciar. Certifique-se de que a sintaxe esteja correta digitando:
sudo apachectl configtest
5. Assim que o sistema confirmar que a sintaxe está correta, reinicie o Apache:
sudo systemctl restart httpd
agora você configurou seu servidor Apache para usar o certificado SSL.
como criar um certificado SSL autoassinado
um certificado autoassinado é útil para testes, em ambientes de desenvolvimento e em uma intranet.
1. Tal como acontece com Let’s Encrypt, o módulo mod_ssl Apache fornece suporte para a criptografia SSL:
sudo yum –y install mod_ssl
2. Crie um novo diretório para armazenar a chave privada:
sudo mkdir /etc/ssl/privatekey
3. Restringir o acesso a esse diretório apenas ao usuário root:
sudo chmod 700 /etc/ssl/privatekey
4. Gerar um certificado auto-assinado usando este comando OpenSSL:
sudo openssl req -x509 -new -newkey rsa:2048 -nodes -days 365 -keyout /etc/ssl/privatekey/ yourdomain.key -out /etc/ssl/certs/yourdomain.csr
Este é um resumo detalhado de todos os elementos:
- openssl – ativa o software OpenSSL
- req – indica que precisamos de um RSE
- -x509 – especifica o uso do X. 509 pedido de assinatura
- -novo -newkey – gerar uma nova chave
- rsa:2048 – gerar um RSA de 2048 bits chave matemática
- -nós – não DES, o que significa não criptografar a chave privada em um arquivo PKCS#12
- –days 365– número de dias que o certificado é válido para
- -keyout – indica o domínio que você está gerando uma chave para
- -out – especifica o nome do arquivo que contém a RSE
Nota: certifique-se de substituir seudominio com o real de seu domínio.
5. O sistema lança um questionário para você preencher.
Insira suas informações nos campos disponíveis:
- Nome do País – use um 2-código de país letra
- Estado – o estado onde o proprietário do domínio é incorporado em
- Localidade – cidade onde o proprietário do domínio é incorporado em
- nome da Organização – uma entidade que possui o domínio
- unidade Organizacional nome do departamento ou de grupo em sua organização que funciona com certificados
- nome Comum – na maioria das vezes, o nome de domínio totalmente qualificado (FQDN)
- endereço de e-Mail – endereço de e-mail
- Desafio palavra – passe definir uma palavra-passe opcional para o seu par de chaves
a imagem representa um exemplo de questionário no CentOS 7.
6. Prossiga para configurar o host virtual para exibir o novo certificado. O processo é idêntico às etapas descritas no Capítulo 2, Configurar Hosts virtuais para SSL.
7. Teste sua configuração do Apache antes de reiniciar. Para se certificar de que a sintaxe está correta, digite:
sudo apachectl configtest
8. Assim que o sistema confirmar que a sintaxe está correta, reinicie o Apache:
sudo systemctl restart httpd
agora você configurou seu servidor Apache para usar seu certificado SSL autoassinado e deve poder visitar seu site com SSL ativado.
Como verificar se um certificado SSL é válido?
para verificar se um certificado SSL é válido, Você pode disponibilizar serviços publicamente, como o teste do servidor SSL. Confirme o status do seu certificado e verifique se todos os detalhes estão corretos.Como alternativa, acesse seu site usando https: / / para ver se o certificado SSL está visível. O cadeado verde indica que a camada adicional de criptografia está presente.
conclusão
seguindo estas instruções, você garantiu o tráfego em seu site de distribuição CentOS Linux implementando um certificado SSL.
seu novo certificado SSL garante que todos os dados que passam entre o servidor da web e os navegadores permaneçam privados e seguros.