GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erstellen Sie Ihre eigenen Kali Linux Metapakete

Eines der vielen nützlichen Dinge, die wir mit APT tun können, ist das Erstellen von Metapaketen, die praktisch leere Pakete sind, die eine Liste anderer Pakete als Abhängigkeiten deklarieren. Kali Linux enthält Metapakete für das Knacken von Passwörtern, Software-Defined Radio, Wireless, Webanwendungen und mehr, aber wenn Sie spezielle Bedürfnisse haben (wie die meisten Leute), ist es schnell und einfach, Ihre eigenen Metapakete zu definieren, die wir in diesem Beitrag zeigen werden.

Bevor wir beginnen, müssen wir die devscripts installieren Paket, das eine Reihe von Tools und Dienstprogrammen für die Paketverwaltung enthält.

[email protected]:~# apt install devscripts

In Kali sind alle Metapakete im entsprechend benannten kali-meta definiert Paket, damit wir es klonen und an unsere Bedürfnisse anpassen können.

[email protected]:~# git clone git://gitlab.com/kalilinux/packages/kali-meta
Cloning into 'kali-meta'...
remote: Counting objects: 998, done.
remote: Compressing objects: 100% (809/809), done.
remote: Total 998 (delta 365), reused 0 (delta 0)
Receiving objects: 100% (998/998), 179.90 KiB | 570.00 KiB/s, done.
Resolving deltas: 100% (365/365), done.
warning: remote HEAD refers to nonexistent ref, unable to checkout.

Die obige Meldung „Auschecken nicht möglich“ sieht besorgniserregend aus, bedeutet aber nur, dass der Standard-Zweig (kali/master) zuerst ausgecheckt werden muss, was wie folgt geschehen kann.

[email protected]:~# cd kali-meta/
[email protected]:~/kali-meta# git checkout kali/master
Branch 'kali/master' set up to track remote branch 'kali/master' from 'origin'.
Switched to a new branch 'kali/master'
[email protected]:~/kali-meta#

Um ein neues Metapaket zu erstellen (oder ein vorhandenes zu aktualisieren), müssen wir die Datei debian/control bearbeiten Datei mit den Paketinformationen. Jedes Metapaket ist lediglich eine durch Kommas getrennte Liste von Paketabhängigkeiten, wie die für die kali-linux-gpu unten gezeigt.

Package: kali-linux-gpu
Architecture: any
Depends: ${misc:Depends},
 kali-linux,
 oclhashcat [amd64 i386],
 pyrit,
 oclgausscrack [amd64 i386],
 truecrack,

Unser neues Metapaket heißt „kali-linux-mytools“ und installiert Vagrant, VirtualBox, LibreOffice und Chromium. Unser Eintrag für dieses Metapaket in debian/control sieht so aus:

 [email protected]:~/kali-meta# tail -n 14 debian/control
 Package: kali-linux-mytools
 Architecture: any
 Depends: ${misc:Depends},
  kali-linux,
  virtualbox,
  vagrant,
  libreoffice,
  chromium,
 Description: My required Kali tools
  This is Kali Linux, the most advanced penetration testing and security
  auditing distribution.
  .
  This metapackage depends on the tools I install most often.

Wenn das neue Metapaket definiert ist, müssen wir die Versionsnummer mit „dch“ erhöhen, bevor wir das Paket erstellen. Dadurch wird ein Editor gestartet, in dem Sie die Details Ihrer Änderungen in debian/changelog eingeben können .

[email protected]:~/kali-meta# dch --local dookie

[email protected]:~/kali-meta# head -n 5 debian/changelog
kali-meta (2018.3.2dookie1) UNRELEASED; urgency=medium

  * Added kali-linux-mytools

 -- dookie <[email protected]>  Tue, 11 Sep 2018 09:40:10 -0600

Schließlich können wir mit dem Befehl „dpkg-buildpackage“ fortfahren, das neue Paket zu erstellen. Da Metapakete nur Listen von Abhängigkeiten sind, ist der Erstellungsprozess sehr schnell.

[email protected]:~/kali-meta# dpkg-buildpackage -us -uc -b
dpkg-buildpackage: info: source package kali-meta
dpkg-buildpackage: info: source version 2018.3.2dookie1
dpkg-buildpackage: info: source distribution UNRELEASED
dpkg-buildpackage: info: source changed by dookie <[email protected]>
dpkg-buildpackage: info: host architecture amd64
...
dpkg-deb: building package 'kali-linux-pwtools' in '../kali-linux-pwtools_2018.3.2dookie1_amd64.deb'.
dpkg-deb: building package 'kali-linux-top10' in '../kali-linux-top10_2018.3.2dookie1_amd64.deb'.
dpkg-deb: building package 'kali-linux-mytools' in '../kali-linux-mytools_2018.3.2dookie1_amd64.deb'.
 dpkg-genbuildinfo --build=binary
 dpkg-genchanges --build=binary >../kali-meta_2018.3.2dookie1_amd64.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 dpkg-source --after-build kali-meta
dpkg-buildpackage: info: binary-only upload (no source included)

Wenn der Build abgeschlossen ist, kann unser neues Metapaket wie jedes andere Paket mit „apt“ installiert werden.

[email protected]:~/kali-meta# apt install ../kali-linux-mytools_2018.3.2dookie1_amd64.deb

...

[email protected]:~/kali-meta# apt-cache policy vagrant virtualbox libreoffice chromium
vagrant:
  Installed: 2.1.2+dfsg-1
  Candidate: 2.1.2+dfsg-1
  Version table:
 *** 2.1.2+dfsg-1 500
        500 http://192.168.86.4/kali kali-rolling/main amd64 Packages
        100 /var/lib/dpkg/status
virtualbox:
  Installed: 5.2.18-dfsg-2
  Candidate: 5.2.18-dfsg-2
  Version table:
 *** 5.2.18-dfsg-2 500
        500 http://192.168.86.4/kali kali-rolling/contrib amd64 Packages
        100 /var/lib/dpkg/status
libreoffice:
  Installed: 1:6.1.1~rc1-2
  Candidate: 1:6.1.1~rc1-2
  Version table:
 *** 1:6.1.1~rc1-2 500
        500 http://192.168.86.4/kali kali-rolling/main amd64 Packages
        100 /var/lib/dpkg/status
chromium:
  Installed: 68.0.3440.75-2
  Candidate: 68.0.3440.75-2
  Version table:
 *** 68.0.3440.75-2 500
        500 http://192.168.86.4/kali kali-rolling/main amd64 Packages
        100 /var/lib/dpkg/status

Einfach so haben wir unser eigenes Metapaket, das wir auf einer Netzwerkfreigabe oder an einem anderen Ort speichern können, um unsere frischen Kali-Linux-Installationen schnell einzurichten und schnell zu konfigurieren.


Linux
  1. Erstellen Sie Ihren eigenen Container unter Linux

  2. Was ist Ihr Lieblings-Linux-Paketmanager?

  3. Kali Linux 1.0.7-Veröffentlichung

  4. Kali-Linux-Metapakete

  5. Kali Linux 1.0.6-Veröffentlichung

Planen Sie Ihren eigenen Feiertagskalender auf der Linux-Befehlszeile

Härten von Kali Linux

Kali-Linux-Download

Kali Linux gegen Papagei

Finden Sie heraus, ob ein Paket für Ihre Linux-Distribution verfügbar ist

Wie kann man ganz einfach seine eigene Linux-Distribution erstellen?