Como configurar um certificado CA SSL em Haproxy
- 4215
- 555
- Mrs. Willie Beahan
O Haproxy é um proxy reverso reverso de alto desempenho e utilizado, que oferece capacidades de alta disponibilidade e balanceamento de carga para aplicativos TCP e HTTP. Por padrão, é compilado com OpenSSL, Assim, apoiando Ssl Rescisão, permitindo seu site/pilha de aplicativos para criptografar e descriptografar o tráfego entre o seu "servidor de entrada da web" ou o servidor de gateway de acesso ao aplicativo e aplicativos de cliente.
Este guia mostra como configurar um CA SSL certificado em HOPORXY. Este guia assume que você já recebeu seu certificado da CA e está pronto para instalar e configurá -lo em um servidor Haproxy.
Os arquivos esperados são:
- O próprio certificado.
- Os certificados intermediários também chamavam pacotes ou correntes, e.
- A raiz ca, se disponível, e.
- A chave privada.
Crie um arquivo de certificado SSL formatado por PEM
Antes de configurar o seu Ca certificado em Haproxy, você precisa entender isso Haproxy requer um único .PEM
Arquivo que deve conter o conteúdo de todos os arquivos acima, concatenados na seguinte ordem:
- A chave privada que termina com
.chave
, (pode vir no início ou no final do arquivo). - Seguido pelo certificado SSL (geralmente termina com
.Crt
). - Então o Ca-Bundle (geralmente termina com
.Ca-Bundle
), e - A raiz ca, se disponível.
Para criar o .PEM
Arquivo, mova -se para o diretório que possui seus arquivos de certificado e.g ~/Downloads, Em seguida, execute o comando CAT como este (substitua os nomes dos arquivos de acordo):
$ CAT Exemplo.com.key star_example_com/star_example_com.CRT Star_example_com/star_example_com.Ca-Brendle> Exemplo.com.PEM
Configurar o certificado PEM SSL em Haproxy
Em seguida, envie o recém -criado .PEM
arquivo de certificado para o Haproxy servidor usando o comando scp como mostrado (substitua sysadmin e 192.168.10.24 com o nome de usuário do servidor remoto e o endereço IP, respectivamente):
$ SCP Exemplo.com.PEM [email protegido]:/home/sysadmin/
Em seguida, crie um diretório onde o certificado .PEM
O arquivo será armazenado usando o mkdir Comando e copie o arquivo para ele:
$ sudo mkdir -p/etc/ssl/exemplo.Exemplo de com/ $ sudo cp.com.PEM/etc/ssl/exemplo.coma
Em seguida, abra seu Haproxy Arquivo de configuração e configure o certificado na seção do ouvinte do front -end, usando os parâmetros SSL e CRT: o primeiro permite a terminação SSL e o último especifica a localização do arquivo de certificado.
Frontend HTTP_FRONTEND Modo HTTP Bind *: 80 Bind *: 443 SSL CRT/etc/SSL/Exemplo.com/exemplo.com.PEM ALPN H2, HTTP/1.1 Esquema de redirecionamento Código HTTPS 301 se !ssl_fc default_backend http_servers
Certas versões de SSL/TLS não são recomendados para uso agora por causa de vulnerabilidades que foram descobertas nelas. Para limitar a versão suportada de Ssl, você pode adicionar o ssl-min-ver parâmetro como este:
Bind *: 443 SSL CRT/etc/SSL/Exemplo.com/exemplo.com.PEM ALPN H2, HTTP/1.1 ssl-min-vers tlsv1.2
Configurar o Haproxy para redirecionar http para https
Para garantir que seu site seja acessível apenas via Https, você precisa permitir que o Haproxy redirecione tudo Http tráfego para Https Caso um usuário tenta acessá -lo sobre HTTP (porta 80).
Adicione a seguinte linha à configuração acima:
Esquema de redirecionamento Código HTTPS 301 se !SSL_FC ou HTTP-REQUEST Esquema de redirecionamento https, a menos que ssl_fc
Sua seção de front -end agora deve se parecer com a da configuração de amostra:
Frontend HTTP_FRONTEND Modo HTTP Bind *: 80 Bind *: 443 SSL CRT/etc/SSL/Exemplo.com/exemplo.com.PEM ALPN H2, HTTP/1.1 ssl-min-vers tlsv1.2 Esquema de redirecionamento Código HTTPS 301 se !ssl_fc default_backend http_servers back-end http_servers Modo http balance redondrobin opção httpchk cabeça / http-response set hateler x-frame-options-options sameorigin http-resposta set-renseSenseSt XSS-PROTECTIONS 1; -Content-Type-Options NoSniff padrão-servidor Verifique MaxConn 5000 Server http_server1 10.2.1.55:80
Salve o arquivo de configuração e feche -o.
Em seguida, verifique se sua sintaxe está correta usando o seguinte comando:
$ sudo haproxy -f/etc/haproxy/haproxy.CFG -CVerifique a configuração do Haproxy
Se o arquivo de configuração for válido, vá em frente e recarregue o serviço Haproxy para obter as recentes alterações na configuração, usando o comando SystemCTL:
$ sudo systemctl recarregar haproxy
Por último, mas não menos importante, teste toda a configuração acessando seu site a partir de um navegador da web e verifique se o certificado está carregando bem e o navegador indica que o “A conexão é segura”!
Verifique o site da HaproxyIsso é tudo! Esperamos que este guia tenha ajudado você a configurar um certificado SSL em software de balanceador de carga Haproxy. Se você encontrar algum erro, informe -nos através do formulário de feedback abaixo. Teremos prazer em ajudá-lo.
- « Instalação do Manjaro 21 (XFCE Edition) Desktop
- 30 maneiras de validar arquivos de configuração ou scripts no Linux »