Gmail stunnel: verificare certificati

Area di discussione libera.

Moderatore: Staff

Regole del forum
1) Rispettare le idee altrui.
2) Evitare le offese dirette.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: Accesso gmail via openssl: non mi riesce

Messaggio da conraid »

fatto, guarda se va
se non ti fa accedere, fatti mandare la password

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3986
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Accesso gmail via openssl: non mi riesce

Messaggio da joe »

Sembra tutto apposto, ho messo la mail in firma invece che nel profilo... spero sia un po' meno in vista.

EDIT.
Ovviamente grazie mille e scusa di nuovo per il disturbo, ciao.
Ultima modifica di joe il mar 7 set 2010, 21:15, modificato 1 volta in totale.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3986
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Accesso gmail via openssl: non mi riesce

Messaggio da joe »

Mah... ci capisco sempre meno.
Ho provato questa strana manovra:
1- accesso via browser alle impostazioni: disattivato accesso POP
2- accesso empre via browser: riattivato accesso POP per tuttti i messaggi (anche quelli vecchi)

provo.. col soli

Codice: Seleziona tutto

# openssl s_client -connect pop.gmail.com:995
CONNECTED(00000003)
depth=1 /C=US/O=Google Inc/CN=Google Internet Authority
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
[...]
+OK Gpop ready for requests from x.x.x.x e2pfsf4u.29
user boxofmailforme
+OK send PASS
pass xxxxxxxxxxxxxxxxxxxxxx

+OK Welcome.
Come sarebbe a dire Ok Welcome!!?!? :shock: :x :evil:
Mi sono rotto la testa con certificati e altre c...
... E ora?... Ok welcome!?
Maledetta, perlomeno voglio una buona spiegazione dal team gmail!


Ehm...
Ok, fine sfogo.
Vorrei sottolineare come la questione dei certificati non c'entri, infatti si vede dalle prime battute dellasessesione ssl che l'assenza di un certificato sul sistema locale valido viene lamentata, ma a quanto pare non impedisce l'utilizzo del servizio POP. E spero neanche smtp, imap non mi è mai servito, omeglio mai usato...quindi lasciamolo perdere.

Insomma alla fine la mia spiegazione è che per qualche santo l'account era inceppato e non consentiva l'accesso se non da browser o da kmail.
Dopo aver cambiato la password e disattivato l'accesso via POP allora l'errore è cambiato e veniva lamentato appunto l'impossibilità di usare il servizio POP, non prima di averlo attivato dal pannello via browser. Ok, riattivato il servizio POP sembra essersi tutto magicamente risolto.
Insomma, concludendo: ma se ne vadano af...

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3986
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Gmail via openssl: unable to get local issuer certificate

Messaggio da joe »

joe ha scritto:

Codice: Seleziona tutto

# openssl s_client -connect pop.gmail.com:995
CONNECTED(00000003)
depth=1 /C=US/O=Google Inc/CN=Google Internet Authority
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
[...]
+OK Gpop ready for requests from x.x.x.x e2pfsf4u.29
user boxofmailforme
+OK send PASS
pass xxxxxxxxxxxxxxxxxxxxxx

+OK Welcome.
Considerata la sessione soprariportata, e nonstante poi si riesca ad effettuare l'accesso, noto l'errore:

Codice: Seleziona tutto

verify error:num=20:unable to get local issuer certificate
verify return:0
Che come già consigliato, riguarda la mancanza di un certificato sulla macchina locale riconosciuto da gmail come valido.
Ora, tentendo presente che comunque l'accesso funziona lo stesso, mi piacerebbe capire:
  • 1- Cosa esattamente comporti quell'errore
    2- Cosa eventualmente fare per risolverlo
Eventuali links sono beneaccetti. Nel frattempo googolerò edeventualmente risolvessi, posterò la soluzione.
Grazie in anticipo.

PS. Ho cambiato il titolo della discussione, senza riaprirne una nuova perchè comunque l'argomento è inerente e il report della sessione ssl era a portata di mano

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3986
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: Gmail via openssl: unable to get local issuer certificat

Messaggio da joe »

Nonostante non è che abbia capito bene la questione in modo esaustivo, ho comunque trovato una procedura simile a tante già lette in rete... procedura che però sta volta funziona.

