Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?
15.09.2019, 20:45:37

.
Einloggen mit Benutzername, Passwort und Sitzungslänge

Mitglieder
  • Mitglieder insgesamt: 22538
  • Letzte: Kenobi
Statistiken
  • Beiträge insgesamt: 607923
  • Themen insgesamt: 49200
  • Heute online: 573
  • Am meisten online: 992
  • (17.11.2018, 20:17:55)
Benutzer Online

Autor Thema:  Problem mit openssl und letsencrypt  (Gelesen 384 mal)

0 Mitglieder und 2 Gäste betrachten dieses Thema.

Problem mit openssl und letsencrypt
« am: 31.08.2019, 23:25:42 »
Hallo!

Ich benutze Linuxmint mit cinnamon 19.1.

Ich habe ein Problem mit gajim chat software. Mit gajim kann ich keine uploads durchführen, ich bekomme certificate_verify_failed. Der Autor von gajim sagt, ich hätte kein letsencrypt root cert installiert.

Ein check mit openssl s_client -connect www.bitcorner.de:443 schlägt fehl mit Verify return code: 20 (unable to get local issuer certificate)

Was kann ich jetzt machen, um das zu überprüfen und wie kann ich es gegebenenfalls installieren?

Grüße

Andreas

Re: Problem mit openssl und letsencrypt
« Antwort #1 am: 01.09.2019, 12:43:57 »
Ich habe ein Problem mit gajim chat software. Mit gajim kann ich keine uploads durchführen, ich bekomme certificate_verify_failed. Der Autor von gajim sagt, ich hätte kein letsencrypt root cert installiert.
Und hast du nachgesehen, ob Root und Intermediate Certificate installiert sind?
https://wiki.ubuntuusers.de/Gajim/#Problembehebung
https://letsencrypt.org/certificates/

Re: Problem mit openssl und letsencrypt
« Antwort #2 am: 01.09.2019, 13:01:02 »
Hab nochmal tiefer geschaut:
Let's Encrypt Authority X3 ist von DST Root CA X3 ausgestellt.
Du solltest folglich auch das TrustID X3 Root (= DST Root CA X3) von hier https://www.identrust.com/support/downloads installieren.

Bei mir sind sowohl ISRG_Root_X1.pem als auch DST_Root_CA_X3.pem in /etc/ssl/certs vorhanden.
openssl s_client -connect www.bitcorner.de:443 funktioniert hier.

Re: Problem mit openssl und letsencrypt
« Antwort #3 am: 01.09.2019, 14:52:17 »
Das TrustID X3 Root habe ich jetzt installiert. Installiert habe ich jetzt auch
/usr/local/share/ca-certificates/cacert.org/class3.crt
/usr/local/share/ca-certificates/cacert.org/root.crt

Den Firefox und auch die Internetverbindung neu gestartet.
Ein openssl s_client -connect bitcorner.de:443 -showcerts zeigt nach wie vor Verify return code: 20 (unable to get local issuer certificate)
Das ist kaum zu durchschauen.

Auch /usr/share/python/dist/python-pyasn1 ist installiert.

Was ist da los? Auf jedem Server funktioniert ein openssl s_client -connect bitcorner.de:443 -showcerts, nur nicht auf LinuxMint.

Wieviele Zertifikate werden denn von dieser IdentTrust angeboten und welches is das richtige? Und muss man die Vertrauenswürdigkeit aller Zertifikate nachbearbeiten und enstprechende Haken setzen? Welche Zertifikate brauche ich für letsencrypt? Es kann doch nicht sein, dass man seitenweise Dokumentation lesen muss und danach ist man so schlau wie vorher.

« Letzte Änderung: 01.09.2019, 15:14:48 von porrier »

Re: Problem mit openssl und letsencrypt
« Antwort #4 am: 01.09.2019, 15:30:18 »
Das TrustID X3 Root habe ich jetzt installiert. Installiert habe ich jetzt auch
/usr/local/share/ca-certificates/cacert.org/class3.crt
/usr/local/share/ca-certificates/cacert.org/root.crt
Mach das mal bitte alles wieder rückgängig - cacert.org war dort außerdem nur ein Beispiel.
Und zeig bitte mal
cd /etc/ssl/certs
ls -al ISRG_Root_X1.pem
ls -al DST_Root_CA_X3.pem

Re: Problem mit openssl und letsencrypt
« Antwort #5 am: 01.09.2019, 15:52:43 »
Du kannst folgendes tun:
cd /usr/share/ca-certificates/mozilla/

sudo wget https://letsencrypt.org/certs/isrgrootx1.pem.txt
sudo mv isrgrootx1.pem.txt ISRG_Root_X1.crt
sudo ln -s /usr/share/ca-certificates/mozilla/ISRG_Root_X1.crt /etc/ssl/certs/ISRG_Root_X1.pem

