bg-tutorials

Como Instalar um Certificado SSL no Pound

Este guia mostra como instalar um certificado SSL/TLS no Pound, o leve proxy reverso HTTP/HTTPS. Ele abrange a parte que mais confunde os operadores: criar o arquivo PEM único combinado que o Pound espera, na ordem correta, e depois escrever um bloco ListenHTTPS funcional que desativa protocolos obsoletos, aponta o Pound para um backend e passa por uma verificação de configuração antes de você reiniciar o serviço.

Uma nota rápida sobre qual Pound este guia tem como alvo. O projeto original Apsis Pound foi descontinuado em setembro de 2022. O desenvolvimento ativo foi transferido para o fork mantido por Sergey Poznyakoff em github.com/graygnuorg/pound, que agora é o repositório canônico e a versão empacotada pelas distribuições Linux atuais. As diretivas abaixo correspondem à série moderna 4.x.

Gerar o CSR para o Pound

Se você já gerou seu CSR e tem em mãos os arquivos do certificado emitido, avance para Instalar o certificado SSL no Pound.

Antes que uma Autoridade Certificadora possa emitir seu certificado, você precisa enviar um CSR (Certificate Signing Request): um pequeno bloco de texto que contém os detalhes do seu domínio e uma chave pública, emparelhado com uma chave privada que permanece no servidor. Você tem duas opções:

  • Gerar o CSR automaticamente com nosso CSR Generator. A ferramenta retorna tanto o CSR quanto a chave privada correspondente, que você então move para o servidor.
  • Gerar o CSR no próprio servidor com o OpenSSL seguindo nosso tutorial sobre como gerar um CSR no Pound. A chave privada permanece no servidor.

Ao solicitar o certificado, cole o bloco completo do CSR, incluindo as linhas —–BEGIN CERTIFICATE REQUEST—– e —–END CERTIFICATE REQUEST—–. Se quiser confirmar o conteúdo do CSR antes de enviá-lo, cole-o em nosso decodificador de CSR. Mantenha o arquivo de chave privada correspondente (geralmente yourdomain.key) em um local seguro e legível apenas pelo root; você precisará dele durante a instalação.

Instalar o certificado SSL no Pound

Depois que a CA emitir o certificado, você normalmente receberá:

  • Seu certificado primário (do servidor), geralmente um arquivo .crt ou .pem nomeado a partir do seu domínio.
  • Um ou mais certificados intermediários, seja como arquivos separados ou agrupados em um único arquivo .ca-bundle.
  • A chave privada (um arquivo .key) que foi gerada junto com o seu CSR.

O Pound espera um único arquivo PEM que contenha o certificado, a cadeia intermediária e a chave privada não criptografada. O manual do graygnuorg é explícito sobre a ordem: certificado, depois os certificados intermediários (se houver), depois a chave privada, nessa ordem. Pular a cadeia é o erro de instalação mais comum: o certificado parece correto em um navegador de desktop, mas falha no Android, no iOS e em clientes de linha de comando.

Passo 1: Criar o arquivo PEM combinado

Este guia presume que os arquivos do certificado estão armazenados em /etc/pound/. Ajuste os caminhos conforme sua estrutura. Concatene os três arquivos em um único arquivo PEM. O padrão pipe-para-tee abaixo executa o redirecionamento com privilégios de root, o que é necessário porque /etc/pound/ geralmente só é gravável pelo root (um simples sudo cat … > /etc/pound/… falharia, já que o shell abre o arquivo de saída como seu usuário normal antes mesmo de o sudo ser executado):

cat your_domain.crt intermediate.crt your_domain.key | sudo tee /etc/pound/your_domain.pem > /dev/null

Se a CA forneceu os intermediários como um único arquivo .ca-bundle, use-o em vez disso:

cat your_domain.crt your_domain.ca-bundle your_domain.key | sudo tee /etc/pound/your_domain.pem > /dev/null

Substitua os nomes dos arquivos pelos seus. A chave privada dentro do arquivo combinado deve estar não criptografada, já que o Pound é iniciado de forma não interativa e não pode solicitar uma frase-senha. Restrinja o arquivo resultante para que somente o root possa lê-lo:

sudo chown root:root /etc/pound/your_domain.pem
sudo chmod 600 /etc/pound/your_domain.pem

Passo 2: Editar o pound.cfg

Abra o arquivo de configuração do Pound (comumente /etc/pound/pound.cfg no Debian e Ubuntu, ou /etc/pound.cfg em algumas outras distribuições) e adicione um bloco ListenHTTPS que aponte para o arquivo PEM combinado. Um bloco moderno mínimo se parece com isto:

ListenHTTPS
    Address 0.0.0.0
    Port 443
    Cert "/etc/pound/your_domain.pem"

    # Modern TLS only: disables SSLv2, SSLv3, TLSv1.0 and TLSv1.1,
    # leaving TLSv1.2 and TLSv1.3 enabled.
    Disable TLSv1_1
    Ciphers "ECDHE+AESGCM:ECDHE+CHACHA20:!aNULL:!MD5:!DSS"

    Service
        Backend
            Address 127.0.0.1
            Port 8080
        End
    End
End

