Posso usar mesmo certificado em 2 servidores

Tenho um domínio: teste.com (EXEMPLO).

Se estou DENTRO da rede local da empresa (intranet), ao acessar teste.com vai direto do meu computador para o servidor INTERNO na empresa.

Agora se estou EXTERNO, para acessar teste.com, passa por um proxy, com objetivo de fazer balanceamento de link. Se o link A estiver OK, o proxy me manda para o servidor lá dentro da empresa pelo link A, se ele estiver fora, manda a conexão pelo link B.

No entanto, queria deixar tudo criptografado usando certificado digital, e pelo o que identifiquei, só é válido um certificado por servidor. Ou seja, se ativar o certificado no proxy, quem vai responder para teste.com será o servidor proxy. Se eu estiver na rua tudo bem, porém quando eu estiver dentro da empresa e tentar acessar teste.com será outro servidor que irá responder, será o servidor final local na empresa e então vai acusar erro de certificado.

Quais seriam as possíveis soluções? Não acredito ser uma estrutura tão incomum.

No aguardo, obrigado.

1 Like

Olá Nicolas,

Se estou DENTRO da rede local da empresa (intranet), ao acessar teste.com vai direto do meu computador para o servidor INTERNO na empresa.

Agora se estou EXTERNO, para acessar teste.com, passa por um proxy, com objetivo de fazer balanceamento de link. Se o link A estiver OK, o proxy me manda para o servidor lá dentro da empresa pelo link A, se ele estiver fora, manda a conexão pelo link B.

Nesso caso, não entendi porque descreveu a situação como "dois servidores", ou seja, cadê o outro servidor? Aonde vai uma conexão no link B, se não para o servidor interno?

No entanto, queria deixar tudo criptografado usando certificado digital, e pelo o que identifiquei, só é válido um certificado por servidor. Ou seja, se ativar o certificado no proxy, quem vai responder para teste.com será o servidor proxy. Se eu estiver na rua tudo bem, porém quando eu estiver dentro da empresa e tentar acessar teste.com será outro servidor que irá responder, será o servidor final local na empresa e então vai acusar erro de certificado.

O mesmo certificado digital é válido num número ilimitado de servidores, se ele for instalado em cada um deles, junto com a chave privada correspondendo ao certificado. O certificado não contém nenhum tipo de identifição específica ao servidor, exceto a chave privada; quem possui essa chave está considerado autorizado a usar o certificado.

Mas existe sim a questão de onde terminar a conexão TLS. Isso depende do nível de protocolo em que opera o proxy. (Por exemplo, é um proxy TCP ou um proxy HTTP?)

1 Like

Sim, está certo, é apenas 1 servidor final, só quis especificar que há um outro servidor, que é um intermediário, para avaliar por qual link deve enviar a requisição.

Utilizo Nginx fazendo o papel de proxy HTTP, ou então no futuro, a ideia é justamente ser HTTPS.

Se for no nível TCP, não participaria da conexão TLS; nesse caso o proxy não precisaria do certificado nem da chave privada, porque repassando todos os dados no nível TCP para o outro servidor, o outro servidor fica o fim remoto da conexão segura.

Se for no nível TLS ou HTTPS, participaria sim e por isso precisaria do certificado e da chave privada, porque não pode ver o conteúdo por dentro da conexão segura, nem responder dentro dela, sem ser um dos lados da conexão.

O certificado em si é válido numa quantidade ilimitada de dispositivos, só que terá que ser presente (junto com a chave privada) e instalado em cada um deles. O certificado e a chave são arquivos que terão que ser copiados para cada dispositivo em que serão usados (bem como atualizados com os conteúdos novos sempre que for uma renovação do certificado, que resulta sempre em um certificado novo com dados atualizados).

Faz sentido? É o que queria saber? Ou tem algo que não entendi?

Tá, mas eu gero/ativo ele no servidor final (INTERNO) e então tenho que copiar ele e a chave pro proxy (EXTERNO), manualmente e sempre que ele se renovar, isso?

Sim, mas um script pode fazê-lo também. Por exemplo no Certbot temos a opção --deploy-hook, que designa um script que o Certbot executaria sempre que renovar o certificado. O script pode conter comandos para copiar os arquivos num outro ambiente.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.