Pré requisitos:

  • Ter instalado Lets Encrypt e o Certbot
  • Ter amor a própria vida

Então bora la:

  • Executar a criação do certificado
certbot -d meudominio.com.br --manual --preferred-challenges dns certonly

Exemplo:
certbot -d haproxy.cadeolog.com.br --manual --preferred-challenges dns certonly
  • Vai gerar os arquivos do certificado em /etc/letsencrypt/live/meudominio.com.br
  • Copiar arquivo do certificado para outro arquivo e colocar o conteúdo do arquivo da chave privada na parte de baixo utilizando os comandos abaixo:
cp cert.pem haproxy.pem

cat privkey.pem >> haproxy.pem
  • No arquivo de configuração informar o parâmetro ssl crt e o caminho do arquivo que contem certificado e chave privada
  • Para forçar a utilização do SSL devemos utilizar o parâmetro redirect scheme https if !{ ssl_fc }, abaixo temos um exemplo de arquivo de configuração do HAProxy
########## BALANCEAMWENTO DO FRONTEND DO THEHIVE ##############################################

frontend thehive
#Porta HTTP que o HAProxy vai escutar
        bind *:80
# Porta SSL que o HAProxy vai escutar
        bind *:443 ssl crt /etc/haproxy/certificado/haproxy.pem
# Para redirecionar automaticamente para https
        redirect scheme https if !{ ssl_fc }
# Nome do backend que o HAProxy vai redirecionar as conexões
        default_backend thehive
# Encaminhar o IP que fez a requisição para os serviodres de backend
        option forwardfor

backend thehive
# Tipo de balanceamento 
        balance roundrobin
# Utilizando o healthcheck layer 7
        option httpchk GET /index.html HTTP/1.1\r\nHost:localhost
# Persistencia de sessão
        cookie BACKENDUSED insert indirect  nocache
# Servidores que estão por tras do balanceador
        server thehive-1 192.168.64.138:9000 check inter 10s downinter 2m fall 2 rise 5 cookie TH1
        server thehive-2 192.168.64.139:9000 check inter 10s downinter 2m fall 2 rise 5 cookie TH2
##############################################################################################

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *