Gostaria de utilizar o grampeamento OCSP para certificados SSL em meus servidores Linux que executam o Apache httpd e o Nginx. Tanto o Nginx quanto o Apache, por padrão, querem acessar diretamente o respondente do OCSP.
No entanto, meus servidores estão localizados atrás de um balanceador de carga usando o retorno direto do servidor / roteamento direto, então meus hosts têm um endereço IP público configurado e recebem e respondem ao tráfego de entrada nesses IPs públicos, mas meus servidores não podem usar esses endereços públicos IPs para conexões novas e originárias. Os servidores estão sendo executados em uma rede privada (espaço IP não público) e não têm acesso à Internet pública via NAT, mas por meio de um proxy HTTP.
De uma perspectiva de segurança, isso está perfeitamente bem. Eu não quero introduzir NAT na rede apenas por causa do grampeamento OCSP e estou perfeitamente bem para usar um proxy HTTP para solicitações OCSP (que são HTTP de qualquer maneira).
A "melhor" solução para mim é simplesmente onde configurar o Apache / Nginx para usar o proxy HTTP para acessar os respondentes do OCSP - mas, até onde eu vejo, não há opção para isso.
As opções mais próximas que encontrei são
- use o SSLStaplingForceURL do Apache (que simplesmente sobrescreve o ponto de extremidade A50 x509) com um proxy reverso, que por sua vez tem acesso público à Internet. O trabalho do proxy reverso é reescrever o cabeçalho do host e a porta com o respondente OCSP real e se conectar a esse.
- use uma regra iptables local para o tráfego originado localmente no NAT, voltado para o respondente do OCSP ao meu proxy HTTP local. Para combater um possível endereço IP de um respondente do OCSP, também adicionarei uma entrada estática (falsa) em / etc / hosts.
Todas essas opções não parecem muito boas para mim e têm desvantagens severas (o netfilter-NAT é baseado em IP; sempre que o IP de destino do respondedor ocsp muda, eu terei que ajustar minhas regras) - eu perder mais alternativas razoáveis ou as opções de configuração "certas" no Apache ou no Nginx?