sudo wget https://letsencrypt.org/certs/trustid-x3-root.pem.txt
sudo mv trustid-x3-root.pem.txt DST_Root_CA_X3.crt
sudo ln -s /usr/share/ca-certificates/mozilla/DST_Root_CA_X3.crt /etc/ssl/certs/DST_Root_CA_X3.pem

sudo update-ca-certificates

Dann gerne nochmal:
cd /etc/ssl/certs
ls -al ISRG_Root_X1.pem
ls -al DST_Root_CA_X3.pem

Schließlich:
openssl s_client -connect www.bitcorner.de:443

Re: Problem mit openssl und letsencrypt
« Antwort #6 am: 02.09.2019, 01:03:48 »
ls -al ISRG_Root_X1.pem
lrwxrwxrwx 1 root root 51 Jan 20  2019 ISRG_Root_X1.pem -> /usr/share/ca-certificates/mozilla/ISRG_Root_X1.crt

ls -al DST_Root_CA_X3.pem
lrwxrwxrwx 1 root root 53 Jan 20  2019 DST_Root_CA_X3.pem -> /usr/share/ca-certificates/mozilla/DST_Root_CA_X3.crt

sudo wget https://letsencrypt.org/certs/isrgrootx1.pem.txt --no-check-certificate
--2019-09-02 00:52:46--  https://letsencrypt.org/certs/isrgrootx1.pem.txt
Auflösen des Hostnamens letsencrypt.org (letsencrypt.org) … 2a02:26f0:6c00:18d::ce0, 2a02:26f0:6c00:18a::ce0, 104.111.245.93
Verbindungsaufbau zu letsencrypt.org (letsencrypt.org)|2a02:26f0:6c00:18d::ce0|:443 … verbunden.
WARNUNG: Das Zertifikat von letsencrypt.org kann nicht geprüft werden, ausgestellt von »CN=Let's Encrypt Authority X3,O=Let's Encrypt,C=US«:.
  Die Autorität des Ausstellers des Zertifikates kann lokal nicht geprüft werden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK
Länge: 1970 (1,9K) [text/plain]
Wird in »isrgrootx1.pem.txt« gespeichert.

sudo mv isrgrootx1.pem.txt ISRG_Root_X1.crt
sudo ln -s /usr/share/ca-certificates/mozilla/ISRG_Root_X1.crt /etc/ssl/certs/ISRG_Root_X1.pem
ln: Die symbolische Verknüpfung '/etc/ssl/certs/ISRG_Root_X1.pem' konnte nicht angelegt werden: Die Datei existiert bereits

sudo wget https://letsencrypt.org/certs/trustid-x3-root.pem.txt --no-check-certificate
--2019-09-02 00:54:07--  https://letsencrypt.org/certs/trustid-x3-root.pem.txt
Auflösen des Hostnamens letsencrypt.org (letsencrypt.org) … 2a02:26f0:6c00:18d::ce0, 2a02:26f0:6c00:18a::ce0, 104.111.245.93
Verbindungsaufbau zu letsencrypt.org (letsencrypt.org)|2a02:26f0:6c00:18d::ce0|:443 … verbunden.
WARNUNG: Das Zertifikat von letsencrypt.org kann nicht geprüft werden, ausgestellt von »CN=Let's Encrypt Authority X3,O=Let's Encrypt,C=US«:.
  Die Autorität des Ausstellers des Zertifikates kann lokal nicht geprüft werden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK
Länge: 1200 (1,2K) [text/plain]
Wird in »trustid-x3-root.pem.txt« gespeichert.

sudo mv trustid-x3-root.pem.txt DST_Root_CA_X3.crt
sudo ln -s /usr/share/ca-certificates/mozilla/DST_Root_CA_X3.crt /etc/ssl/certs/DST_Root_CA_X3.pem
ln: Die symbolische Verknüpfung '/etc/ssl/certs/DST_Root_CA_X3.pem' konnte nicht angelegt werden: Die Datei existiert bereits

cd /etc/ssl/certs
ls -al ISRG_Root_X1.pem
lrwxrwxrwx 1 root root 51 Jan 20  2019 ISRG_Root_X1.pem -> /usr/share/ca-certificates/mozilla/ISRG_Root_X1.crt
ls -al DST_Root_CA_X3.pem
lrwxrwxrwx 1 root root 53 Jan 20  2019 DST_Root_CA_X3.pem -> /usr/share/ca-certificates/mozilla/DST_Root_CA_X3.crt

openssl s_client -connect www.bitcorner.de:443
CONNECTED(00000003)
depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
verify error:num=20:unable to get local issuer certificate
---
Certificate chain
 0 s:CN = bitcorner.de
   i:C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
 1 s:C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
   i:O = Digital Signature Trust Co., CN = DST Root CA X3
---
.....
Verify return code: 20 (unable to get local issuer certificate)

