apt-get upgrade openssl bringt Ubuntu 12.04 nicht auf die neueste Version

19920
user1182988

Ich habe Folgendes ausprobiert, kann aber später kein Erstellungsdatum erhalten:

Di, 21 Aug. 05:18:46 UTC 2012

Ich habe folgendes getan:

apt-get dist-upgrade apt-get update apt-get upgrade openssl 

und

apt-get purge openssl apt-get install openssl 

und

apt-get purge libcrypto1.0.0 apt-get install libcrypto1.0.0 

Alles scheint gut zu funktionieren, aber das Erstellungsdatum bleibt wie oben. Und der http://filippo.io/Heartbleed/-Test schlägt immer noch fehl.

Ich weiß, dass ich nicht verrückt bin, weil ich meinen identischen Server am Mittwoch aktualisieren konnte. (JEDE Art identisch mit Ausnahme der Hardware).

BEARBEITEN:

Ich habe die /etc/apt/sources.list -Dateien auf beiden Maschinen verglichen und sie scheinen identisch zu sein. Wie wurde ein Server aktualisiert und der andere nicht?

BEARBEITEN:

Tat wie vorgeschlagen:

apt-get purge openssl reboot apt-get install openssl reboot 

umsonst.

Ich habe dieselben Befehle in libssl1.0.0 ausprobiert, immer noch dieselbe Version wie oben aufgeführt.

Dieser hat mich stumm gemacht.

Irgendwelche Vorschläge?

BEARBEITEN

Sobald ich genügend Straßennutzer erhalten habe (15), werde ich die praktikablen Workarounds um +1 erhöhen

BEARBEITEN

Wie vorgeschlagen, habe ich apt-get mit --reinstall --print-uris ausgeführt und bin zurückgekommen:

http://us.archive.ubuntu.com/ubuntu/pool/main/o/openssl/openssl_1.0.1-4ubuntu5.12_amd64.deb 

Dann neu gestartet, gleiche Version wie oben aufgeführt. Immer noch herzzerissen

