Apache Proxy - falha na Autenticação SSL no back-end do proxy (lado do cliente)

1

Estou executando o Apache 2.2.11 configurado como um proxy reverso. A "frente" do proxy funciona bem, assim como o back end até que habilitemos a autenticação baseada em certificado SSL no lado de trás (cliente) do proxy.

Meu arquivo conf HTTPD contém:

SSLProxyMachineCertificateFile /opt/apache/sfdc/myauth/myauth

De acordo com a documentação, combinei a chave e o certificado no arquivo "myauth". Estou usando o mesmo certificado e chave usados para proteger a conexão HTTPS na parte frontal do proxy. Este foi concatenado cat ../server.key ../server.pem > > myauth

A chave privada não é protegida por senha.

Meu log do Apache indica:

[debug] ssl_engine_kernel.c(1526): Proxy client certificate callback: (obsucredhostname.com:8010) entered
[debug] ssl_engine_kernel.c(1571): Proxy client certificate callback: (obsucredhostname.com:8010) no client certificate found!?

É possível usar o mesmo par de chaves de certificado usado para proteger o SSL do front end? Meu front-end é garantido pelo serviço de assinatura do godaddys. Ou sou obrigado a usar um par separado e exclusivo?

    
por user176514 18.06.2013 / 18:19

1 resposta

1

Quando você se conecta a um servidor (o back end) que exige autenticação de certificado de cliente, o servidor fornecerá ao cliente (seu proxy Apache) uma lista de nomes de CA aceitáveis com os quais o certificado de cliente pode ser assinado. Ou seja, uma lista de CAs nas quais o servidor confia para assinar certs do cliente.

Eu suspeito que o problema aqui é que seu SSLProxyMachineCertificateFile não está assinado por uma CA aceitável para o servidor. Você pode verificar os nomes de CA aceitáveis para o servidor usando o openssl.

openssl s_client -cert certfile -CAfile certfile -connect host:port

Há um pouco mais de informação sobre o problema no bugzilla do Apache aqui , incluindo um patch isso pode ajudar se você não tiver acesso à configuração do servidor backend.

    
por 19.06.2013 / 11:18