Wie überprüfe und validiere ich ein Deb-Paket vor der Installation?


17

Ich möchte so viel wie möglich über ein .debPaket wissen , bevor ich es installiere. Während der regulären Paketerstellung wird eine erhebliche Menge an Metadaten generiert, und ich weiß, dass es auch signierte Pakete gibt, wie die aus den Distributions-Repositorys.

Dies ist nicht die Antwort, die ich suche. Natürlich kann ich das Paket mit File-Roller öffnen und das Erstellungsdatum auf diese Weise ermitteln, aber ich möchte darüber hinausgehen. Ich denke an etwas Vergleichbares, wie Sie TLS-Zertifikate in Firefox überprüfen.

Schlüsselfrage:

  • Wann wurde das Paket gebaut?
  • Wenn möglich von wem oder wo wurde das Paket gebaut?
  • Was sind die Abhängigkeiten? (Link zur guten Antwort der Vollständigkeit halber.)
  • Ist das Paket unterschrieben?
    • Wer oder was hat es unterschrieben?

In Bezug auf den letzten Punkt kenne ich .dscDateien, obwohl diese normalerweise nicht auf Websites von Drittanbietern angeboten werden. (Vielleicht sollten wir hier das Bewusstsein dafür schärfen, dass sich dies in Zukunft ändern wird.)

Sie können google-chrome als Beispiel für Pakete von Drittanbietern verwenden.

Antworten:


11

Normale Deb-Dateien enthalten nicht alle Daten, die Sie benötigen, mit der Ausnahme, dass Sie dpkg-deb --infonach DEBIAN/controlDateien suchen können .

Sie können dsc-Dateien mit diesen Daten haben, wenn Sie von Launchpad oder offiziellen Repositorys herunterladen.

Deb-Dateien sind standardmäßig nicht signiert. Generell wird empfohlen, Deb-Pakete nicht von Sites zu installieren, denen Sie nicht vertrauen.

Es gibt keine speziellen Sicherheitsinstrumente in Debian-Paketen.


16

Benutze das:

dpkg-deb --info <deb file>

Verwenden Sie apt lieber, wenn Sie eine Signatur benötigen.


5

Alles was Sie brauchen sollten ist

dpkg -I package.deb

Hier ist ein Beispiel eines Pakets namens hostapd_2.1-0ubuntu1.2_amd64.deb auf meinem PC benannt ist

 ~$ dpkg -I '/home/mark/hostapd_2.1-0ubuntu1.2_amd64.deb' 
 new debian package, version 2.0.
 size 422472 bytes: control archive=2619 bytes.
      66 bytes,     3 lines      conffiles            
    1537 bytes,    31 lines      control              
    1085 bytes,    15 lines      md5sums              
    1375 bytes,    53 lines   *  postinst             #!/bin/sh
     359 bytes,    14 lines   *  postrm               #!/bin/sh
     570 bytes,    30 lines   *  preinst              #!/bin/sh
     204 bytes,     7 lines   *  prerm                #!/bin/sh
 Package: hostapd
 Source: wpa (2.1-0ubuntu1.2)
 Version: 1:2.1-0ubuntu1.2
 Architecture: amd64
 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
 Installed-Size: 1219
 Depends: libc6 (>= 2.15), libnl-3-200 (>= 3.2.7), libnl-genl-3-200 (>= 3.2.7), libssl1.0.0 (>= 1.0.1), lsb-base (>= 3.2-13), initscripts (>= 2.88dsf-13.3)
 Section: net
 Priority: optional
 Multi-Arch: foreign
 Homepage: http://w1.fi/wpa_supplicant/
 Description: user space IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator
  Originally, hostapd was an optional user space component for Host AP
  driver. It adds more features to the basic IEEE 802.11 management
  included in the kernel driver: using external RADIUS authentication
  server for MAC address based access control, IEEE 802.1X Authenticator
  and dynamic WEP keying, RADIUS accounting, WPA/WPA2 (IEEE 802.11i/RSN)
  Authenticator and dynamic TKIP/CCMP keying.
  .
  The current version includes support for other drivers, an integrated
  EAP authenticator (i.e., allow full authentication without requiring
  an external RADIUS authentication server), and RADIUS authentication
  server for EAP authentication.
  .
  hostapd works with the following drivers:
  .
   * mac80211 based drivers with support for master mode [linux]
   * Host AP driver for Prism2/2.5/3 [linux]
   * Driver interface for FreeBSD net80211 layer [kfreebsd]
   * Any wired Ethernet driver for wired IEEE 802.1X authentication.
 Original-Maintainer: Debian/Ubuntu wpasupplicant Maintainers <pkg-wpa-devel@lists.alioth.debian.org>

Und noch einer willkürlich angerufen pulseaudio_6.0-90-g75dd2-1_amd64.deb

~$ dpkg -I '/home/mark/pulseaudio/pulseaudio_6.0-90-g75dd2-1_amd64.deb' 
 new debian package, version 2.0.
 size 1421422 bytes: control archive=314 bytes.
       0 bytes,     0 lines      conffiles            
     222 bytes,     9 lines      control              
 Package: pulseaudio
 Priority: extra
 Section: checkinstall
 Installed-Size: 8144
 Maintainer: root@Ubuntu
 Architecture: amd64
 Version: 6.0-90-g75dd2-1
 Provides: pulseaudio
 Description: Package created with checkinstall 1.6.2

1

Versuchen apt-cache show <package-name>

Sie erhalten viele Metadaten (Maintainer, Original Maintainer, Depends, MD5), aber möglicherweise nicht alle, die Sie suchen.


2
Bitte sorgfältig lesen: vor der Installation
LiveWireBT

Dies gilt nur für Repositorys.
Pilot6

1

Ich möchte eine GUI-basierte, benutzerfreundliche Desktop-Lösung anbieten. Ich benutze Ubuntu Mate 18.04

  1. Doppelklicken Sie auf die DEB-Datei. Es wird in Gdebi eröffnet. Wenn es noch nicht installiert ist, können Sie Gdebi mit installieren sudo apt-get install gdebi.

    Bildbeschreibung hier eingeben

  2. Wenn Sie auf die .deb-Datei doppelklicken, finden Sie den Paketnamen, Abhängigkeiten, die zu installierenden Dateien und wo und vieles mehr.

  3. Wenn Sie das Paket installieren möchten, verwenden Sie Install Package

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.