bg-tutorials

Como Instalar um Certificado SSL no Ubuntu Server (Apache)

Neste tutorial, você aprenderá como instalar um certificado SSL no Ubuntu com Apache.

Também gravamos um vídeo que mostra todo o processo passo a passo. Se preferir a versão em texto, continue lendo abaixo.

Gerar um código CSR

Vamos começar com a geração do CSR (Certificate Signing Request). Um CSR é uma solicitação enviada a uma Autoridade Certificadora para solicitar um certificado digital. Você tem duas opções:

Envie o CSR para a Autoridade Certificadora durante o seu pedido. Após a CA validá-lo e emitir seu certificado SSL, continue com a instalação abaixo.

Instalar um certificado SSL no Ubuntu Server

Passo 1: Envie seus arquivos de certificado

Após a validação, a Autoridade Certificadora envia por e-mail os arquivos do certificado. Extraia o arquivo compactado. Você deve ter:

  • yourdomain.crt, seu certificado SSL principal.
  • yourdomain.ca-bundle, os certificados intermediários (o CA bundle).
  • yourdomain.key, a chave privada que você gerou com o CSR.

Envie o certificado e o CA bundle para /etc/ssl/ e a chave privada para /etc/ssl/private/ (mantenha a chave legível apenas pelo root). No Apache 2.4.8 e versões mais recentes (o que inclui todas as versões do Ubuntu com suporte), combine o certificado e o CA bundle em um único arquivo de cadeia completa:

cat yourdomain.crt yourdomain.ca-bundle > yourdomain_fullchain.crt

Passo 2: Ative o módulo SSL e localize a configuração do seu site

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

sudo a2enmod ssl
sudo a2enmod headers

O arquivo de configuração do seu site está em /etc/apache2/sites-available/ (normalmente yourdomain.conf). Edite o arquivo ali. Os arquivos em sites-enabled/ são apenas links simbólicos. Se o site ainda não estiver ativado, ative-o com:

sudo a2ensite yourdomain.conf

Observação: disponibilize HTTP (porta 80) e HTTPS (porta 443) em blocos VirtualHost separados. É no bloco HTTPS que ficam as diretivas SSL.

Passo 3: Configure o VirtualHost HTTPS

Configure o VirtualHost da porta 443. Um bloco completo e moderno tem esta aparência; ajuste os caminhos para corresponder aos seus arquivos:

<VirtualHost *:443>
    ServerName  www.yourdomain.com
    DocumentRoot /var/www/yourdomain

    SSLEngine on

    # Apache 2.4.8+ : certificado + CA bundle em um único arquivo de cadeia completa
    SSLCertificateFile    /etc/ssl/yourdomain_fullchain.crt
    SSLCertificateKeyFile /etc/ssl/private/yourdomain.key

    # Reforço de segurança TLS recomendado (2026)
    SSLProtocol         -all +TLSv1.2 +TLSv1.3
    SSLHonorCipherOrder off

    # Ative o HSTS somente depois de confirmar que o HTTPS funciona
    Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
</VirtualHost>
  • SSLCertificateFile: seu arquivo de cadeia completa (certificado + intermediários). No Apache 2.4.8+, isso substitui a diretiva descontinuada SSLCertificateChainFile.
  • SSLCertificateKeyFile: a chave privada que você criou com o CSR.

Apache legado (anterior a 2.4.8): mantenha o certificado e a cadeia separados e adicione SSLCertificateChainFile /etc/ssl/yourdomain.ca-bundle, apontando para o CA bundle, e não para o seu arquivo de certificado.

Passo 4: Redirecione HTTP para HTTPS

Para que os visitantes sempre acessem a versão segura, adicione um VirtualHost na porta 80 que redirecione para HTTPS:

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

Passo 5: Teste a configuração

Sempre teste antes de recarregar; um erro de sintaxe pode tirar o site do ar:

sudo apache2ctl configtest

Você deverá ver Syntax OK. Se aparecer um erro, revise os passos anteriores antes de continuar.

Passo 6: Recarregue o Apache

Aplique as alterações recarregando o Apache (um reload ativa a nova configuração sem interromper conexões):

sudo systemctl reload apache2

Parabéns, seu certificado SSL agora está instalado no seu servidor Ubuntu. Para verificar o resultado e obter um relatório de status instantâneo, use nosso SSL Checker.

Onde comprar um certificado SSL para Ubuntu Server?

A SSL Dragon é a sua fonte para todas as suas necessidades de SSL. Oferecemos alguns dos preços mais baixos do mercado em toda a nossa linha de produtos SSL e firmamos parcerias com as melhores marcas de SSL do setor para garantir segurança robusta e suporte dedicado. Todos os nossos certificados SSL são compatíveis com servidores Ubuntu.

Perguntas Frequentes

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

Conecte-se ao seu site com OpenSSL e leia o certificado fornecido:
echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -dates
Se um certificado estiver instalado, isso exibirá seu emissor e as datas de validade. Você também pode listar os virtual hosts ativos do Apache com sudo apache2ctl -S, ou simplesmente abrir seu site em um navegador e verificar o cadeado.

Onde coloco o certificado SSL no Ubuntu?

Por convenção, os certificados ficam em /etc/ssl/certs/ (ou /etc/ssl/) e as chaves privadas em /etc/ssl/private/. Esses são locais padrão; você pode usar outros locais, desde que seu VirtualHost aponte para eles.

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

Os arquivos de configuração de sites ficam em /etc/apache2/sites-available/ (por exemplo, yourdomain.conf), e os sites ativados são vinculados por links simbólicos em /etc/apache2/sites-enabled/. Ative um site com sudo a2ensite yourdomain.conf.

Preciso mesclar o certificado e o CA bundle no Ubuntu?

No Apache 2.4.8 e versões posteriores (todas as versões do Ubuntu com suporte), sim: concatene seu certificado e o CA bundle em um único arquivo e faça o SSLCertificateFile apontar para ele. A diretiva separada SSLCertificateChainFile está descontinuada e só é necessária em versões mais antigas do Apache.

Conclusão

Instalar um certificado SSL no Ubuntu com Apache consiste em enviar seus arquivos, ativar o mod_ssl, configurar o VirtualHost HTTPS com seu certificado de cadeia completa, testar com sudo apache2ctl configtest e recarregar o Apache. Precisa de um certificado antes de tudo? Confira 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.