Ich habe bei der Arbeit eine Arch Linux-VM eingerichtet und mein Unternehmen verwendet einen transparenten (Cut-Through-)Proxy mit einem selbstsignierten Zertifikat und erfordert eine Authentifizierung. Immer wenn ich versuche, Pakete darüber zu installieren, pacman
erhalte ich die folgende Fehlermeldung (z. B. beim Versuch, zu installieren lynx
)
Fehler: Beim Abrufen der Datei „lynx-2.8.7-6-x86_64.pkg.tar.xz“ von mirrors.kernel.org ist ein Fehler aufgetreten: SSL-Zertifikatproblem: selbst signiertes Zertifikat in der Zertifikatskette
Dieser Fehler wird für jeden Mirror ausgegeben, den ich in definiert habe /etc/pacman.d/mirrorlist
. Ich habe ähnliche Probleme beim Versuch, andere HTTP/S-Clients wie zu verwenden curl
, aber ich habe keine Probleme mit FTP (hauptsächlich, weil meine Firma nur die Ports 80 und 443 überwacht).
Was ich bereits versucht habe ...
- Platzieren des selbstsignierten CA-Zertifikats meines Unternehmens in
/usr/share/ca-certificates
und/etc/ca-certificates
- Einrichten
http_proxy
undhttps_proxy
mit meinen Anmeldeinformationen auf den Proxyserver meines Unternehmens verweisen - Habe mit der Person gesprochen, die unseren Proxyserver verwaltet, aber er weiß nichts über Linux und hat daher keine Ahnung, wo er anfangen soll.
Wenn ich derzeit etwas installieren oder auf das Internet zugreifen muss, öffne ich einen SSH-Tunnel zu meinem Heimserver, um dies zu umgehen.
Unten sehen Sie die Ausgabe vonopenssl s_client -CApath /etc/ca-certificates -showcerts -connect mirrors.kernel.org:443
VERBUNDEN(00000003) Tiefe=0 C = USA, ST = Kalifornien, L = San Jose, O = Die Linux-Kernel-Organisation, CN = *.kernel.org Überprüfungsfehler: Num=20: Lokales Ausstellerzertifikat konnte nicht abgerufen werden. Rückgabe überprüfen: 1 Tiefe=0 C = USA, ST = Kalifornien, L = San Jose, O = Die Linux-Kernel-Organisation, CN = *.kernel.org Überprüfungsfehler: Num=27: Zertifikat nicht vertrauenswürdig Rückgabe überprüfen: 1 Tiefe=0 C = USA, ST = Kalifornien, L = San Jose, O = Die Linux-Kernel-Organisation, CN = *.kernel.org Überprüfungsfehler: Num=21: Das erste Zertifikat konnte nicht überprüft werden Rückgabe überprüfen: 1 --- Zertifikatskette 0 s:/C=USA/ST=Kalifornien/L=San Jose/O=Die Linux-Kernel-Organisation/CN=*.kernel.org i:/C=US/ST=MeinFirmenstaat/L=MeineFirmenstadt/O=MeineFirmenname/OU=IT/CN=MeineFirmenproxyserver/[email geschützt] -----ZERTIFIKAT BEGINNEN----- ... bla bla bla -----ENDE DES ZERTIFIKATS----- --- Server-Zertifikat Betreff=/C=USA/ST=Kalifornien/L=San Jose/O=Die Linux-Kernel-Organisation/CN=*.kernel.org Aussteller=/C=US/ST=Bundesland/L=Stadt/O=Firmenname/OU=IT/CN=Proxyserver meines Unternehmens/[email geschützt] --- Keine Client-Zertifikat-CA-Namen gesendet ---
NotizIch könnte wahrscheinlich versuchen, stattdessen einfach FTP-Mirrors zu verwenden, aber das löst das Problem für andere HTTP/S-Anwendungen (z. B.) nicht wirklich curl
.
Antwort1
Aus den von Ihnen bereitgestellten Informationen geht hervor, dass Sie Ihrer Datei das Serverzertifikat hinzugefügt haben /etc/ca-certificates
. Sie müssen stattdessen das CA-Zertifikat hinzufügen.
Der openssl s_client -showcerts
von Ihnen ausgeführte Befehl sollte nach dem ersten Zertifikat ein oder mehrere weitere Zertifikate enthalten haben. Diese sind für Sie von Bedeutung.
Wenn nach dem ersten Zertifikat mehrere Zertifikate vorhanden sind, müssen Sie möglicherweise beide zu Ihrer ca-certificates
Datei hinzufügen. Dies hängt alles davon ab, wie die Zertifizierungsstelle auf dem Proxy eingerichtet ist. Wenn jedoch beide Zertifikate nicht erforderlich sind und Sie trotzdem beide hinzufügen, kann es nicht schaden.
Wenn jedoch openssl s_client -showcerts
keine anderen Zertifikate als das erste angezeigt werden, sind Sie aufgeschmissen. Das bedeutet, dass der Proxy das Signaturzertifikat nicht sendet. Sie könnten versuchen, Ihr Netzwerkteam zu kontaktieren und es darum zu bitten. Aus Sicherheitsgründen gibt es absolut keinen Grund, es Ihnen nicht zu geben (es ist dieSchlüsseldie geschützt werden müssen).
Beispielsweise erhalte ich Folgendes (ja, da ich mich nicht hinter einem SSL-Proxy befinde, erhalte ich die echten Zertifikate, aber das Konzept bleibt bestehen):
# openssl s_client -showcerts -connect mirrors.kernel.org:443 VERBUNDEN(00000003) Tiefe = 2 C = US, O = „thawte, Inc.“, OU = Certification Services Division, OU = „(c) 2006 thawte, Inc. – Nur für autorisierte Verwendung“, CN = thawte Primary Root CA Überprüfungsfehler: Num=20: Lokales Ausstellerzertifikat konnte nicht abgerufen werden. Überprüfen Sie die Rückgabe: 0 --- Zertifikatskette 0 s:/C=USA/ST=Kalifornien/L=San Jose/O=Die Linux-Kernel-Organisation/CN=*.kernel.org i:/C=US/O=Thawte, Inc./CN=Thawte SSL CA -----ZERTIFIKAT BEGINNEN----- MIID2zCCAsOgAwIBAgIQZ7xPhWo7v0ZlPnI5mJWMazANBgkqhkiG9w0BAQUFADA8 MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMVGhhd3RlLCBJbmMuMRYwFAYDVQQDEw1U aGF3dGUgU1NMIENBMB4XDTEyMDEwMzAwMDAwMFoXDTE0MDQwMzIzNTk1OVowdDEL MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExETAPBgNVBAcUCFNhbiBK b3NlMSYwJAYDVQQKFB1UaGUgTGludXggS2VybmVsIE9yZ2FuaXphdGlvbjEVMBMG A1UEAxQMKi5rZXJuZWwub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEApSbajGUzM+C1Oz6CzyPmek9HH03ToicZeHxOlBfS7yyvIyybxTCBrmkItyc+ sf6b5g2Zf8IPwloaj+ACQaLfm0OOaFrvHERIN1t0pitvmeSDI6BXVYq0eSLEPpSG YC/3AMdKE21NO1jmL7mtsCB8CW4NAAvy97HkvsPsTPNOp6d/LtcIMYRS347RFgRj O/J1PU05EEjcpXdy6eCyJLwi2AFLgfBzjS+0UK4tq01HFalULfO/akjC59WG+qrc P/Yi/1TM8bE2mun1mcuCP7bmyZFDfrGnO2TYcZ/s7z4bTUmEixR6kTdj1foqi7Xk svko9dXCiUZj4c692ZKZXE+gJwIDAQABo4GgMIGdMAwGA1UdEwEB/wQCMAAwOgYD VR0fBDMwMTAvoC2gK4YpaHR0cDovL3N2ci1vdi1jcmwudGhhd3RlLmNvbS9UaGF3 dGVPVi5jcmwwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMDIGCCsGAQUF BwEBBCYwJDAiBggrBgEFBQcwAYYWaHR0cDovL29jc3AudGhhd3RlLmNvbTANBgkq hkiG9w0BAQUFAAOCAQEAd7mKHpW1mCB1fGuvR44iX83PmSy3BVEpvOlnH1zNSU/Y 2zMmKDbXqAJTY6t20Yq/GpjW3BA2G4xEA6i64WAGZcSmXfc/NDOSh0i5lTrCofCG 3tuts9HTmHJLfeAz9cZiT4rc4ROMV4K17/Uw81UIid952M/4b6OvhaCu5OSnvDUI 3Z6OUy+AuJHbwEyB5bGOJ/mqVKUztgUK17bJiwDhwZ4Q8PT6YKUj5NgPcG6cUKxY HK6yxvoqH/s1DQJB3JHDSFVgY47ECmoHyQ5MvJN+naNrZJUIH0RTmmHNbQH772W7 m8I66jiDhXTd6+4v8DipvHJOSEv7ebG0Jf6gv7lc6w== -----ENDE DES ZERTIFIKATS----- 1 s:/C=US/O=Thawte, Inc./CN=Thawte SSL CA i:/C=US/O=thawte, Inc./OU=Certification Services Division/OU=(c) 2006 thawte, Inc. – Nur für autorisierte Verwendung/CN=thawte Primary Root CA -----ZERTIFIKAT BEGINNEN----- MIIEbDCCA1SgAwIBAgIQTV8sNAiyTCDNbVB+JE3J7DANBgkqhkiG9w0BAQUFADCB qTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw MDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNV BAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMTAwMjA4MDAwMDAwWhcNMjAw MjA3MjM1OTU5WjA8MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMVGhhd3RlLCBJbmMu MRYwFAYDVQQDEw1UaGF3dGUgU1NMIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAmeSFW3ZJfS8F2MWsyMip09yY5tc0pi8M8iIm2KPJFEyPBaRF6BQM WJAFGrfFwQalgK+7HUlrUjSIw1nn72vEJ0GMK2Yd0OCjl5gZNEtB1ZjVxwWtouTX 7QytT8G1sCH9PlBTssSQ0NQwZ2ya8Q50xMLciuiX/8mSrgGKVgqYMrAAI+yQGmDD 7bs6yw9jnw1EyVLhJZa/7VCViX9WFLG3YR0cB4w6LPf/gN45RdWvGtF42MdxaqMZ pzJQIenyDqHGEwNESNFmqFJX1xG0k4vlmZ9d53hR5U32t1m0drUJN00GOBN6HAiY XMRISstSoKn4sZ2Oe3mwIC88lqgRYke7EQIDAQABo4H7MIH4MDIGCCsGAQUFBwEB BCYwJDAiBggrBgEFBQcwAYYWaHR0cDovL29jc3AudGhhd3RlLmNvbTASBgNVHRMB Af8ECDAGAQH/AgEAMDQGA1UdHwQtMCswKaAnoCWGI2h0dHA6Ly9jcmwudGhhd3Rl LmNvbS9UaGF3dGVQQ0EuY3JsMA4GA1UdDwEB/wQEAwIBBjAoBgNVHREEITAfpB0w GzEZMBcGA1UEAxMQVmVyaVNpZ25NUEtJLTItOTAdBgNVHQ4EFgQUp6KDuzRFQD38 1TBPErk+oQGf9tswHwYDVR0jBBgwFoAUe1tFz6/Oy3r9MZIaarbzRutXSFAwDQYJ KoZIhvcNAQEFBQADggEBAIAigOBsyJUW11cmh/NyNNvGclYnPtOW9i4lkaU+M5en S+Uv+yV9Lwdh+m+DdExMU3IgpHrPUVFWgYiwbR82LMgrsYiZwf5Eq0hRfNjyRGQq 2HGn+xov+RmNNLIjv8RMVR2OROiqXZrdn/0Dx7okQ40tR0Tb9tiYyLL52u/tKVxp EvrRI5YPv5wN8nlFUzeaVi/oVxBw9u6JDEmJmsEj9cIqzEHPIqtlbreUgm0vQF9Y 3uuVK6ZyaFIZkSqudZ1OkubK3lTqGKslPOZkpnkfJn1h7X3S5XFV2JMXfBQ4MDzf huNMrUnjl1nOG5srztxl1Asoa06ERlFE9zMILViXIa4= -----ENDE DES ZERTIFIKATS----- 2 s:/C=US/O=thawte, Inc./OU=Certification Services Division/OU=(c) 2006 thawte, Inc. – Nur für autorisierte Verwendung/CN=thawte Primary Root CA i:/C=ZA/ST=Westkap/L=Kapstadt/O=Thawte Consulting cc/OU=Certification Services Division/CN=Thawte Premium Server CA/[email geschützt] -----ZERTIFIKAT BEGINNEN----- MIIERTCCA66gAwIBAgIQM2VQCHmtc+IwueAdDX+skTANBgkqhkiG9w0BAQUFADCB zjELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJ Q2FwZSBUB3duMR0wGwYDVQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UE CxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhh d3RlIFByZW1pdW0gU2VydmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNl cnZlckB0aGF3dGUuY29tMB4XDTA2MTExNzAwMDAwMFoXDTIwMTIzMDIzNTk1OVow gakxCzAJBgNVBAYTAlVTMRUweEwYDVQQKEwx0aGF3dGUsIEluYy4xKDAmBgNVBAsT H0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNpb24xODA2BgNVBAsTLyhjKSAy MDA2IHRoYXd0ZSwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYD VQQDExZ0aGF3dGUgUHJpbWFyeSBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOC AQ8AMIIBCgKCAQEArKDw+4BZ1JzHpM+doVlzCRBFDA0sbmjxbFtIaElZN/wLMxnC d3/MEC2VNBzm600JpxzSuMmXNgK3idQkXwbAzESUlI0CYm/rWt0RjSiaXISQEHoN vXRmL2o4oOLVVETrHQefB7pv7un9Tgsp9T6EoAHxnKv4HH6JpOih2HFlDaNRe+68 0iJgDblbnd+6/FFbC6+Ysuku6QToYofeK8jXTsFMZB7dz4dYukpPymgHHRydSsbV L5HMfHFyHMXAZ+sy/cmSXJTahcCbv1N9Kwn0jJ2RH5dqUsveCTakd9h7h1BE1T5u KWn7OUkmHgmlgHtALevoJ4XJ/mH9fuZ8lx3VnQIDAQABo4HCMIG/MA8GA1UdEwEB /wQFMAMBAf8wOwYDVR0gBDQwMjAwBgRVHSAAMCgwJgYIKwYBBQUHAgEWGmh0dHBz Oi8vd3d3LnRoYXd0ZS5jb20vY3BzMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU e1tFz6/Oy3r9MZIaarbzRutXSFAwQAYDVR0fBDkwNzA1oDOgMYYvaHR0cDovL2Ny bC50aGF3dGUuY29tL1RoYXd0ZVByZW1pdW1TZXJ2ZXJDQS5jcmwwDQYJKoZIhvcN AQEFBQADgYEAhKhMyT4qvJrizI8LsiV3xGGJiWNa1KMVQNT7Xj+0Q+pjFytrmXSe Cajd1FYVLnp5MV9jllMbNNkV6k9tcMq+9oKp7dqFd8x2HGqBCiHYQZl/Xi6Cweiq 95OBBaqStB+3msAHF/XLxrRMDtdW3HEgdDjWdMbWj2uvi42gbCkLYeA= -----ENDE DES ZERTIFIKATS----- --- Server-Zertifikat Betreff=/C=USA/ST=Kalifornien/L=San Jose/O=Die Linux-Kernel-Organisation/CN=*.kernel.org Emittent=/C=US/O=Thawte, Inc./CN=Thawte SSL CA --- Keine Client-Zertifikat-CA-Namen gesendet --- SSL-Handshake hat 3566 Bytes gelesen und 636 Bytes geschrieben --- Neu, TLSv1/SSLv3, Verschlüsselung ist RC4-SHA Der öffentliche Schlüssel des Servers ist 2048 Bit Sichere Neuverhandlung wird unterstützt Komprimierung: KEINE Erweiterung: KEINE SSL-Sitzung: Protokoll: TLSv1 Verschlüsselung: RC4-SHA Sitzungs-ID: EAB5C93513AA8829036C7BB9E3F74D99076C8A339EB220832F76DF73D52D0B22 Sitzungs-ID-ctx: Hauptschlüssel: 0A599E2D1CCAA8249E50871FDF03A2137BA034BCB20FA691D1413822BE08E15303CB0F59CDEC0376D670E08632EF0D46 Schlüsselargument: Keines PSK-Identität: Keine PSK-Identitätshinweis: Keiner SRP-Benutzername: Keiner TLS-Sitzungsticket: 0000 - ac 28 d2 81 da 5e b9 7f-43 52 ab e8 2c b0 ac 1d .(...^..CR..,... 0010 - c0 27 92 cb 5e 0e 1e 36-e4 77 34 bf 34 f8 cb 2f .'..^..6.w4.4../ 0020 - 04 af 1a 9b ea b3 9e 6f-32 44 4b ce d1 b4 2b 42 .......o2DK...+B 0030 - 55 a8 e3 ec 9a 6a 76 5d-c0 84 e0 aa 20 29 ae ac U....jv].... ).. 0040 - 7d 45 2b 3b 56 3c 2e 4b-d3 69 60 c8 fb 67 36 07 }E+;V...;.]p....... 00a0 - de 09 7d bf 3f b9 2c 9c-af 5d b1 af b2 9b bc 7a ..}.?.,..].....z 00b0 - 5e b3 92 26 02 3a 0e 47-c9 4b 10 6c 5b f4 2f c3 ^..&.:.GKl[./. Startzeit: 1380663897 Zeitüberschreitung: 300 (Sek.) Überprüfen Sie den Rückgabecode: 20 (lokales Ausstellerzertifikat konnte nicht abgerufen werden) ---
Ich würde Zertifikat 2 hinzufügen, das (letzte). Zertifikat 1 bräuchte ich nicht, da es ein Kettenzertifikat ist und durch Zertifikat 2 als Kettenzertifikat autorisiert ist. Ich könnte jedoch auch Zertifikat 1 hinzufügen, es würde nicht schaden.
Antwort2
Falls es jemandem hilft, ich hatte ein ähnliches Problem und habe es etwas anders gelöst. Mein Unternehmensproxy verwendete selbstsignierte Zwischenzertifikate. Dies war nicht nur in Befehlszeilenprogrammen meiner virtuellen Maschine, sondern auch in Browsern offensichtlich. Als ich in einem Browser (Chromiumim) zu einer externen Site navigierte, sah ich die Meldung „nicht vertrauenswürdig“, da die Site das selbstsignierte Zwischenzertifikat verwendete. Durch Klicken auf den Bereich mit dem Schlosssymbol in der URL-Leiste konnte ich die Zwischenzertifikate herunterladen. Ich bin dann einfach den folgenden Anweisungen gefolgt. Der Fix gilt global für Befehlszeilenprogramme und Browser usw.
https://wiki.archlinux.org/title/Benutzer:Grawity/Hinzufügen_eines_vertrauenswürdigen_CA-Zertifikats