Ich habe OpenSUSE 13.1 im Einsatz und habe die Computer hinter einer zentralen Firewall (ZyWALL mit Contentfilter) in verschiedene Subnetze aufgeteilt.
Ich habe regelmässig das Problem das bei Updates die Signaturen einiger Pakete falsch sind. Es ist ein Problem mit meiner Firewall.
Zuerst habe ich immer direkte Updates von den OpenSUSE Repositories gemacht. Lange funktionierte es und dann begangen die Probleme das bei einigen Paketen dann die Fehlermeldung kam das die Signatur falsch ist. Dann musste ich mich jeweils an der Firewall anmelden mit einem Benutzer bei dem der Contenfilter weitgehend offen ist. Das hat dann funktioniert.
Ich habe dann einen Server bereitgestellt der die Installations-Packete zwischenspeichert (Debian mit APT-Cacher-NG). Ist echt spitze vor allem wen ich mehrere Virtuelle Maschinen updaten muss. Hat auch lange problemlos funktioniert.
Jetzt tritt jedoch das Problem wieder auf. Unglücklicherweise sieht es so aus, dass die Packete schon kaputt sind, wenn sie auf dem Server ankommen. Ich habe jetzt wieder auf den OpenSUSE Server umgestellt. Muss dabei aber mich in der Firewall einwählen. Auf dem Cache-Server geht das natürlich nicht. Auf einem Computer tritt das Problem übrigens nicht auf. Dieser verwende ich ausschliesslich für das Internet und hat am wenigsten Einschränkungen beim Contentfilter. Bei den Updates für die Debian-Servern ist das Problem noch nie aufgetreten. Der Cache-Server hat die gleichen Einstellungen im Contentfilter wie der Benutzer in den ich mich einwählen muss.
Ich habe schon versucht das Problem der Einstellungen zu finden. Dass ist mir aber nicht gelungen.
Ich habe jetzt nach Erklärungen gesucht wie die Verbindungen von Yast2 genau funktionieren. Damit die die Probleme etwas eingrenzen kann. Ich möchte nicht mit einem Netzwerk Sniffer arbeiten solange ich noch nicht das Problem etwas eingrenzen kann - dafür fehlt mir etwas die Erfahrung.
Wenn mir einer einen Link oder Dokumente geben kann wäre das spitze. Oder hat jemand das Problem auch schon gehabt?
Soweit ich weiß verwendet YaST (oder eigentlich libzypp) einfach “curl” zum downloaden.
Ich bin mir nicht sicher, ob ich dein Problem jetzt richtig verstanden habe, aber bei den Standard-Updates werden normalerweise nicht die kompletten RPMs runtergeladen, sondern sogenannte “Delta RPMs” (Endung .drpm), die nur die Änderungen zum ursprünglichen Paket beinhalten.
Vielleicht kommt dein Contentfilter mit diesen .drpm Dateien nicht klar?
Abschalten kann man die Verwendung dieser in /etc/zypp/zypp.conf:
##
## Whether to consider using a .delta.rpm when downloading a package
##
## Valid values: boolean
## Default value: true
##
## Using a delta rpm will decrease the download size for package updates
## since it does not contain all files of the package but only the binary
## diff of changed ones. Recreating the rpm package on the local machine
## is an expensive operation (memory,CPU). If your network connection is
## not too slow, you benefit from disabling .delta.rpm.
##
# download.use_deltarpm = true
Andererseits werden die Pakete nicht direkt von download.opensuse.org runtergeladen, das ist nur ein Redirector.
Eventuell blockiert deine Firewall Dateien von bestimmten Mirrors?
Du kannst in den Paketquellen-URLs auch einen spezifischen Mirror statt download.opensuse.org verwenden, hier ist eine Liste: http://mirrors.opensuse.org/
Oder hat jemand das Problem auch schon gehabt?
Ich nicht. Aber ich verwende weder eine Firewall (schon gar nicht mit irgendwelchen Contentfiltern), noch einen Proxy.
Nur ein Standard ADSL-Modem/Router…
Die Delta RPMs können es nicht sein, für die Downloads via APT-Cacher-NG habe ich diese nämlich schon abgeschaltet. Und das Problem tritt sowohl bei den direkten Downloads als auch via Cacher auf.
Und was mich irritiert ist, dass das Problem nur bei einigen Paketen Auftritt und nicht allen. Könnte sein das es tatsächlich mit dem Redirektor zu tun hat. Wobei auch merkwürdig ist, das nur die Signatur reklamiert wird und nicht das ganze File. Denn wenn der Mirror nicht akzeptiert wird, müsste der Content Filter das ganze File blockieren.
Ich habe jetzt mit einem Mirror versucht. Mit dem Mirror funktionierst. Ich hab den Filter jetzt jedoch weiter aufgemacht und immer noch das selbe Problem. Wie kann ich herausfinden von welchem Mirror das System versucht hat die Datei zu laden und wie prüfe ich ob die Datei auf dem Mirror in Ordnung ist?
Nicht das am Schluss das Problem gar nicht die Firewall war. Ich hatte früher schon mal die Softwareverwaltung auf einen Mirror eingestellt und dann regelmässig Probleme mit den Updates. Und das war vor der Zeit als ich die zentrale Firewall hatte.