Configuração SSL
Ativar ssl
O SSL pode ser ativado editando o ficheiro cycle_server.properties encontrado dentro do diretório de instalações do CycleCloud. Abra o ficheiro cycle_server.properties com um editor de texto e desabrocha adequadamente os seguintes valores:
# True if SSL is enabled
webServerEnableHttps=true
webServerRedirectHttp=true
Importante
Por favor, note que ao editar o ficheiro cycle_server.properties , é importante que procure pela primeira vez definições de valor de chave pré-existentes no ficheiro. Se houver mais de uma definição, a última está em vigor.
A porta SSL predefinida para CycleCloud é a porta 8443. Se quiser executar comunicações web encriptadas em outra porta, pode alterar a webServerSslPort
propriedade para o novo valor da porta. Certifique-se de que os webServerSslPort
valores e os webServerPort
valores NÃO ENTRAM EM CONFLITO.
Depois de editar o seu ficheiro cycle_server.properties , terá de reiniciar o CycleCloud para que o canal de comunicação encriptado seja ativado:
/opt/cycle_server/cycle_server restart
Assumindo que não alterou a porta SSL para o CycleCloud ao configurar para comunicações encriptadas, pode agora ir verificar http://<my CycleCloud address>:8443/
a ligação SSL.
Nota
Se o URL HTTPS não funcionar, verifique o <CycleCloud Home>/logs/catalina.err e <CycleCloud Home>/logs/cycle_server.log para obter mensagens de erro que possam indicar por que razão o canal encriptado não responde.
Certificados Self-Generated
Se não tiver um certificado de uma Autoridade de Certificados (CA) como a VeriSign, pode utilizar o certificado auto-assinado auto-assinado fornecido com a Azure CycleCloud. Esta é uma forma rápida de começar a usar SSL sem custos, mas a maioria dos navegadores da Web apresentará um aviso indicando que uma autoridade de confiança não verificou o certificado que está sendo usado para encriptar o canal. Em alguns casos, como implementações internas do CycleCloud em redes seguras, isso é aceitável. Os utilizadores terão de adicionar uma exceção ao seu navegador para visualizar o site, mas o conteúdo e a sessão serão encriptados como esperado.
Aviso
O certificado auto-assinado Azure CycleCloud tem uma vida útil reduzida. Quando expirar, os navegadores voltarão a emitir o aviso sobre os certificados SSL não serem fidedidos. Os utilizadores terão de os aceitar explicitamente para visualizarem a consola web.
Trabalhar com Let's Encrypt
CycleCloud suporta certificados de Let's Encrypt. Para usar O Criptografo com CycleCloud, tem de:
- ativar SSL na porta 443
- garantir que o CycleCloud é acessível publicamente sobre a porta 443 com um nome de domínio externo
Pode ativar o suporte Do 'IM's Encrypt' com a opção "SSL" na página de definições ou através da execução cycle_server keystore automatic DOMAIN_NAME
a partir da máquina CycleCloud.
Trabalhando com certificados de CA-Generated
A utilização de um certificado gerado pela AC permitirá o acesso da Web à instalação do CycleCloud sem apresentar o erro de certificado fidedigno. Para iniciar o processo, primeira execução:
./cycle_server keystore create_request <FQDN>
Ser-lhe-á pedido que forneça um nome de domínio, que é o campo "Nome Comum" no certificado assinado. Isto gerará um novo certificado auto-assinado para o domínio especificado e escreverá um ficheiro cycle_server.csr. Deve fornecer a RSE a uma autoridade de certificados, e eles fornecerão o certificado assinado final (que será referido como server.crt abaixo). Também necessitará dos certificados de raiz e de quaisquer intermediários utilizados na cadeia entre o seu novo certificado e o certificado de raiz. A A.C. deve providenciar-lhe isto. Se os fornecerem agregados como um único ficheiro de certificado, pode importá-los com o seguinte comando:
./cycle_server keystore import server.crt
Se fornecerem vários ficheiros de certificados, deve importá-los todos de uma vez, anexando os nomes ao mesmo comando, separados por espaços:
./cycle_server keystore import server.crt ca_cert_chain.crt
Importar Certificados Existentes
Se tiver criado previamente um certificado ca ou auto-assinado, pode atualizar o CycleCloud para o utilizar com o seguinte comando:
./cycle_server keystore update server.crt
Se quiser importar um ficheiro PFX, pode fazê-lo com o seguinte comando no CycleCloud 7.9.7 ou posterior:
./cycle_server keystore import_pfx server.pfx --pass PASSWORD
Note que o ficheiro PFX só pode conter uma entrada.
Finalmente, se escamar as alterações na loja de chaves fora destes comandos, pode recarregar a teclas imediatamente no CycleCloud 7.9.7 ou posteriormente:
./cycle_server keystore reconfig
Configurar o CycleCloud para utilizar HTTPS Nativo
Por padrão, o Azure CycleCloud está configurado para utilizar a implementação padrão java IO HTTPS. Este padrão funciona bem em todas as plataformas suportadas.
Para melhorar o desempenho ao correr nas plataformas Linux, o CycleCloud pode ser configurado opcionalmente para utilizar a implementação do Tomcat Native HTTPS.
Para ativar HTTPS nativo no Linux, adicione os webServerEnableHttps
atributos e webServerUseNativeHttps
atributos ao seu ficheiro cycle_server.properties . Abra cycle_server.propriedades com um editor de texto e desabrote os seguintes valores:
# Turn on HTTPS
webServerEnableHttps = true
# Use Native HTTPS connector
webServerUseNativeHttps = true
Retrocompatibilidade para TLS 1.0 e 1.1
Por predefinição, os conectores JAVA e HTTPS nativos serão configurados para utilizar apenas o protocolo TLS 1.2. Se precisar de oferecer protocolos TLS 1.0 ou 1.1 para clientes web mais antigos, pode optar pela retrocompatibilidade.
Abra cycle_server.propriedades com um editor de texto e procure o sslEnabledProtocols
atributo:
sslEnabledProtocols="TLSv1.2"
Altere o atributo para uma +
lista delimitada de protocolos que deseja apoiar.
sslEnabledProtocols="TLSv1.0+TLSv1.1+TLSv1.2"
Desligar comunicações não encriptadas
A configuração acima permite que as ligações não encriptadas (HTTP) sejam feitas, mas são redirecionadas para HTTPS para segurança.
Pode desejar evitar o acesso não encriptado à sua instalação CycleCloud. Para desativar as comunicações não encriptadas, abra o ficheiro cycle_server.properties num editor de texto. Procure a webServerEnableHttp
propriedade e mude-a para:
# HTTP
webServerEnableHttp=false
Guarde as alterações e reinicie o CycleCloud. O acesso HTTP ao CycleCloud será desativado.