Estoy desarrollando un servicio para un cliente que, en función de sus necesidades, debe tener autenticación basada en certificados de cliente .
Me enviaron 2 archivos, uno es el certificado que enviarán en la solicitud en formato .cer
y el otro es un archivo ROOT CA también en formato .cer
. Aquí están los nombres de los archivos:
-
CERT.cer
-
CA_ROOT.cer
Estoy intentando configurar el acceso usando nginx
. Aquí está mi configuración:
server {
listen 443;
server_name example.com;
# SSL client certificate configuration
ssl_client_certificate /etc/nginx/certs/CERT.cer;
ssl_verify_client on;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
# serve assets or request page from proxy (if asset not found)
location / {
try_files $uri @proxy;
}
# the play web server
location @proxy {
proxy_pass http://localhost:9000;
proxy_redirect off;
proxy_buffering off;
}
}
Aunque no sé cómo probar esto sin la clave privada. Si tuviera la clave privada podría hacer algo como esto:
curl -v -s -k --key private.key --cert CERT.cer https://example.com
¿Es incluso posible hacer esto sin el archivo de clave privada? (que no tengo)
También, avíseme si estoy haciendo algo que no debería, ya que de ninguna manera soy un experto en el tema de seguridad