Dimarts, febrer 10, 2026
SEGURETAT

Generar un CSR per un certificat multi-SAN amb OpenSSL

Introducció

La creació d’un fitxer csr per un certificat multi-domini amb vàries SAN (Subject Alternative Name) és diferent a la d’un amb un únic domini.  Hem de fer ser servir un fitxer de configuració, on hi haurà les SANS addicionals.

Crear el fitxer de configuració amb els dominis addicionals

Hem de crear un fitxer .conf allà on vulguem, amb la següent informació:

[ req ]
default_bits       = 2048
distinguished_name = req_distinguished_name
req_extensions     = req_ext
[ req_distinguished_name ]
countryName         = Country Name (2 letter code)
stateOrProvinceName = State or Province Name (full name)
localityName        = Locality Name (eg, city)
organizationName    = Organization Name (eg, company)
organizationalUnitName = Organizational Unit Name (eg, section)
commonName          = Common Name (e.g. server FQDN or YOUR name)
emailAddress        = Email Address
[ req_ext ]
subjectAltName = @alt_names
[alt_names]
DNS.1 = primersan.elquesigui
DNS.2 = segonsan.elquesigui
DNS.3 = tercersan.elquesigui
default_bits       = 2048

Podem afegir tants SAN com vulguem, respectant el format “DNS.<número> = <nom del domini>”.

Crear la sol·licitud CSR

A la línia de comandes escriurem:

openssl req -new -nodes -sha256 -out larutaielnomquevulguem.csr -config larutaielnomdelfitxerdeconfiguracio.cnf -keyout larutaielnomquevulguem.key

Se’ns preguntarà tota una sèrie de paràmetres necessaris per la creació del CSR:

Generating a RSA private key
...........................+++++
.........................................................+++++
writing new private key to ' larutaielnomquevulguem.key '
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) []:XX
State or Province Name (full name) []:xxx
Locality Name (eg, city) []:xxx
Organization Name (eg, company) []:xxx
Organizational Unit Name (eg, section) []:xxx
Common Name (e.g. server FQDN or YOUR name) []:xxx
Email Address []:xxx@xxx

Un cop introduïdes totes aquestes dades, es generarà el fitxer CSR a la ruta que haguem indicat.

Verificar CSR

Podem verificar el CSR amb la comanda:

openssl req -noout -text -verify -in larutaielnomquevulguem.csr

La sortida serà similar a això:

verify OK
Certificate Request:
    Data:
        Version: 1 (0x0)
        Subject: C = XX, ST = xxx, L = xxx, O = xxx, OU = xxx, CN = xxx, emailAddress = xxx@xxx
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                RSA Public-Key: (2048 bit)
                Modulus:
                    00:00:00:00:00:00:00:00:00:00:00:00:00:00:
                    ... (una seqüència llarga de parells hexadecimals)                    
                    00:00
                Exponent: 65537 (0x10001)
        Attributes:
        Requested Extensions:
            X509v3 Subject Alternative Name:
                DNS: primersan.elquesigui, DNS: segonsan.elquesigui, DNS: tercersan.elquesigui
    Signature Algorithm: sha256WithRSAEncryption
         00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:
         ... (una altra seqüència llarga de parells hexadecimals)
         00:00:00:00

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *