Posso creare il mio certificato S / MIME per la crittografia e-mail? [chiuso]


19

Sto avendo un piccolo problema qui. Abbi pazienza perché questo potrebbe essere il caso di "non porre la domanda giusta".

Sfondo: utilizzo di Apple Mail. Vuoi crittografare / decrittografare le email ma GPGMail (e apparentemente PGP) non è supportato con Snow Leopard.

Fondamentalmente ho bisogno di creare un certificato S / MIME per l'uso nella crittografia e-mail. Non voglio, né mi interessa un'autorità di certificazione. Voglio semplicemente un certificato rapido e sporco. È anche possibile (utilizzando OPENSSL, ecc.) O l'intero processo dipende da un'autorità superiore che mi obbliga a creare una CA su vasta scala o a trattare con un'azienda (ad esempio Verisign, Thawte) per un certificato? I miei criteri sono gratificazione istantanea e gratuita.

Migliore.


1
Si noti che il certificato viene utilizzato per due scopi in S / MIME. Per firmare le tue e-mail e decrittografare le e-mail che ti sono state inviate da qualcun altro. Per crittografare le e-mail a qualcun altro, avrai bisogno del loro certificato. In genere, i client di posta elettronica sono configurati per l'attendibilità di alcune serie predeterminate di autorità di certificazione. Se i certificati non sono firmati da uno di questi, riceverai almeno un brutto messaggio e forse anche un sistema non funzionante.
James Reinstate Monica Polk,

1
So che questa è una domanda più vecchia, ma per riferimento futuro, il plugin GPGMail ora funziona su Snow Leopard gpgtools.org/installer/index.html
Jason Whitehorn,

So che questo è un commento più vecchio, ma GPGMail non è più gratuito per OSX.
nycynik,

Risposte:


23

Sì, fa schifo che Apple Mail non supporti GPG. :-( Vorrei farlo perché preferisco anche l'e-mail crittografata con GPG.

Sono anche d'accordo sul fatto che le informazioni relative a S / MIME e alla generazione dei propri certificati e-mail siano difficili da trovare. Ho scoperto che la pagina web di Paul Bramscher ha una buona descrizione di come creare il proprio certificato dell'autorità di certificazione.

Non pretendo di comprendere appieno il processo di certificazione, ma questo è ciò che sono stato in grado di mettere insieme. Consultare la manpage di openssl per informazioni più dettagliate su ciascuno dei comandi mostrati di seguito.

Crea autorità di certificazione

Il primo passo è creare la propria Autorità di certificazione (CA). I comandi sono ...

# openssl genrsa -des3 -out ca.key 4096
# openssl req -new -x509 -days 365 -key ca.key -out ca.crt

e seguire le istruzioni.

Dovrai rilasciare il certificato della tua CA (ovvero il contenuto di ca.crt ) a tutti i destinatari della tua e-mail crittografata. I destinatari dovranno installare e fidarsi del proprio certificato CA in modo tale che l'e-mail crittografata sia attendibile. L'installazione varierà per ogni client di posta utilizzato.

Nel tuo caso, dovrai aggiungere il certificato della tua CA al tuo portachiavi di Apple. Ci sono molti post sul Web su come importare e fidarsi di un certificato CA nel Portachiavi di Apple.

Creare una richiesta di certificato e-mail personale

Ora è necessario creare una richiesta di certificato. Creane uno per ogni indirizzo e-mail da cui desideri inviare e-mail. Esegui i seguenti comandi ...

# openssl genrsa -des3 -out humble_coder.key 4096
# openssl req -new -key humble_coder.key -out humble_coder.csr

e seguire le istruzioni.

L'autorità di certificazione firma la richiesta di certificato

Il tuo certificato personale deve essere firmato dalla tua CA. In questo caso, tu!

# openssl x509 -req -days 365 -in humble_coder.csr -CA ca.crt -CAkey ca.key \
  -set_serial 1 -out humble_coder.crt -setalias "Humble Coder's E-Mail Certificate" \
  -addtrust emailProtection \
  -addreject clientAuth -addreject serverAuth -trustout

L'output è il tuo certificato firmato.

Prepara il tuo certificato per l'importazione nella tua applicazione di posta

Devi convertire il tuo certificato da .crt(formato PEM, credo) a .p12(formato PCKS12).

# openssl pkcs12 -export -in humble_coder.crt -inkey humble_coder.key \
  -out humble_coder.p12

Ora puoi importare il tuo *.p12*certificato formattato nel tuo client di posta. Nel tuo caso, importa il *.p12*file nel Portachiavi di Apple. Una volta installato correttamente il certificato, Apple Mail inizierà a utilizzare il certificato.

C'è un modo più semplice

Naturalmente, una volta creata la propria CA, esiste un modo più semplice di gestire i certificati creati dalla propria autorità di certificazione. openssl viene fornito con uno script chiamato ...

# /usr/lib/ssl/misc/CA.pl

che semplifica il processo di essere la propria autorità di certificazione. C'è anche una pagina man per CA.pl!


Nella sezione Autorità di certificazione firma la richiesta di certificato. L'argomento "-CAKey" deve essere "-CAkey" con una "k" minuscola - almeno per la mia versione Open SSL 1.0.0a 1 giu 2010
KevM

2
Ho cambiato -CAKey in -CAkey. Questa è una risposta davvero eccellente, ma il commento laterale su GPG è privo di pretese. S / MIME ha molti vantaggi rispetto a GPG. Oltre al supporto più ampio, include il certificato con ogni messaggio firmato, fornendo un meccanismo di distribuzione del certificato incorporato.
vy32,

Non dimenticare di impostare alcune restrizioni per il certificato, vedi security.stackexchange.com/a/30069/3272
Tobias Kienzler

8

Gratuito e firmato da un'autorità di certificazione: http://www.instantssl.com/ssl-certificate-products/free-email-certificate.html


1
Commodo utilizza il tag <keygen> per consentire al browser di creare un CSR senza condividere la chiave privata. Ciò non funziona nella maggior parte dei browser moderni (ad es. Chrome 49+).
mhvelplund,

Citazione dalla pagina: “ Utilizzare Mozilla® Firefox® o Microsoft® Internet Explorer® 8+ per raccogliere il certificato. I certificati e-mail non possono essere raccolti utilizzando Google® Chrome® o Microsoft Edge. ”. Ciò corrisponde alla tabella di compatibilità di MDN .
Franklin Yu,

funziona con Safari.
nycynik,

1

Come altri hanno già detto, la risposta è ovviamente sì. Puoi generarlo tramite openssl oppure puoi utilizzare uno dei provider che fornisce un certificato di posta elettronica x509 gratuito.

Detto questo, la domanda più importante è: che cosa usano le persone con cui scambi email? Sono attivo nella comunità del software libero, quindi la maggior parte delle persone con cui scambio email con GPG. Gli unici che conosco che usano S / MIME lo fanno sulla loro e-mail di lavoro come una questione di politica aziendale.

Se le persone che invii per e-mail non utilizzano S / MIME, non sarai in grado di crittografarle e non potranno verificare le e-mail firmate.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.