5
Hast du neu gestartet? Alte / anfällige Kopien bleiben in Verwendung / Speicher, solange die Prozesse, die sie verwenden, dies tun. Maxx Daymon vor 10 Jahren 0
Versuchen Sie einen Neustart. und versuchen Sie, die `deb`s 'von der ubuntu-Paketseite oder ähnlichem zu entfernen. Sie können sich auch auf Ihre eigenen Fragen stimmen und Kommentare hinterlassen, auch unterhalb der Punktebegrenzung. Wyatt8740 vor 10 Jahren 0
Was als nächstes für "dpkg-query --list libssl1.0.0" gemeldet wird, was "Dateiname:" von "apt-cache show libssl1.0.0" ist, stimmt dies mit der Datei überein, die Sie erhalten, wenn Sie "apt-get libssl1 herunterladen" herunterladen .0.0`? Maxx Daymon vor 10 Jahren 0
Außerdem hilft 'apt-get clean' zum Löschen des Download-Caches. Anschließend hilft 'apt-get install openssl libssl1.0.0 --reinstall --print-uris' und überprüft die Download-URIs. Laden Sie die Pakete manuell herunter, um sie zu überprüfen. Maxx Daymon vor 10 Jahren 0
Danke Maxx, ich habe die dpkg-Abfrage und apt-get download ausgeführt, und die Versionen stimmen überein. Ich habe dann apt-get clean ausgeführt, die Pakete heruntergeladen und ihren Inhalt geprüft, der mit den dpkg-query-Versionen übereinstimmt. Bedeutet das, dass das Repository defekt ist? user1182988 vor 10 Jahren 0
@ user1182988 Das Repository sieht von hier aus gut aus. Ich habe die Pakete heruntergeladen und überprüft und sie waren korrekt. Sie können die Pakete libssl und openssl deb manuell herunterladen und installieren, es sieht jedoch so aus, als ob apt den Patch auswählt und installiert. Stimmt Ihre sha1sum für "/ usr / bin / openssl" mit "22297ff89bbdfd4befb6f66f79e41210768aa81a" und "/ lib / x86_64-linux-gnu / libssl.so.1.0.0" mit "4fbb25a3e82d3dc354a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa undaaaaaaaaaaaaaa.aaaaa.aaaa.qxin.qxin.aqin.aaaaaqin.aqin.aaaaqin.aaaaqinq.aaqin.aq und einer Welche Server verwenden Sie, und gibt es eine Chance, dass Sie eine statisch verknüpfte libssl in sich haben? Maxx Daymon vor 10 Jahren 0
@ user1182988 Ein weiterer Test, den Sie durchführen können, ist das Herunterladen des .deb-Pakets und das Ausführen von debsums libssl1.0.0_1.0.1-4ubuntu5.12_amd64.deb, um zu überprüfen, ob die installierten Dateien mit den Summen des bekannt guten Pakets übereinstimmen. Führen Sie ein `dpkg -i filename.deb` aus, um die Installation manuell durchzuführen. OpenSSL * sollte * OpenSSL 1.0.1 zurückgeben 14. März 2012, erstellt am: Mo Apr 7 20:33:29 UTC 2014` Ihr Erstellungsdatum impliziert, dass das Paket nicht installiert wird. Überprüfen Sie die Protokolle von dpkg und apt auf Fehler. Maxx Daymon vor 10 Jahren 0
@ MaxxDaymon, Danke für das Helfen. Ich habe sha1sum auf openssl ausgeführt, und die Prüfsumme stimmt mit der von Ihnen angegebenen überein, jedoch stimmt die libssl.so.1.1.0 nicht überein. Ich habe mit meinem "identischen" Server verglichen und beide Prüfsummen verglichen. Ich suchte mein dpkg und apt logs, sah aber nichts, was wie ein Fehler aussah. Bei den Servern handelt es sich um typische LAMP mit Postfix und Dovecot sowie den zugehörigen Spam- / Sicherheits-Apps. Ich war dabei, libssl1.0.0 zu entfernen, aber es sagte mir, dass es zu viele Dinge gab, die sich darauf stützten, und dass ich es noch einmal überdenken sollte, es sei denn, "Ich weiß wirklich, was ich mache", also überlegte ich. Wird eine Dpkg-Rekonfiguration das Problem beheben? user1182988 vor 10 Jahren 0
@ user1182988 Können Sie eine `apt-cache-Richtlinie libssl1.0.0` ausführen und mir sagen, was Ihre installierten: und Kandidaten-Zeilen sind? Maxx Daymon vor 10 Jahren 0
@ user1182988 Ich denke, ich würde ein `wget http: // us.archive.ubuntu.com / ubuntu / pool / main / o / openssl / libssl1.0.0_1.0.1-4ubuntu5.12_amd64.deb` empfehlen, gefolgt von einem` dpkg --force-all --remove libssl1.0.0` und dann eine `dpkg --force-overwrite -i libssl1.0.0_1.0.1-4ubuntu5.12_amd64.deb` (Sie können auch eine normale` apt-get-Installation von libssl1 ausführen .0.0` stattdessen, da das deb nicht heruntergeladen werden muss. Ich habe gerade beide Ansätze auf einem 12.04-Testserver ausprobiert, und beide haben funktioniert. Maxx Daymon vor 10 Jahren 0
@ MaxxDaymon, du hast es genagelt. Ich habe `dpkg --force-all --remove libssl1.0.0` gefolgt von` apt-get install libssl1.0.0` ausgeführt, und jetzt ist mein Build 4/7/14. Ich habe gelernt, dass dpkg ein Paket entfernen wird, ohne alle Dinge zu entfernen, die davon abhängen (oder?). Danke, Maxx. Machen Sie eine Antwort daraus und ich werde es überprüfen. user1182988 vor 10 Jahren 0
@ user1182988 Fantastisch! Ich steige für ein paar Stunden aus, ich schreibe es in Form einer Antwort auf, wenn ich zurückkomme. Freut mich zu hören, dass Sie wieder im Geschäft sind! Maxx Daymon vor 10 Jahren 0
@ user1182988 Ich habe eine Antwort gepostet. Es war ein bisschen Textwand, also habe ich es auf das Wesentliche reduziert, da wir jetzt viele Diagnoseschritte in der Frage haben. Maxx Daymon vor 10 Jahren 0

4 Antworten auf die Frage

6
Maxx Daymon

Eine erneute Installation des Pakets erzwingen

Apt denkt, dass die Pakete installiert und aktualisiert werden. Die manuelle Überprüfung und Überprüfung von libssl schlägt eine andere Vorgehensweise vor, sodass die Paketdatenbank nicht mit den installierten Dateien übereinstimmt (möglicherweise wurden Dateien zuvor zuvor ohne Einbeziehung des Paket-Managers aktualisiert). Aus irgendeinem Grund wird das Paket nicht korrekt aktualisiert oder neu installiert. Dies setzt voraus, dass festgestellt wurde, dass das System feste Versionen meldet, aber immer noch als anfällig erscheint.

Versuchen Sie zunächst, die betroffenen Pakete zwangsweise neu zu installieren:

apt-get install --reinstall libssl1.0.0

Wenn dies fehlschlägt, versuchen Sie, die vollständige Entfernung des Pakets zu erzwingen, ohne Apts Abhängigkeitsverwaltung und Sanitätsprüfungen zu berücksichtigen:

dpkg --force-all --remove libssl1.0.0

An diesem Punkt ist das System effektiv "kaputt", weil libssl fehlt und viele Pakete installiert sind, die davon abhängig sind (dies ist es, was Apt so schwer zu verhindern versucht, und der Grund, warum wir hinter Apt zurückgehen). Installieren Sie also libssl1 neu .0.0, erneutes Herunterladen des neuesten Pakets aus dem Repository:

apt-get clean && apt-get install libssl1.0.0

Wenn Sie das bekannte, gute deb-Paket heruntergeladen haben, können Sie alternativ dpkg verwenden, um vorhandene Dateien zu installieren und das Überschreiben zu erzwingen:

dpkg --force-overwrite -i libssl1.0.0_1.0.1-4ubuntu5.12_amd64.deb

Testen Sie die installierten Dateien erneut und prüfen Sie sie (debsums, sha1sum) anhand der bekanntermaßen guten Konfiguration.

Genau richtig, und jetzt besteht der Heartbleed-Test. Vielen Dank! user1182988 vor 10 Jahren 0
2
KoKo

Wenn Ihre apt-get-Repositorys keine vorkompilierte 1.0.1g-OpenSSL- Version enthalten, laden Sie einfach Quellen von der offiziellen Website herunter und kompilieren Sie sie.

Unter der einzigen Befehlszeile die letzte openssl-Version kompilieren und installieren.

curl https://www.openssl.org/source/openssl-1.0.1g.tar.gz | tar xz && cd openssl-1.0.1g && sudo ./config && sudo make && sudo make install

Ersetzen Sie die alte openssl-Binärdatei durch einen neuen Link durch die neue.

sudo ln -sf /usr/local/ssl/bin/openssl `which openssl` 

Du bist alle gut!

# openssl version should return openssl version OpenSSL 1.0.1g 7 Apr 2014 

Siehe diesen Blog-Post .

Hinweis: Wie im Blogbeitrag angegeben, wird diese Problemumgehung nicht behoben "Nginx- und Apache-Server, die mit 1.0.1g-openSSL-Quellen neu kompiliert werden müssen".

Ja, das ist eine großartige und einfache Lösung. Die Sache ist, ich weiß, dass die Binaries verfügbar sind, seit das Upgrade am Mittwoch für meinen identischen Server funktionierte. Ich dachte vielleicht, dass Ubuntu es aus dem Repository zog. user1182988 vor 10 Jahren 0
0
Peter Lamby

Möglicherweise haben Sie 2 Versionen von OpenSSL in Ihrem PFAD. Dies kann passieren, wenn Sie Ihre eigene Version kompiliert haben.

Versuchen Sie das mal /usr/bin/openssl version.

Dies sollte die Position der Paketversion von OpenSSL sein.

Danke für die Antwort. Ich habe getan, was Sie vorgeschlagen haben (mit -a) und die gleiche Build-Date-Antwort erhalten. Ich habe es vermieden, meine eigene Version von etwas zu kompilieren, da diese Server leicht reproduzierbar sein müssen. user1182988 vor 10 Jahren 0
@ user1182988 - Ich gehe davon aus, dass das Übertragen der Dateien vom arbeitenden Server keine Option ist? Ramhound vor 10 Jahren 0
Das Übertragen der Dateien ist eine gangbare Option, aber ich fürchte, dass apt-get nicht funktioniert. user1182988 vor 10 Jahren 0
0
ITProStuff

Sie müssen libssl1.0.0 aktualisieren und anschließend den Server neu starten. Ohne Neustart geht es nicht.

Danke für die Antwort! Ich habe versucht, apt-get bereinigen libssl1.0.0, reboot, apt-get install libssl1.0.0, reboot - dieselbe Version wie oben. Habe dasselbe mit openssl versucht, immer noch die gleiche Version und den oben genannten Build. Das ist komisch! user1182988 vor 10 Jahren 0