bg-tutorials

Como Instalar um Certificado SSL num Servidor Debian

Este guia explica como instalar um certificado SSL num servidor Debian com Apache.

Como gerar o CSR para um servidor Debian?

Antes da instalação, a primeira tarefa é gerar um código CSR (Certificate Signing Request). Este é o procedimento padrão ao solicitar um certificado SSL. O CSR contém detalhes relevantes sobre o seu domínio e organização que a Autoridade de Certificação deve verificar antes de emitir o certificado.

Tem duas opções:

  1. Gerar o CSR automaticamente usando o nosso Gerador de CSR.
  2. Seguir o nosso tutorial passo a passo sobre como criar o CSR no Debian.

Copie todo o conteúdo do CSR e envie-o à Autoridade de Certificação durante o seu pedido. Dependendo do tipo de validação, deverá receber o seu certificado SSL em minutos ou, para certificados de validação superior, em alguns dias. Depois de a CA o emitir, continue com a instalação abaixo.

Passo 1: Carregue o certificado e a chave privada para o servidor

Coloque os ficheiros nos locais padrão do Debian. Mantenha a chave privada em /etc/ssl/private/ com permissões restritas e combine o certificado e o(s) intermediário(s) num único ficheiro de cadeia completa em /etc/ssl/certs/:

# Private key (set strict permissions)
sudo install -m 600 yourdomain.key /etc/ssl/private/yourdomain.key

# Concatenate the server certificate + intermediate(s) into one full-chain file
cat yourdomain.crt intermediate1.crt intermediate2.crt | sudo tee /etc/ssl/certs/yourdomain-fullchain.pem >/dev/null

Se a sua CA entregou a cadeia como um único ficheiro ca-bundle em vez de intermediários separados, use esse ficheiro em vez de intermediate1.crt intermediate2.crt acima.

No Apache 2.4.8 e versões mais recentes, este único ficheiro de cadeia completa é tudo o que precisa para SSLCertificateFile. A antiga diretiva SSLCertificateChainFile está obsoleta e já não é necessária.

Passo 2: Ative o módulo SSL

Ative o módulo SSL do Apache (e o módulo de cabeçalhos, usado para o HSTS no Passo 3):

sudo a2enmod ssl
sudo a2enmod headers

Passo 3: Crie o seu VirtualHost HTTPS

Crie um novo ficheiro de configuração do site em /etc/apache2/sites-available/:

sudo nano /etc/apache2/sites-available/yourdomain-ssl.conf

Cole o seguinte VirtualHost da porta 443 e ajuste os caminhos e nomes de domínio de acordo com a sua configuração:

<VirtualHost *:443>
    ServerName yourdomain.com
    ServerAlias www.yourdomain.com

    DocumentRoot /var/www/yourdomain

    SSLEngine on
    SSLCertificateFile    /etc/ssl/certs/yourdomain-fullchain.pem
    SSLCertificateKeyFile /etc/ssl/private/yourdomain.key

    # Recommended TLS hardening (2026)
    SSLProtocol         -all +TLSv1.2 +TLSv1.3
    SSLHonorCipherOrder off

    # HSTS: uncomment the line below only AFTER you confirm HTTPS works on the
    # domain and every subdomain (includeSubDomains applies to all of them).
    # Reversing HSTS in visitors' browsers is slow, so enable it deliberately.
    # Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"

    # Optional: enable HTTP/2
    # Protocols h2 http/1.1

    <Directory /var/www/yourdomain>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog  ${APACHE_LOG_DIR}/yourdomain-ssl-error.log
    CustomLog ${APACHE_LOG_DIR}/yourdomain-ssl-access.log combined
</VirtualHost>
  • SSLCertificateFile, o seu ficheiro de cadeia completa (certificado + intermediários). No Apache 2.4.8+ isto substitui a diretiva obsoleta SSLCertificateChainFile.
  • SSLCertificateKeyFile, a chave privada que criou com o CSR.

Passo 4: Force o redirecionamento de HTTP para HTTPS

