Openssl aggiungendo un numero di telefono o un numero di cellulare al distinto_name

3

Nel file openssl.cnf, vedo campi come countryName, stateOrProvinceName etc che sono tipicamente presenti nel distinguished_name. Dove posso ottenere un elenco di campi che possono essere aggiunti al distinguished_name?

Voglio aggiungere un numero (cellulare) mobile al distinto_name. Come faccio a fare questo?

Ho provato ad aggiungere cose come telephoneName, telephone_default, telephone_min, telephone_max a distinguished_name in openssl.cnf ma openssl sembra ignorarlo.

    
posta user93353 20.01.2015 - 13:16
fonte

1 risposta

6

telephoneNumber è ciò che stai cercando.

Aggiungi quanto segue a openssl.cnf; Ho usato la versione del sistema Ubuntu 14 per iniziare, i nomi delle sezioni possono variare a seconda della distribuzione:

Nelle sezioni policy_match e policy_anything (probabilmente policy_ * in qualunque openssl.cnf stai usando come modello):

telephoneNumber         = optional

Nella sezione req_distinguished_name:

telephoneNumber                 = Telephone Number
telephoneNumber_min             = 11
telephoneNumber_max             = 40

Quindi generare una chiave e una CSR come di consueto. I prompt interattivi ora includono un numero di telefono:

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) [AU]:US
State or Province Name (full name) [Some-State]:Massachusetts
Locality Name (eg, city) []:Boston
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:www.example.com
Email Address []:[email protected]
Telephone Number []:617-555-1234

E puoi verificare che il numero di telefono lo faccia nel certificato:

$ openssl x509 -in certificate.crt -text -noout | grep Subject:
Subject: C=US, ST=Massachusetts, L=Boston, O=Internet Widgits Pty Ltd, CN=www.example.com/[email protected]/telephoneNumber=617-555-1234
$

Alcuni riferimenti su come ho capito:

RFC 5280 dice che

Standard sets of attributes have been defined in the X.500 series of specifications [X.520].

Un po 'di googling mi ha portato a Norme di denominazione e strutturazione per X.500 (RFC 1617) che ha sezione "4.4.7 Attributi Telecom". Non ci sono molte informazioni lì, ma lo stato numero di telefono. Così ho cercato su Google insieme a openssl.cnf e ho trovato un esempio di file openssl.cnf che incorpora il numero di telefono . Da lì è stato semplice testare i parametri necessari sul mio sistema.

Infine, sapendo che PhoneNumber è una cosa valida, è stato possibile a Google "site: openssl.org telephoneNumber" e codice sorgente per obj_mac.h ha quello insieme a facsimileTelephoneNumber, homeTelephoneNumber, mobileTelephoneNumber e pagerTelephoneNumber. (Personalmente, penso che se stai inserendo solo un numero, dovresti essere generale ("telephoneNumber") piuttosto che pedante ("mobileTelephoneNumber"), quindi è quello che ho usato sopra).

    
risposta data 20.01.2015 - 13:47
fonte

Leggi altre domande sui tag