Riassumendo, servono due certificati, che per quanto ne so io sono due file di testo contenenti dei caratteri codificati immagino in base64.
Il primo certificato è quello di gmail, ommeglio pop.gmail.com.
Come lo si ottiene:

Codice: Seleziona tutto

root@slax:~/.certs/pop.gmail.com# openssl s_client -connect pop.gmail.com:995 -showcerts
CONNECTED(00000003)
depth=1 /C=US/O=Google Inc/CN=Google Internet Authority
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
 0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=pop.gmail.com
   i:/C=US/O=Google Inc/CN=Google Internet Authority
-----BEGIN CERTIFICATE-----
MIIDWjCCAsOgAwIBAgIKFNMahgADAAASkDANBgkqhkiG9w0BAQUFADBGMQswCQYD
VQQGEwJVUzETMBEGA1UEChMKR29vZ2xlIEluYzEiMCAGA1UEAxMZR29vZ2xlIElu
dGVybmV0IEF1dGhvcml0eTAeFw0xMDA0MjIyMDExMjNaFw0xMTA0MjIyMDIxMjNa
MGcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1N
b3VudGFpbiBWaWV3MRMwEQYDVQQKEwpHb29nbGUgSW5jMRYwFAYDVQQDEw1wb3Au
Z21haWwuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC701lFBdiiC0BB
JEo2U1wmmS6Gv+qr4bjG6xeCSgb0UGI2vN1ifYyrf/wj1jBLupou+Ds+s0zLzE5Y
vsADQvu+pkDXoOcnK2YxiOiuZaGOSRKC2b0rbg4oYyS1TogEBcX+KpUxWQNpccW6
FPzpSVtmiG4azMUIR0mM2HERnwke/wIDAQABo4IBLDCCASgwHQYDVR0OBBYEFJr4
/CBophXvQNM/AFWw8zu5EXKiMB8GA1UdIwQYMBaAFL/AMOv1QxE+Z7qekfv8atrj
axIkMFsGA1UdHwRUMFIwUKBOoEyGSmh0dHA6Ly93d3cuZ3N0YXRpYy5jb20vR29v
Z2xlSW50ZXJuZXRBdXRob3JpdHkvR29vZ2xlSW50ZXJuZXRBdXRob3JpdHkuY3Js
MGYGCCsGAQUFBwEBBFowWDBWBggrBgEFBQcwAoZKaHR0cDovL3d3dy5nc3RhdGlj
LmNvbS9Hb29nbGVJbnRlcm5ldEF1dGhvcml0eS9Hb29nbGVJbnRlcm5ldEF1dGhv
cml0eS5jcnQwIQYJKwYBBAGCNxQCBBQeEgBXAGUAYgBTAGUAcgB2AGUAcjANBgkq
hkiG9w0BAQUFAAOBgQDETrSXXdPv8yvPZ5cR8yupyXlHzUvA5rNVFzOmBE/QCrNx
wLHDMP36+axPMWp+uraNfsc798zHES0GDgz+P97KItu8T75ysvjUUpWKeeuHcYHh
QSGi5iYB7XxEB9oCnSC9tpq8el2/mWFvVJSO69bO+zDOqgFPJ/GZYIxWgglMqA==
-----END CERTIFICATE-----
 1 s:/C=US/O=Google Inc/CN=Google Internet Authority
   i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