Para que os visitantes acedam sempre à versão segura, crie um VirtualHost separado na porta 80 que redirecione todo o tráfego HTTP para HTTPS:

sudo nano /etc/apache2/sites-available/yourdomain-redirect.conf

Em seguida, cole o seguinte:

<VirtualHost *:80>
    ServerName yourdomain.com
    ServerAlias www.yourdomain.com
    Redirect permanent / https://yourdomain.com/
</VirtualHost>

Passo 5: Ative as configurações do seu site

Ative o novo site HTTPS (e o redirecionamento, se o criou). Os ficheiros em sites-enabled/ são apenas ligações simbólicas para sites-available/:

sudo a2ensite yourdomain-ssl

# If you created the redirect
sudo a2ensite yourdomain-redirect

Passo 6: Teste a configuração

Teste sempre a configuração antes de recarregar, porque um erro de sintaxe pode colocar o site fora do ar:

sudo apache2ctl configtest

Deverá ver Syntax OK. Se receber um erro, reveja os passos anteriores antes de continuar.

Passo 7: Recarregue o servidor Apache

Aplique as alterações recarregando o Apache. Um recarregamento ativa a nova configuração sem interromper as ligações existentes:

sudo systemctl reload apache2

Configurou com sucesso o seu certificado SSL no seu servidor Debian. Pode sempre verificar o estado da sua instalação SSL com o nosso SSL Checker.

Onde comprar um certificado SSL para um servidor Debian?

O melhor lugar para comprar um certificado SSL para Debian é a SSL Dragon. Oferecemos preços competitivos, descontos regulares e excelentes ofertas em toda a nossa gama de produtos SSL. Selecionámos cuidadosamente as melhores marcas de SSL do mercado para dar ao seu site uma encriptação forte. Todos os nossos certificados SSL são compatíveis com Debian.

Perguntas frequentes

Onde são armazenados os certificados SSL no Debian?

Por convenção, os certificados ficam em /etc/ssl/certs/ e as chaves privadas em /etc/ssl/private/ (mantenha a chave legível apenas pelo root). Estes são valores predefinidos; pode usar outros locais desde que o seu VirtualHost aponte para eles.

Como sei se um certificado SSL está instalado no Debian?

Ligue-se ao seu site com OpenSSL e leia o certificado que ele fornece:
echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -dates
Se um certificado estiver instalado, isto imprime o seu emissor e as datas de validade. Também pode listar os hosts virtuais ativos do Apache com sudo apache2ctl -S, ou simplesmente abrir o seu site num navegador e verificar o cadeado.

Onde está localizada a configuração do site Apache no Debian?

Os ficheiros de configuração do site encontram-se em /etc/apache2/sites-available/ (por exemplo yourdomain-ssl.conf), e os sites ativados são ligados simbolicamente em /etc/apache2/sites-enabled/. Ative um site com sudo a2ensite yourdomain-ssl.

Preciso de um certificado SSL no Debian?

Sim. Sem um certificado SSL, os navegadores marcam o seu site como “Não seguro” e o tráfego entre os seus utilizadores e o seu servidor não é encriptado. Um certificado SSL encripta essa ligação e é praticamente obrigatório para qualquer site em produção.

Conclusão

Instalar um certificado SSL no Debian com Apache resume-se a carregar os seus ficheiros, ativar o mod_ssl, configurar o VirtualHost HTTPS com o seu certificado de cadeia completa, adicionar um redirecionamento HTTP→HTTPS, testar com sudo apache2ctl configtest e recarregar o Apache. Precisa primeiro de um certificado? Explore os nossos certificados SSL.

Economize 10% em certificados SSL ao fazer seu pedido hoje!

Emissão rápida, criptografia forte, 99,99% de confiança no navegador, suporte dedicado e garantia de reembolso de 25 dias. Código do cupom: SAVE10

Uma imagem detalhada de um dragão em voo
Escrito por

Redator de conteúdo experiente, especializado em certificados SSL. Transformação de tópicos complexos de segurança cibernética em conteúdo claro e envolvente. Contribua para melhorar a segurança digital por meio de narrativas impactantes.