Estou executando alguns sites diferentes em meu servidor.
- uma página da web geral usando Apache (porta 80)
- Console da Web do Cockpit (porta 9090)
- Assistente Doméstico (porta 8123)
- um sistema de banco de dados de código aberto chamado Teable (porta 3000)
Usei o Certbot para criar um certificado para o site principal e, em seguida, copiei os arquivos do certificado de /etc/letsencrypt/live/<my domain> para locais onde o HA e o Cockpit pudessem usá-los. Infelizmente, não sei muito sobre o funcionamento interno do Teable, então não sei como colocá-lo em HTTPS.
Eu queria saber se havia algum tipo de solução para configurar a segurança HTTPS fora do Teable, já que não sei como colocá-la atrás do HTTPS por dentro.
Meu servidor está executando o Ubuntu 22.04.4 LTS. Apache e Cockpit são pacotes no servidor principal, Home Assistant e Teable são contêineres Docker.
Você está procurando um proxy reverso - ou seja: um servidor que aceitará conexões do populus geral e as encaminhará para um servidor diferente com base nos parâmetros da solicitação - como nome do host, caminho e outras propriedades.
Este serviço de proxy reverso escuta nas portas padrão (porta 80 para HTTP e 443 para HTTPS) e encerra a conexão segura em nome dos outros serviços por trás dela. A conexão do proxy reverso ao serviço por trás pode ser HTTP simples (ideal para sua situação) ou HTTPS, se necessário. Muitas das ofertas também são capazes de automatizar o provisionamento e a rotação de certificados automaticamente (embora geralmente você precise que o servidor esteja acessível pela Internet para fornecer prova de controle), além de descobrir automaticamente os serviços internos.
Usei o diagrama de visão geral do Traefik aqui, porque ele faz um bom trabalho ao visualizar a função de um proxy reverso.
Existem algumas opções que vêm à mente e muitas outras que não estão listadas aqui.