Documentazione sull’utilizzo di OpenSSL
OpenSSL è un potente toolkit open source utilizzato per implementare comunicazioni sicure. Offre funzionalità di crittografia, decrittografia e supporto ai protocolli SSL/TLS. ServBay include OpenSSL già preinstallato: in questo articolo vengono presentati in dettaglio i metodi di installazione, configurazione e utilizzo di OpenSSL.
Installazione e configurazione
Installazione
OpenSSL è già incluso in ServBay dalla fabbrica, quindi non è necessario installarlo separatamente.
Configurazione
Il file di configurazione di OpenSSL si trova di solito nella cartella /Applications/ServBay/package/common/openssl/3.2
(per i chip Intel, in /Applications/ServBay/package/common/openssl/1.1.1u
). Il file di configurazione predefinito è openssl.cnf
. Puoi modificare questo file secondo le tue esigenze per regolare il comportamento di OpenSSL.
Esempio di file di configurazione:
[ req ]
default_bits = 2048
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_default = US
stateOrProvinceName = State or Province Name (full name)
localityName = Locality Name (eg, city)
0.organizationName = Organization Name (eg, company)
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, fully qualified host name)
commonName_max = 64
[ req_attributes ]
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Utilizzo di base
OpenSSL mette a disposizione numerosi strumenti a riga di comando per attività di crittografia e gestione dei certificati. Di seguito alcuni esempi di utilizzo base:
Generazione di chiavi private e pubbliche
Generare una chiave privata RSA
openssl genpkey -algorithm RSA -out private_key.pem
Generare una chiave pubblica dalla chiave privata
openssl rsa -pubout -in private_key.pem -out public_key.pem
Generare una richiesta di firma del certificato (CSR)
Generare una CSR
openssl req -new -key private_key.pem -out request.csr
Certificato autofirmato
Generare un certificato autofirmato
openssl req -x509 -days 365 -key private_key.pem -in request.csr -out certificate.crt
Gestione dei certificati
Visualizzare le informazioni di un certificato
Visualizzare le informazioni di una CSR
openssl req -text -noout -verify -in request.csr
Visualizzare le informazioni di un certificato
openssl x509 -text -noout -in certificate.crt
Conversione dei formati di certificato
Da PEM a DER
openssl x509 -outform der -in certificate.pem -out certificate.der
Da DER a PEM
openssl x509 -inform der -in certificate.der -out certificate.pem
Crittografia e decrittografia
Crittografia simmetrica
Cifrare un file con AES
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt
Decifrare un file con AES
openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt
Crittografia asimmetrica
Cifrare un file con una chiave pubblica
openssl rsautl -encrypt -inkey public_key.pem -pubin -in plaintext.txt -out encrypted.txt
Decifrare un file con una chiave privata
openssl rsautl -decrypt -inkey private_key.pem -in encrypted.txt -out decrypted.txt
Domande frequenti
1. Il comando OpenSSL non funziona
- Soluzione: assicurati che le variabili d’ambiente di ServBay siano state impostate correttamente. Se il problema persiste, prova ad aprire la sezione “Impostazioni” di ServBay, quindi “Strumenti da riga di comando” ed effettua la configurazione sia per
zsh
sia perbash
, poi riapri il terminale.
2. Il certificato generato non è valido
- Soluzione: verifica che le informazioni inserite nella richiesta di certificato (CSR) e nel file di configurazione siano corrette. Assicurati che tutti i campi obbligatori siano compilati.
3. Errore nella crittografia o decrittografia
- Soluzione: assicurati che la chiave e l’algoritmo utilizzati siano corretti e compatibili. Controlla la correttezza dei percorsi ai file di input e output.
Conclusione
OpenSSL è un toolkit potente e flessibile, adatto a svariate esigenze di comunicazione sicura e crittografia. Grazie a questa guida, puoi installare, configurare e utilizzare OpenSSL in ServBay per la gestione dei certificati e la cifratura dei dati.