Algumas observações sobre as diretivas acima:

  • Cert fornece o arquivo PEM combinado que você criou no Passo 1. O manual deixa claro que Cert deve preceder todas as outras diretivas específicas de SSL dentro do listener, então mantenha-o no topo do bloco.
  • Disable desativa o protocolo indicado e todo protocolo mais antigo do que ele. Disable TLSv1_1, portanto, desativa SSLv2, SSLv3, TLSv1.0 e TLSv1.1, deixando o TLSv1.2 e o TLSv1.3 ativos, o que está de acordo com as orientações atuais do setor.
  • Ciphers define a lista de cifras do OpenSSL (usada para TLS 1.2; o TLS 1.3 negocia seu próprio conjunto de cifras). A lista acima restringe o proxy a conjuntos ECDHE modernos com AEAD; se precisar dar suporte a clientes mais antigos, use o perfil “intermediate” da Mozilla em ssl-config.mozilla.org.
  • Service / Backend é onde o Pound faz o proxy do tráfego descriptografado. O exemplo encaminha para um único backend na interface de loopback (porta 8080); substitua o endereço e a porta pelo que sua aplicação estiver ouvindo, e adicione mais blocos Backend se quiser que o Pound faça balanceamento de carga.

Se você também quiser que o Pound aceite HTTP puro e o encaminhe (normalmente apenas para redirecionar para HTTPS, veja o Passo 4), adicione um bloco ListenHTTP separado no mesmo arquivo.

Passo 3: Verificar a configuração e reiniciar o Pound

Antes de recarregar o serviço, valide o arquivo de configuração para que um erro de digitação não derrube o proxy. O Pound tem um modo de verificação embutido:

sudo pound -c -f /etc/pound/pound.cfg

Ele sai com status 0 e não imprime nada em caso de sucesso, ou status 1 com uma mensagem de erro indicando o arquivo e a linha em caso de falha. Adicione -v se quiser uma confirmação explícita de “configuration OK”. Quando a verificação for aprovada, reinicie o Pound para que ele passe a usar o novo listener:

sudo systemctl restart pound

Em sistemas sem systemd, use o script init mais antigo:

sudo /etc/init.d/pound restart

Confirme que o serviço está em execução e ouvindo na porta 443:

sudo systemctl status pound
sudo ss -tlnp | grep ':443'

Passo 4 (recomendado): Redirecionar HTTP para HTTPS

Para garantir que os visitantes que digitarem o domínio puro caiam na URL segura, adicione um listener HTTP puro que responda a toda requisição com um redirecionamento permanente para a versão HTTPS do mesmo caminho:

ListenHTTP
    Address 0.0.0.0
    Port 80
    Service
        Redirect 301 "https://example.com$1"
    End
End

Substitua example.com pelo seu próprio domínio. A referência retroativa $1 preserva o caminho original da requisição. Execute sudo pound -c -f /etc/pound/pound.cfg novamente e, em seguida, reinicie o serviço.

Testar a instalação SSL

Abra seu site via https:// em um navegador e verifique se o cadeado está fechado e se o certificado corresponde ao seu domínio. Em seguida, execute uma verificação mais profunda com nosso SSL Checker para obter um relatório instantâneo sobre o certificado, a cadeia e os protocolos e cifras que o Pound está oferecendo. Um resultado limpo ali significa que os clientes em todas as principais plataformas, incluindo clientes móveis e de API, confiarão no certificado.

Perguntas Frequentes

Qual versão do Pound devo instalar?

O projeto original da Apsis foi abandonado em 2022. O fork ativamente mantido é o graygnuorg/pound de Sergey Poznyakoff, atualmente na série 4.x, e é o que as principais distribuições Linux empacotam como pound. Se você estiver executando algo da antiga linha 2.x, planeje migrar para uma versão atual: as diretivas de configuração deste guia presumem o fork moderno.

Em que ordem o certificado, a cadeia e a chave devem aparecer no arquivo PEM?

Conforme o manual do Pound: primeiro o certificado do servidor, depois os certificados intermediários (se houver) e, por fim, a chave privada, tudo codificado em PEM, em um único arquivo. A chave privada não pode estar protegida por frase-senha, pois o Pound é iniciado como um daemon e não tem como solicitar uma.

Como desativo versões antigas do TLS no Pound?

Use a diretiva Disable dentro do bloco ListenHTTPS. O Disable do Pound desativa o protocolo indicado e todo protocolo mais antigo do que ele, então Disable TLSv1_1 desativa SSLv2, SSLv3, TLSv1.0 e TLSv1.1, deixando apenas o TLSv1.2 e o TLSv1.3. Essa é a configuração recomendada para novas implantações.

Posso hospedar mais de um site HTTPS na mesma instância do Pound?

Sim. O Pound oferece suporte a SNI, então você pode declarar várias instruções Cert dentro do mesmo listener ListenHTTPS (ou apontar Cert para um diretório de arquivos PEM). O Pound percorre os certificados em ordem e usa o primeiro cujo Nome Comum ou SAN corresponda ao nome de host solicitado, então liste certificados mais específicos (nomes de host) antes dos curinga.

Como testo a configuração do Pound sem reiniciar?

Execute sudo pound -c -f /etc/pound/pound.cfg. A flag -c verifica o arquivo de configuração em busca de erros de sintaxe e encerra sem iniciar o proxy; status de saída 0 significa OK, status 1 significa que há um erro (a mensagem informa qual arquivo e linha). Adicione -v para uma mensagem explícita de sucesso.

Com que frequência preciso renovar o certificado?

A partir de 15 de março de 2026, os certificados SSL/TLS de confiança pública terão validade máxima de 200 dias, e o CA/Browser Forum já programou novas reduções (para 100 dias em 2027 e 47 dias em 2029). Planeje repetir a instalação acima bem antes de cada expiração, ou automatize as renovações com ACME.

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.

Avatar of Sergiu Rosca
Technical Review by Sergiu Rosca

Sergiu Rosca is the core web developer behind SSL Dragon. He manages the technical infrastructure, platform performance, and backend integrations that keep the site running smoothly and securely. At SSL Dragon, Sergiu shares practical insights on web development, site optimization, and technical troubleshooting.

All SSL Dragon installation guides are tested on live server environments and undergo a strict peer-review process to ensure your infrastructure remains secure. Read our full Editorial Policy.