GNU/Linux >> Tutoriales Linux >  >> Linux

Uso del certificado de cliente en el comando Curl

Así es como lo hice:

curl -v \
  --key ./admin-key.pem \
  --cert ./admin.pem \
  https://xxxx/api/v1/

Los certificados de cliente TLS no se envían en encabezados HTTP. Son transmitidos por el cliente como parte del TLS handshake y, por lo general, el servidor también verificará la validez del certificado durante el protocolo de enlace.

Si se acepta el certificado, la mayoría de los servidores web se pueden configurar para agregar encabezados para transmitir el certificado o la información contenida en el certificado a la aplicación. Las variables de entorno se completan con información de certificado en Apache y Nginx, que se pueden usar en otras directivas para establecer encabezados.

Como ejemplo de este enfoque, el siguiente fragmento de configuración de Nginx validará un certificado de cliente y luego establecerá el SSL_CLIENT_CERT encabezado para pasar el certificado completo a la aplicación. Esto solo establecerse cuando el certificado se haya validado correctamente, de modo que la aplicación pueda analizar el certificado y confiar en la información que contiene.

server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/chainedcert.pem;  # server certificate
    ssl_certificate_key /path/to/key;          # server key

    ssl_client_certificate /path/to/ca.pem;    # client CA
    ssl_verify_client on;
    proxy_set_header SSL_CLIENT_CERT $ssl_client_cert;

    location / {
        proxy_pass http://localhost:3000;
    }
}

Linux
  1. Cómo convertir un archivo PPK a PEM usando Comando

  2. Usando el comando ripgrep (rg) en Linux

  3. Mover una carpeta en Linux usando el comando mv

  4. Usando curl para enviar correo electrónico

  5. Uso de variables de entorno en el comando cURL - Unix

Ejemplos de comandos curl de Linux – Parte 1

Comando Curl en Linux con ejemplos

El comando curl de Linux

Usando el comando Watch en Linux

Comando CURL Linux:Aprendiendo con el ejemplo

Usando cut en Linux Terminal