Como instalar o certificado Let's Crypt SSL para proteger o nginx no RHEL 9/8
- 1456
- 185
- Robert Wunsch DVM
Neste artigo, o guiaremos sobre como gerar e instalar um certificado SSL/TLS obtido gratuitamente Vamos criptografar a autoridade de certificado que usaremos para proteger transações HTTP da Web Nginx em distribuições baseadas em RHEL e RHEL, como Fedora, Rocky Linux e Almalinux.
Se você deseja instalar Vamos criptografar Para distribuições baseadas em Apache nas Rhel e Rhel, siga este guia abaixo:
[Você também pode gostar: como instalar o certificado Let's Crypt SSL para proteger o Apache nos sistemas RHEL]
Requisitos
- Um nome de domínio registrado com válido
A
DNS registra para apontar para o endereço IP público do servidor. - Nginx Web Server instalado com hosts SSL ativados e virtuais ativados (apenas para vários domínios ou subdomínios de hospedagem).
Nossa configuração do ambiente de teste
Configure https com Lets Encrypt para proteger o nginx no RHELEtapa 1: Instale o servidor da web nginx nos sistemas RHEL
1. Na primeira etapa, caso você não tenha Nginx Daemon já instalado, emita os comandos abaixo com privilégios root para instalar o NGINX WebServer a partir de repositórios EPEL.
------------- Em Rhel, Rocky & Almalinux 9 ------------- # dnf install https: // dl.FedoraProject.org/pub/epel/epel-latest-9.Noarch.RPM ------------- Em Rhel, Rocky & Almalinux 8 ------------- # dnf install https: // dl.FedoraProject.org/pub/epel/epel-latest-8.Noarch.RPM ------------- Instale o Nginx Web Server ------------- # yum install nginx
Observação: Os usuários do Fedora não precisam instalar o repositório EPEL.
Etapa 2: Instale Let's Encrypt (CERTBOT) em RHEL Systems
2. O método mais rápido de instalar o cliente Let's Encrypt nos sistemas Linux é instalando CertBot e Python3-CertBot-Nginx pacotes do repositório EPEL.
# dnf install certbot python3-CertBot-nginxInstale o certbot para o nginx nos sistemas RHEL
3. Depois de CertBot O cliente foi instalado, verifique a versão instalada do software Let's Encrypt, executando o comando abaixo:
# certbot --version CertBot 1.30.0
Etapa 3: Obtenha um certificado Let's Let's Crypt SSL gratuito para Nginx
4. O processo de obtenção de um livre Certificado SSL/TLS para Nginx será feito manualmente usando Vamos criptografar independentes plugar.
Este método requer essa porta 80 deve ser livre durante o tempo Vamos criptografar O cliente valida a identidade do servidor e gera certificados.
Portanto, se o nginx já estiver em execução, pare o daemon com o seguinte comando e execute o utilitário ss para confirmar que a porta 80 não está mais em uso na pilha de rede.
# serviço nginx Stop # SystemCtl Stop nginx # ss -tlnVerifique as portas de rede de audição-
5. Agora é hora de obter um certificado SSL gratuito de Vamos criptografar executando o CertBot comando com --nginx
Para inicializar a busca e a configuração do Certificado de Segurança de Let's Crypt para domínios Nginx.
# CertBot -Nginx ou # CertBot -Nginx -d Exemplo.com -d www.exemplo.comInstalar Lets Crypt Certificado para domínios Nginx
6. Finalmente, se tudo correr como deveria, uma mensagem de informação de felicitações será mostrada no seu terminal Bash. A mensagem também será exibida quando o certificado expirará.
LetSencrypt acaba a instalaçãoEtapa 4: Instale o Certificado SSL Let's Crypt Crypt no Nginx
9. Agora que você possui um grátis Certificado SSL/TLS, É hora de instalá -lo no Nginx WebServer para que seu domínio o use.
Todos os novos certificados SSL são colocados em /etc/letSencrypt/Live/
Sob um diretório nomeado após seu nome de domínio. Use o comando ls para listar os arquivos de certificado emitidos para o seu domínio e identificá -los.
# sudo ls/etc/letSencrypt/vive/ # sudo ls -al/etc/letsencrypt/vive/your_domain.tldLetSencrypt SSL Certificados
10. Para instalar os arquivos de certificado no nginx e ativar o SSL, aberto /etc/nginx/nginx.conf
Arquivo para edição e adicione as instruções abaixo após a última linha de audição do servidor Block. Use a ilustração abaixo como guia.
# vi/etc/nginx/nginx.conf
Trecho do bloco SSL nginx:
# Configuração SSL Ouça 443 SSL default_server; ssl_certificate/etc/letSencrypt/vive/your_domain.TLD/FullChain.PEM; ssl_certificate_key/etc/letSencrypt/vive/your_domain.TLD/Privkey.PEM; ssl_protocols tlsv1 tlsv1.1 TLSV1.2; ssl_prefer_server_ciphers on; SSL_CIPHERS 'EECDH+AESGCM: EDH+AESGCM: AES256+EECDH: AES256+EDH';Ativar https na configuração do nginx
Substitua o nome do domínio String para certificados SSL para corresponder ao seu próprio domínio.
11. Finalmente, reinicie Nginx serviço e visite seu domínio via protocolo HTTPS em https: // yourDomain
. A página deve carregar suavemente, sem nenhum erro de certificado.
# SystemCtl Reiniciar nginx # serviço nginx reiniciar
12. Para verificar o SSL/TLS Certificado e sua direita visitam o seguinte link:
https: // www.ssllabs.com/ssltest/analise.htmlVerifique se Let Verifique o certificado SSL HTTPS no domínio
13. Caso você receba uma notificação de que seu servidor suporta um fraco Dh troca -chave e uma classificação geral de B nota, gerar um novo Diffie-Hellman cifra in /etc/nginx/ssl/ diretório para proteger seu servidor contra o Logjam ataque executando os seguintes comandos.
# mkdir/etc/nginx/ssl # cd/etc/nginx/ssl # openssl dhparam -out dhparams.PEM 4096
Neste exemplo, usamos um 4096 Bit Key, que realmente leva muito tempo para gerar e coloca uma sobrecarga extra em seu servidor e no SSL Handshake.
Caso não haja necessidade explícita de usar uma chave por tanto tempo e você não é paranóico, você deve estar seguro com um 2048 chave de bit.
14. Depois Dh A chave foi gerada, o arquivo de configuração do NGINX aberto e adicione as declarações abaixo após ssl_ciphers
linha para adicionar a chave DH e aumentar o nível de segurança do seu domínio para um A+
nota.
# vi/etc/nginx/nginx.conf
Adicione o seguinte trecho do bloco a Nginx.conf:
ssl_dhparam/etc/nginx/ssl/dhparams.PEM; ssl_session_timeout 30m; ssl_session_cache compartilhado: ssl: 10m; ssl_buffer_size 8k; add_header strito-transportar-segurança max-AGE = 31536000;Adicione cifras Diffie-Hellman à configuração do Nginx
15. Reiniciar Nginx Serviço para aplicar alterações e testar novamente seu certificado SSL, limpando o cache do resultado anterior do link mencionado acima.
# SystemCtl Reiniciar nginx # serviço nginx reiniciarVerifique o certificado SSL LetSencrypt no site
Etapa 5: Renovar automaticamente o Nginx Free Lets Crypt SSL Certificates
16. Vamos criptografar CA libera grátis SSL/TLS certificados válidos para 90 dias. Os certificados podem ser renovados e aplicados manualmente antes da expiração usando o plug -in do Webroot, sem interromper o servidor da web, emitindo os comandos abaixo:
# CertBot -Nginx -d Exemplo.com -d www.exemplo.com # systemctl recarregar nginx
Ao executar o comando acima, substitua o exemplo.com
Para combinar seu domínio.
17. Para renovar automaticamente o certificado antes de expirar, crie o trabalho Cron para um arquivo crontab existente.
# Crontab -e
Adicione o seguinte trabalho Cron na parte inferior do arquivo, que será executado todos os dias ao meio -dia para verificar o vencimento do certificado e renová -lo. O --quieto
a opção diz ao certbot para não gerar saída.
0 12 * * */usr/bin/certbot renow --quiet
Isso é tudo! Agora, Nginx O servidor pode fornecer conteúdo seguro da Web com um grátis Ssl/tls vamos criptografar Certificado em seu site.
- « Colete uma ferramenta avançada de monitoramento de desempenho multifuncional para Linux
- 11 Melhores autoridades de certificado SSL gratuito e de baixo custo »