Cerca

Creazione di un certificato X509 autofirmato da una CA autogenerata

Predisponiamo delle cartelle sul server dove salvare tutti i file

mkdir /opt/ssl-app mkdir /opt/ssl-app/CA/ mkdir /opt/ssl-app/server/

Creiamo la chiave privata per la CA assegnando una password, "pwd12345"

cd /opt/ssl-app/CA/
openssl genrsa -des3 -out ca.server.it.key 2048

Creiamo certificato, per la CA indicando su Organization Name e Common Name "CA-SERVER1"

openssl req -x509 -new -nodes -key ca.server.it.key -sha256 -days 1095 -out ca.server.it.crt

​ Country Name (2 letter code) [AU]:IT ​ State or Province Name (full name) [Some-State]:ITALIA ​ Locality Name (eg, city) []: ​ Organization Name (eg, company) [Internet Widgits Pty Ltd]:CA-SERVER1 ​ Organizational Unit Name (eg, section) []:CA-SERVER1 ​ Common Name (e.g. server FQDN or YOUR name) []:CA-SERVER1 ​ Email Address []:

Creiamo la chiave privata per il server senza password

cd /opt/ssl-app/server/
openssl genrsa -out server.it.key 2048

Creiamo i file di richiesta firma certificato (ovvero richiediamo alla CA di firmare la private key del server):

openssl req -new -key server.it.key -out server.it.csr

​ Country Name (2 letter code) [AU]:IT ​ State or Province Name (full name) [Some-State]:ITALIA ​ Locality Name (eg, city) []: ​ Organization Name (eg, company) [Internet Widgits Pty Ltd]:SERVER1 ​ Organizational Unit Name (eg, section) []:SERVER1 ​ Common Name (e.g. server FQDN or YOUR name) []:SERVER1 ​ Email Address []:

​ Please enter the following 'extra' attributes ​ to be sent with your certificate request ​ A challenge password []: ​ An optional company name []:

Firmiamo la richiesta di certificato con la chiave privata e pubblica della CA (verrà richiesta la password della chiave private della CA

openssl x509 -req -in server.it.csr -CA ../CA/ca.server.it.crt -CAkey ../CA/ca.server.it.key -CAcreateserial -out server.it.crt -days 1095 -sha256

Alla fine avremo:

/opt/server/server.it.crt Certificato di richiesta di firma alla CA /opt/server/server.it.csr Certificato pubblico del server /opt/server/server.it.key Certificato privato del server

/opt/CA/ca.server.it.crt Certificato pubblico della CA /opt/CA/ca.server.it.key Certificato privato della CA

Indietro