-----BEGIN CERTIFICATE-----
MIICsDCCAhmgAwIBAgIDC2dxMA0GCSqGSIb3DQEBBQUAME4xCzAJBgNVBAYTAlVT
MRAwDgYDVQQKEwdFcXVpZmF4MS0wKwYDVQQLEyRFcXVpZmF4IFNlY3VyZSBDZXJ0
aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDkwNjA4MjA0MzI3WhcNMTMwNjA3MTk0MzI3
WjBGMQswCQYDVQQGEwJVUzETMBEGA1UEChMKR29vZ2xlIEluYzEiMCAGA1UEAxMZ
R29vZ2xlIEludGVybmV0IEF1dGhvcml0eTCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
gYkCgYEAye23pIucV+eEPkB9hPSP0XFjU5nneXQUr0SZMyCSjXvlKAy6rWxJfoNf
NFlOCnowzdDXxFdF7dWq1nMmzq0yE7jXDx07393cCDaob1FEm8rWIFJztyaHNWrb
qeXUWaUr/GcZOfqTGBhs3t0lig4zFEfC7wFQeeT9adGnwKziV28CAwEAAaOBozCB
oDAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFL/AMOv1QxE+Z7qekfv8atrjaxIk
MB8GA1UdIwQYMBaAFEjmaPkr0rKV10fYIyAQTzOYkJ/UMBIGA1UdEwEB/wQIMAYB
Af8CAQAwOgYDVR0fBDMwMTAvoC2gK4YpaHR0cDovL2NybC5nZW90cnVzdC5jb20v
Y3Jscy9zZWN1cmVjYS5jcmwwDQYJKoZIhvcNAQEFBQADgYEAuIojxkiWsRF8YHde
BZqrocb6ghwYB8TrgbCoZutJqOkM0ymt9e8kTP3kS8p/XmOrmSfLnzYhLLkQYGfN
0rTw8Ktx5YtaiScRhKqOv5nwnQkhClIZmloJ0pC3+gz4fniisIWvXEyZ2VxVKfml
UUIuOss4jHg7y/j7lYe8vJD5UDI=
-----END CERTIFICATE-----
---
Server certificate
subject=/C=US/ST=California/L=Mountain View/O=Google Inc/CN=pop.gmail.com
issuer=/C=US/O=Google Inc/CN=Google Internet Authority
---
No client certificate CA names sent
---
SSL handshake has read 1703 bytes and written 300 bytes
---
New, TLSv1/SSLv3, Cipher is RC4-MD5
Server public key is 1024 bit
Compression: NONE
Expansion: NONE
SSL-Session:
    Protocol  : TLSv1
    Cipher    : RC4-MD5
    Session-ID: 853D10038318151ACEBA5E63F37CD7EF9DC0ED98A8628F5AAFA9362FC6424DE0
    Session-ID-ctx:
    Master-Key: D3A0124ACBBAB5C545A5CF57FE20DF865FF97D59C0F3BA105C481551225C7145A284BD91DABF76FB78273E12ED88C6E6
    Key-Arg   : None
    Start Time: 1284044825
    Timeout   : 300 (sec)
    Verify return code: 20 (unable to get local issuer certificate)
---
+OK Gpop ready for requests from x.x.x.x 6pf401506rez.3
quit
+OK Bye 6pf401506rez.3
read:errno=0
Ok, vediamo due certificati: compresi tra le diciture ----BEGIN CERTIFICATE---- ed ----END CERTIFICATE----.
Che certificati siano di preciso non ne ho idea, comunque il primo è quello rilasciato da gmail e ci serve, per cui facciamo una directory, per esempio io ho creato ~/.certs/pop.gmail.com e lo cpiamo ed incolliamo in un file di testo che possiamo chiamare gmail.pem, sarà fatto come segue:

Codice: Seleziona tutto