Sollte ich die alten links löschen und nochmal verlinken?

Ich habe jetzt die bestehenden symlinks gelöscht und neu verlinkt, die Fehlermeldung bleibt.

Grüße
« Letzte Änderung: 02.09.2019, 01:08:38 von porrier »

Re: Problem mit openssl und letsencrypt
« Antwort #7 am: 03.09.2019, 22:19:54 »
Root CAs sind bei Dir vorhanden, das ist soweit OK.

Du kannst bitte einmal folgendes testen:
openssl s_client -CApath /etc/ssl/certs -connect www.bitcorner.de:443
Versuch mal bitte folgendes
sudo update-ca-certificatesund
dpkg-reconfigure ca-certificates
Und dann bitte nochmal
openssl s_client -connect www.bitcorner.de:443

Re: Problem mit openssl und letsencrypt
« Antwort #8 am: 05.09.2019, 22:30:07 »
Also mit
openssl s_client -CApath /etc/ssl/certs -connect www.bitcorner.de:443
erhalte ich keinen verify error. Das ist schon mal ein Lichtblick.

Der verify error bleibt bestehen auch nachdem ich ein
sudo update-ca-certificates
und
dpkg-reconfigure ca-certificates

ausgeführt habe. Aber für gajim reicht das nicht. Ich kann ihm ja kein -CApath /etc/ssl/certs
mitgeben.

Re: Problem mit openssl und letsencrypt
« Antwort #9 am: 06.09.2019, 20:24:02 »
Bin auch ratlos.

Was ergibt bei Dir
openssl version -aund dann
ls -al /usr/lib/ssl/
Was geht bei einer anderen Adresse?
openssl s_client -connect google.com:443openssl s_client -CApath /etc/ssl/certs -connect google.com:443

Re: Problem mit openssl und letsencrypt
« Antwort #10 am: 07.09.2019, 09:50:39 »
# openssl version -a
OpenSSL 1.1.1  11 Sep 2018 (Library: OpenSSL 1.1.1b  26 Feb 2019)
built on: Thu Aug 22 18:53:19 2019 UTC
platform: linux-x86_64
options:  bn(64,64) rc4(8x,int) des(int) blowfish(ptr)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DZLIB -DZLIB_SHARED -DNDEBUG
OPENSSLDIR: "/usr/local/openssl111/ssl"
ENGINESDIR: "/usr/local/openssl111/lib/engines-1.1"
Seeding source: os-specific

# ls -al /usr/lib/ssl/
insgesamt 24
drwxr-xr-x   3 root root  4096 Jul 16 18:34 .
drwxr-xr-x 192 root root 16384 Sep  6 23:47 ..
lrwxrwxrwx   1 root root    14 Jan 20  2019 certs -> /etc/ssl/certs
drwxr-xr-x   2 root root  4096 Jul 16 18:34 misc
lrwxrwxrwx   1 root root    20 Jun 20 19:36 openssl.cnf -> /etc/ssl/openssl.cnf
lrwxrwxrwx   1 root root    16 Jan 20  2019 private -> /etc/ssl/private

# openssl s_client -connect google.com:443
subject=C = US, ST = California, L = Mountain View, O = Google LLC, CN = *.google.com

issuer=C = US, O = Google Trust Services, CN = GTS CA 1O1

---
No client certificate CA names sent
Peer signing digest: SHA256
Peer signature type: ECDSA
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 3788 bytes and written 392 bytes
Verification error: unable to get local issuer certificate
---
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
Server public key is 256 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 20 (unable to get local issuer certificate)

# openssl s_client -CApath /etc/ssl/certs -connect google.com:443
subject=C = US, ST = California, L = Mountain View, O = Google LLC, CN = *.google.com

issuer=C = US, O = Google Trust Services, CN = GTS CA 1O1

---
No client certificate CA names sent
Peer signing digest: SHA256
Peer signature type: ECDSA
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 3789 bytes and written 392 bytes
Verification: OK
---
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
Server public key is 256 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)

Dieses Problem habe ich nur mit LinuxMint. Auf CentOS Servern oder auch openSUSE funktionieren openssl Abfragen problemlos.

Re: Problem mit openssl und letsencrypt
« Antwort #11 am: 07.09.2019, 13:27:00 »
Bei mir ergibt openssl version -a etwas anderes - wieso das bei dir anders ist, weiß ich nicht.
Insbesondere steht bei mir:
OPENSSLDIR: "/usr/lib/ssl"
Deswegen hatte ich auch nach "ls -al /usr/lib/ssl/" gefragt.
Du müsstest mal schauen, ob dein "/usr/local/openssl111/ssl" analog "/usr/lib/ssl" aufgebaut ist oder dein OPENSSLDIR ändern.
Das sieht mir aber nach einem hausgemachten Problem bei dir aus.