Requisitos para redirecionamento entre dois domínios com https com proprietários diferentes

Requisitos para redirecionamento entre dois domínios com https com proprietários diferentes

Recentemente comecei a trabalhar como engenheiro de sistemas. No entanto, ainda faltam alguns princípios básicos, especificamente em relação aos certificados SSL/TLS e sua relação com o DNS.

Aqui está o caso de uso:

  • Uma empresa com a qual negociamos possui seu próprio site e domínios, com seus próprios certificados SSL. Chamaremos o domínio que desejo usar aquidados.exemplo.com
  • Hospedamos nosso próprio site e domínios, com nossos próprios certificados SSL. Chamaremos nosso domínio que desejo usar aquinossosdados.ourexample.com
  • O que a empresa com quem trabalhamos quer é que quando você forhttps://data.example.com, você realmente obtém o conteúdo dehttps://ourdata.ourexample.com

Para isso, entendo que existem duas possibilidades:

  1. (bem claro para mim) Crie um redirecionamento no nível do servidor web via nginx/apache: isso implica que ambos os domínios ainda têm seus próprios certificados SSL, mas é apenas uma questão de escrever algumas linhas em um arquivo de configuração, nada a ver com qualquer configuração de DNS.
  2. (é aqui que começa a ficar complicado para mim) Peça à empresa com quem negociamos que nos forneça informações de RSE (https://en.wikipedia.org/wiki/Certificate_signing_request) para que possamos gerar um arquivo CSR... a partir da chave privada que usamos para gerar nossos próprios certificados SSL...? Depois entregamos o CSR e eles pagam pelo seu próprio certificado SSL. Eles podem então criar um novo CNAME que redirecionarádados.exemplo.com.paraourdata.ourexample.com.. O que me disseram é que o CSR é uma espécie de chave pública, e é por isso que podemos facilmente entregá-lo a outra pessoa. Mas mesmo que esta descrição descreva corretamente o processo, estou honestamente perdido quanto ao que acontece, onde e por que isso é feito.

Finalmente, algo que notei no caso em que o CSR foi gerado do nosso lado e o CNAME foi criado é que quando vamos parahttps://data.example.com, vemos o conteúdo dehttps://ourdata.ourexample.come o URL mostrado no navegador permanecehttps://data.example.com. Não tenho certeza se isso está relacionado a alguma configuração do servidor web ou às "configurações" de DNS.

Espero que o que descrevi esteja um tanto claro. Caso contrário, avise-me e tentarei fornecer mais detalhes.

Nota: já tentei encontrar algumas respostas para isso, mas embora tenha entendido algumas coisas aqui e ali, ainda não está 100% claro.

Obrigado, SilentSib

Responder1

Presumo data.example.comque será hospedado emseuinstalações e example.comnão quer que seus clientes vejam que você está prestando os serviços.

Se for esse o caso, você só precisa de dois Apachehosts virtuaisou dois nginxServidores virtuaisque estão configurados para servir o mesmo conteúdo.

E os certificados? Não é muito complicado se você entender os conceitos decriptografia de chave pública.

Basicamente (em um dos algoritmos mais implantados,RSA), você tem duas chaves Ae B. Os dados criptografados com Asó podem ser descriptografados com B( Anão é possível descriptografá-los) e vice-versa. Você distribui um deles e ligachave pública, o outro é mantido em segredo e chamadochave privada. A chave pública é usada para criptografar dados que somente você pode descriptografar, a chave privada também pode ser usada para assinatura: criptografando uma sequência de bytes pré-acordada (o hash de uma mensagem, por exemplo) com a chave privada, todos os outros podem descriptografá-la e verifique se você possui a chave privada.

As outras partes doinfraestrutura de chave públicasão:

  • certificados: um arquivo contendo sua chave pública, seu nome de domínio e alguns outros dados, assinado por um confiávelchave privada(cuja chave pública é distribuída e confiável por todos os navegadores). Apenas onome do domínioestá no certificado, e não em quaisquer outros dados DNS(bem, você pode pedir para adicionar seu endereço IP ao certificado, se desejar), para que não precise alterá-los quando algo mudar.
  • CSR: quase o mesmo que um certificado. Ele contém sua chave pública, seu nome de domínio e alguns outros dados, assinados por seuchave privada(para mostrar que você tem a chave). Praticamente as Autoridades de Certificação usam apenas a chave pública do CSR e às vezes o nome de domínio (se não o obtiverem de um formulário HTML).

As chaves privadas são baratas (alguns segundos para serem geradas em um servidor ocupado). É muito improvável que o seu cliente use a mesma chave privada para data.example.come example.com(a menos que tenham ambos os nomes no mesmo certificado). Então:

  • Se o seu cliente já possui um certificado para data.example.com, peça que lhe enviem o certificado e a chave privada correspondente (de forma segura). Eles não os usarão mais,
  • Se o seu cliente não tiver um certificado para data.example.com, gere umnovochave privada e certifique-a.Nãouse a chave privada para seus outros domínios. Normalmente gera-se uma nova chave privada, mesmo na renovação de um certificado. Se você colocar ourdata.example.neto mesmo certificado, todos verão quem está prestando data.example.comserviços.
  • Você também pode usarVamos criptografarse o seu cliente concordar com os termos. Desta forma você pode ter um certificado válido em questão de segundos e sem custos adicionais.

informação relacionada