root@slax:~/.certs/pop.gmail.com# cat gmail.pem
-----BEGIN CERTIFICATE-----
MIIDWjCCAsOgAwIBAgIKFNMahgADAAASkDANBgkqhkiG9w0BAQUFADBGMQswCQYD
VQQGEwJVUzETMBEGA1UEChMKR29vZ2xlIEluYzEiMCAGA1UEAxMZR29vZ2xlIElu
dGVybmV0IEF1dGhvcml0eTAeFw0xMDA0MjIyMDExMjNaFw0xMTA0MjIyMDIxMjNa
MGcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1N
b3VudGFpbiBWaWV3MRMwEQYDVQQKEwpHb29nbGUgSW5jMRYwFAYDVQQDEw1wb3Au
Z21haWwuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC701lFBdiiC0BB
JEo2U1wmmS6Gv+qr4bjG6xeCSgb0UGI2vN1ifYyrf/wj1jBLupou+Ds+s0zLzE5Y
vsADQvu+pkDXoOcnK2YxiOiuZaGOSRKC2b0rbg4oYyS1TogEBcX+KpUxWQNpccW6
FPzpSVtmiG4azMUIR0mM2HERnwke/wIDAQABo4IBLDCCASgwHQYDVR0OBBYEFJr4
/CBophXvQNM/AFWw8zu5EXKiMB8GA1UdIwQYMBaAFL/AMOv1QxE+Z7qekfv8atrj
axIkMFsGA1UdHwRUMFIwUKBOoEyGSmh0dHA6Ly93d3cuZ3N0YXRpYy5jb20vR29v
Z2xlSW50ZXJuZXRBdXRob3JpdHkvR29vZ2xlSW50ZXJuZXRBdXRob3JpdHkuY3Js
MGYGCCsGAQUFBwEBBFowWDBWBggrBgEFBQcwAoZKaHR0cDovL3d3dy5nc3RhdGlj
LmNvbS9Hb29nbGVJbnRlcm5ldEF1dGhvcml0eS9Hb29nbGVJbnRlcm5ldEF1dGhv
cml0eS5jcnQwIQYJKwYBBAGCNxQCBBQeEgBXAGUAYgBTAGUAcgB2AGUAcjANBgkq
hkiG9w0BAQUFAAOBgQDETrSXXdPv8yvPZ5cR8yupyXlHzUvA5rNVFzOmBE/QCrNx
wLHDMP36+axPMWp+uraNfsc798zHES0GDgz+P97KItu8T75ysvjUUpWKeeuHcYHh
QSGi5iYB7XxEB9oCnSC9tpq8el2/mWFvVJSO69bO+zDOqgFPJ/GZYIxWgglMqA==
-----END CERTIFICATE-----
Ok, però questo non basta. Serve anche il certificato di un certificatore terzo, che anche google usa. Nella sessione ssl di prima si vede che vi è un secondo certificato rilasciato appunto da un ente terzo del genere chiamato equifax.

Codice: Seleziona tutto

 1 s:/C=US/O=Google Inc/CN=Google Internet Authority
   i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
-----BEGIN CERTIFICATE-----
MIICsDCCAhmgAwIBAgIDC2dxMA0GCSqGSIb3DQEBBQUAME4xCzAJBgNVBAYTAlVT
MRAwDgYDVQQKEwdFcXVpZmF4MS0wKwYDVQQLEyRFcXVpZmF4IFNlY3VyZSBDZXJ0
aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDkwNjA4MjA0MzI3WhcNMTMwNjA3MTk0MzI3
WjBGMQswCQYDVQQGEwJVUzETMBEGA1UEChMKR29vZ2xlIEluYzEiMCAGA1UEAxMZ
R29vZ2xlIEludGVybmV0IEF1dGhvcml0eTCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
gYkCgYEAye23pIucV+eEPkB9hPSP0XFjU5nneXQUr0SZMyCSjXvlKAy6rWxJfoNf
NFlOCnowzdDXxFdF7dWq1nMmzq0yE7jXDx07393cCDaob1FEm8rWIFJztyaHNWrb
qeXUWaUr/GcZOfqTGBhs3t0lig4zFEfC7wFQeeT9adGnwKziV28CAwEAAaOBozCB
oDAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFL/AMOv1QxE+Z7qekfv8atrjaxIk
MB8GA1UdIwQYMBaAFEjmaPkr0rKV10fYIyAQTzOYkJ/UMBIGA1UdEwEB/wQIMAYB
Af8CAQAwOgYDVR0fBDMwMTAvoC2gK4YpaHR0cDovL2NybC5nZW90cnVzdC5jb20v
Y3Jscy9zZWN1cmVjYS5jcmwwDQYJKoZIhvcNAQEFBQADgYEAuIojxkiWsRF8YHde
BZqrocb6ghwYB8TrgbCoZutJqOkM0ymt9e8kTP3kS8p/XmOrmSfLnzYhLLkQYGfN
0rTw8Ktx5YtaiScRhKqOv5nwnQkhClIZmloJ0pC3+gz4fniisIWvXEyZ2VxVKfml
UUIuOss4jHg7y/j7lYe8vJD5UDI=
-----END CERTIFICATE-----
A buon senso e seguendo alcune guide on line, il secondo certificato che ci serve sembrerebbe proprio quello soprariportato. Tuttavia con quello non funziona e gmail continua a lamentare il solito errore. Così ho dato in pasto a google la chiave: "Equifax Secure Certificate Authority" per capirne di più e sono giunto a questo link:
http://www.geotrust.com/resources/root-certificates/

da cui è possibile scaricare questo:
http://www.geotrust.com/resources/root_ ... hority.cer

