GNU/Linux >> Linux Esercitazione >  >> Linux

Creare i tuoi metapacchetti Kali Linux

Una delle tante cose utili che possiamo fare con APT è creare metapacchetti, che sono effettivamente pacchetti vuoti che dichiarano un elenco di altri pacchetti come dipendenze. Kali Linux include metapacchetti per cracking di password, radio definita dal software, wireless, applicazioni web e altro, ma se hai esigenze specifiche (come la maggior parte delle persone), è facile e veloce definire i tuoi metapacchetti, che mostreremo in questo post.

Prima di iniziare, è necessario installare i devscript pacchetto, che include una serie di strumenti e utilità per la gestione dei pacchetti.

[email protected]:~# apt install devscripts

In Kali, tutti i metapacchetti sono definiti nel nome appropriato kali-meta pacchetto in modo da poterlo clonare e modificare in base alle nostre esigenze.

[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.

Il messaggio "impossibile effettuare il checkout" sopra sembra preoccupante ma significa solo che il ramo predefinito (kali/master) deve essere prima verificato, cosa che può essere eseguita come segue.

[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#

Per creare un nuovo metapacchetto (o aggiornarne uno esistente), dobbiamo modificare debian/control file con le informazioni sul pacchetto. Ogni metapacchetto è semplicemente un elenco separato da virgole di dipendenze di pacchetti, come quello per kali-linux-gpu mostrato di seguito.

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

Il nostro nuovo metapacchetto si chiamerà "kali-linux-mytools" e installerà Vagrant, VirtualBox, LibreOffice e Chromium. La nostra voce per questo metapacchetto in debian/control assomiglia a questo:

 [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.

Con il nuovo metapacchetto definito, è necessario aumentare il numero di versione con "dch" prima di creare il pacchetto. Verrà avviato un editor in cui inserire i dettagli delle modifiche in debian/changelog .

[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

Infine, possiamo procedere alla compilazione del nuovo pacchetto con il comando 'dpkg-buildpackage'. Poiché i metapacchetti sono solo elenchi di dipendenze, il processo di compilazione è molto rapido.

[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)

Quando la build è completa, il nostro nuovo metapacchetto può essere installato con 'apt' come qualsiasi altro pacchetto.

[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

Proprio così, abbiamo il nostro metapacchetto che possiamo archiviare su una condivisione di rete o in qualche altra posizione per configurare e configurare rapidamente le nostre nuove installazioni di Kali Linux.


Linux
  1. Costruisci il tuo container su Linux

  2. Qual è il tuo gestore di pacchetti Linux preferito?

  3. Linux:installare le intestazioni su Kali?

  4. Gestione avanzata dei pacchetti in Kali Linux

  5. Come aggiungere il mio software a un pacchetto Buildroot Linux?

Pianifica il tuo calendario delle vacanze dalla riga di comando di Linux

Rafforzamento di Kali Linux

Scarica Kali Linux

Kali Linux vs Parrot

Trova se un pacchetto è disponibile per la tua distribuzione Linux

Come creare facilmente la tua distribuzione Linux?