Configuração HTTPS
Local de Configuração:
As configurações do Jetty devem ser realizadas no arquivo config.ini do ambiente.
HTTPS (HyperText Transfer Protocol Secure) é a versão segura do protocolo HTTP. Ele utiliza o protocolo TLS (Transport Layer Security) para criptografar a comunicação entre o cliente e o servidor, garantindo a integridade e confidencialidade dos dados.
Parâmetros de Configuração
Os parâmetros abaixo controlam o comportamento do conector seguro do servidor.
| Parâmetro | Descrição | Padrão |
|---|---|---|
https.port | Porta para conexões HTTPS. Se definida como 0, o HTTPS é desabilitado. | 0 (Desabilitado) |
https.address | Interface de rede (IP) para escuta HTTPS. | * (Todas) |
https.keystore | Caminho para o arquivo da Keystore (JKS ou PKCS12). | null (Usa interno) |
https.keystore.type | Tipo do arquivo de keystore. | JKS |
https.keystore.password | Senha da keystore. | null |
https.sni.check | Habilita a verificação de SNI (Server Name Indication). | true |
Nota sobre Certificado Interno:
Se https.keystore não for especificado, o framework utilizará um certificado autoassinado interno. Isto é útil para desenvolvimento, masnão deve ser usado em produção, pois navegadores exibirão alertas de segurança.
Cenários de Configuração
Abaixo estão exemplos comuns de como configurar o servidor para diferentes requisitos de rede.
1. HTTPS Habilitado com HTTP Apenas Local
Neste cenário, o servidor aceita conexões HTTPS de qualquer interface (Internet/Intranet), mas o HTTP convencional fica restrito à própria máquina (127.0.0.1). Isso é comum quando existe um Proxy Reverso (como Nginx ou Apache) na mesma máquina fazendo o offload de SSL.
# Restringe HTTP ao localhost
http.port=4280
http.address=127.0.0.1
# Habilita HTTPS para todas as interfaces
https.port=4443
https.address=0.0.0.0
https.keystore=/etc/certs/meu_servidor.jks
https.keystore.password=minha_senha
2. HTTPS Total (HTTP Desabilitado)
Para máxima segurança, você pode desabilitar completamente o conector HTTP, forçando toda a comunicação a passar pelo canal criptografado.
# Desabilita o conector HTTP
http.port=0
# Configura HTTPS na porta padrão
https.port=443
https.keystore=/etc/certs/producao.p12
https.keystore.type=PKCS12
https.keystore.password=senha_forte
Dica:
Ao desabilitar o HTTP (http.port=0), certifique-se de que todos os clientes que consomem suas APIs já estão configurados para usar a URL https://.