Bene, tutto ciò l'ho fatto completamente a naso, voleva essere solo un tentativo, quindi non sapevo bene cosa stessi facendo. Ok praticamente ho preso quelcertificato e l'ho messo nella stessa directory del'altro (gmail.pem).

Codice: Seleziona tutto

root@slax:~/.certs/pop.gmail.com# wget -O equifax.pem 'http://www.geotrust.com/resources/root_certificates/certificates/Equifax_Secure_Certificate_Authority.cer'
root@slax:~/.certs/pop.gmail.com# cat equifax.pem
-----BEGIN CERTIFICATE-----
MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV
UzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2Vy
dGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1
MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VxdWlmYXgxLTArBgNVBAsTJEVx
dWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCBnzANBgkqhkiG9w0B
AQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPRfM6f
BeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+A
cJkVV5MW8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kC
AwEAAaOCAQkwggEFMHAGA1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQ
MA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlm
aWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTgw
ODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvSspXXR9gj
IBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQF
MAMBAf8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUA
A4GBAFjOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y
7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh
1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4
-----END CERTIFICATE-----
Notate che è diverso da quello ottenuto dalla sessione openssl.
Insomma alla fine nell nostra dir avremo i due file equifax.pem e gmail.pem. Ora serve un'operazionechiamata rehash, che aggiorna in qualche modo la situazione creando sempre nella nostra dir due altri files che servono ad openssl per usare i certificati (non chiedetemi nulla di più...).
Ok. per fare ciò si usa il comando "c_rehash directory_certificati":

Codice: Seleziona tutto

root@slax:~/.certs/pop.gmail.com# c_rehash ~/.certs/pop.gmail.com/
Doing /root/.certs/pop.gmail.com/
equifax.pem => d9b7a851.0
gmail.pem => 34ceaf75.0

root@slax:~/.certs/pop.gmail.com# ls
34ceaf75.0  d9b7a851.0  equifax.pem  gmail.pem
Ora riproviamo ad effettuare una sessione openssl e l'errore dovrebbe essere rientrato.

Codice: Seleziona tutto

root@slax:~/.certs/pop.gmail.com# openssl s_client -connect pop.gmail.com:995 -CApath ~/.certs/pop.gmail.com/
CONNECTED(00000003)
depth=2 /C=US/O=Equifax/OU=Equifax Secure Certificate Authority
verify return:1
depth=1 /C=US/O=Google Inc/CN=Google Internet Authority
verify return:1
depth=0 /C=US/ST=California/L=Mountain View/O=Google Inc/CN=pop.gmail.com
verify return:1
---
Certificate chain
 0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=pop.gmail.com
   i:/C=US/O=Google Inc/CN=Google Internet Authority
 1 s:/C=US/O=Google Inc/CN=Google Internet Authority
   i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIDWjCCAsOgAwIBAgIKFNMahgADAAASkDANBgkqhkiG9w0BAQUFADBGMQswCQYD
VQQGEwJVUzETMBEGA1UEChMKR29vZ2xlIEluYzEiMCAGA1UEAxMZR29vZ2xlIElu
dGVybmV0IEF1dGhvcml0eTAeFw0xMDA0MjIyMDExMjNaFw0xMTA0MjIyMDIxMjNa
MGcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1N
b3VudGFpbiBWaWV3MRMwEQYDVQQKEwpHb29nbGUgSW5jMRYwFAYDVQQDEw1wb3Au
Z21haWwuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC701lFBdiiC0BB
JEo2U1wmmS6Gv+qr4bjG6xeCSgb0UGI2vN1ifYyrf/wj1jBLupou+Ds+s0zLzE5Y
vsADQvu+pkDXoOcnK2YxiOiuZaGOSRKC2b0rbg4oYyS1TogEBcX+KpUxWQNpccW6
FPzpSVtmiG4azMUIR0mM2HERnwke/wIDAQABo4IBLDCCASgwHQYDVR0OBBYEFJr4
/CBophXvQNM/AFWw8zu5EXKiMB8GA1UdIwQYMBaAFL/AMOv1QxE+Z7qekfv8atrj
axIkMFsGA1UdHwRUMFIwUKBOoEyGSmh0dHA6Ly93d3cuZ3N0YXRpYy5jb20vR29v
Z2xlSW50ZXJuZXRBdXRob3JpdHkvR29vZ2xlSW50ZXJuZXRBdXRob3JpdHkuY3Js
MGYGCCsGAQUFBwEBBFowWDBWBggrBgEFBQcwAoZKaHR0cDovL3d3dy5nc3RhdGlj
LmNvbS9Hb29nbGVJbnRlcm5ldEF1dGhvcml0eS9Hb29nbGVJbnRlcm5ldEF1dGhv
cml0eS5jcnQwIQYJKwYBBAGCNxQCBBQeEgBXAGUAYgBTAGUAcgB2AGUAcjANBgkq
hkiG9w0BAQUFAAOBgQDETrSXXdPv8yvPZ5cR8yupyXlHzUvA5rNVFzOmBE/QCrNx
wLHDMP36+axPMWp+uraNfsc798zHES0GDgz+P97KItu8T75ysvjUUpWKeeuHcYHh
QSGi5iYB7XxEB9oCnSC9tpq8el2/mWFvVJSO69bO+zDOqgFPJ/GZYIxWgglMqA==
-----END CERTIFICATE-----
subject=/C=US/ST=California/L=Mountain View/O=Google Inc/CN=pop.gmail.com
issuer=/C=US/O=Google Inc/CN=Google Internet Authority
---
No client certificate CA names sent
---
SSL handshake has read 1703 bytes and written 300 bytes
---
New, TLSv1/SSLv3, Cipher is RC4-MD5
Server public key is 1024 bit
Compression: NONE
Expansion: NONE
SSL-Session:
    Protocol  : TLSv1
    Cipher    : RC4-MD5
    Session-ID: DB5438CDEEDC7B6079005BDF34D485E5E970B3883D5303E71789576493FA8DA4
    Session-ID-ctx:
    Master-Key: 54CED6855687535D93658068B3F0EA7B1596AEDEE082C2BF76351F6A12175F508E77360548BA27CC74AC195184DA4745
    Key-Arg   : None
    Start Time: 1284046373
    Timeout   : 300 (sec)
    Verify return code: 0 (ok)
---
+OK Gpop ready for requests from x.x.x.x g15pt508572faa.40
quit
+OK Bye g15pt508572faa.40
read:errno=0

Domande aperte ne avrei molte, tuttavia quella che vorrei farvi è la seguente:
1- cos'è il secondo certificato presente nella sessione "-showcerts" di openssl?
2- c'è un modo più furbo per trovare i certificati che servono senza dover andare a tentoni via google? Non so magari gmail mette a disposizione delle pagine di documentazione.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3986
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Gmail stunnel: verificare certificati

Messaggio da joe »

Ok. Le domande sopra restano aperte, ma non sono così fondamentali.
Ricapitolando abbiamo visto come una sessione ssl verso gmail necessiti di due certificati per evitare un errore di verifica. Evidenzio che in ogni caso, anche con qull'errore la sessione ssl funziona almeno con openssl.

Ora, ho cambiato il titolo perchè mi pareva controproducente iniziare una nuova discussione visto che questa contiene tutti i dettagli "dell'indagine". Il mio obiettivo sarebbe quello di mettere in piedi sulla macchina locale un "proxy ssl" usando stunnel in modo da poter configurare i vari client mail per connettersi al localhost piuttosto che direttamente al server pop/imap/smtp di gmail.
Bene. la cosa è abbastanza facile, basta creare un file di configurazione per stunnel:

Codice: Seleziona tutto

pid=/tmp/gmail.stunnel.pid
output=/tmp/gmail.stunnel.log
debug=7
client = yes
[pop3s]
connect = pop.gmail.com:995
accept = 127.0.0.1:995
poi si lancia stunnel passandogli come argomento il file di configurazione:
stunnel stunnel.gmail.conf

Ok. funzionare funziona, se con telnet mi collego al localhost sulla 995 accedo al server pop di gmail. Come succedeva d'altro canto con

Codice: Seleziona tutto

openssl s_client -connect pop.gmail.com:995
adesso il punto è: come fare a rilevare se la sessione di stunnel è affetta dallo stesso problema di certificati che ottenevo con openssl (vedi titolo parte precedente del thread).
Dal file di log non vedo nessuN errore del tipo:
verify error:num=20:unable to get local issuer certificate.
Come potrei verificarlo?

Rispondi