Crea immagini ISO ufficiali dell'installer di Kali Linux con simple-cdd e debian-cd, supportando più architetture, varianti, mirror e build containerizzate.
Creatore di ISO del programma di installazione di Kali Linux, tramite simple-cdd (con debian-cd).
Questi sono gli stessi build-scripts che il team di Kali utilizza per generare le immagini base ufficiali di Kali Linux, disponibili su kali.org/get-kali/.
Queste immagini possono essere utilizzate per installare Kali con varie personalizzazioni durante la configurazione, da CD/DVD/Blu-ray/USB/sdCard. Per poter effettuare il live boot (ad esempio provare Kali senza alterare alcun sistema operativo esistente), vedere kali-live:
Crea il tuo Kali, oggi stesso!
Consigliamo di eseguire la build su un host basato su Linux, che corrisponda all'architettura desiderata.
Ci sono vari modi per prepararsi all'uso dello script di build kali-installer. Puoi scegliere tra:
build.sh - Esegui la build direttamente dalla tua macchinabuild-in-container.sh - Esegui la build dall'interno di un container (come Docker o Podman) Perché build.sh funzioni, richiederà accesso super user (ad esempio sudo o un container rootful). Tuttavia, KVM non è necessario.
Per prima cosa installa git e assicurati che il repository sia clonato localmente:
$ sudo apt-get install --no-install-recommends \
git ca-certificates
$ git clone https://gitlab.com/kalilinux/build-scripts/kali-installer.git
$ cd ./kali-installer/
Per compilare direttamente sul tuo host, con build.sh, installa le dipendenze di compilazione:
$ sudo apt-get install --no-install-recommends \
simple-cdd debian-cd \
cpio \
mtools \
dosfstools \
xorriso
Ora puoi usare ./build.sh, che creerà un'ISO dell'installer di Kali direttamente sulla tua macchina.
Se NON stai usando Kali come sistema operativo di base, dovrai installare il kali-archive-keyring di Kali affinché simple-cdd possa scaricare i pacchetti di Kali.
$ sudo apt-get install --no-install-recommends \
wget ca-certificates
$ wget https://http.kali.org/pool/main/k/kali-archive-keyring/kali-archive-keyring_20YY.X_all.deb
$ sudo apt-get install ./kali-archive-keyring_*_all.deb
$ wget https://http.kali.org/pool/main/d/debian-cd/debian-cd_*_all.deb
$ sudo apt-get install ./debian-cd_*_all.deb
NOTA: sostituisci 20YY.X con i valori mostrati qui, in kali-archive-keyring.
A seconda di quando lo esegui, potresti anche aver bisogno di una determinata versione di simple-cdd (Package Tracker: Debian/Kali) e/o di debian-cd (Package Tracker: Debian/Kali).
Ora puoi seguire Build From The Host (Kali) per installare le dipendenze di build.
Salteremo la configurazione di qualsiasi software per container.
Se preferisci eseguire la build dall'interno di un container, dovrai installare e configurare docker o podman sulla tua macchina.
docker richiede che l'utente sia aggiunto al gruppo Docker, oppure l'utilizzo dell'account root (ad es. $ sudo ./build-in-container.sh).podman è stato testato con rootful (ad es. $ sudo ./build-in-container.sh), tuttavia rootless non è supportato al momento.build-in-container.sh è un wrapper sopra build.sh. Rileva quale motore per container conforme a OCI utilizzare, si occupa di creare l'immagine del container se mancante, e poi avvia il container per eseguire la build dall'interno.
Hai tre modi per fornire l'immagine del container:
$ # Option #1 - Automated build (recommended)
$ ./build-in-container.sh
$ ./build-in-container.sh --force # If you need to rebuild the image from scratch
$
$
$
$ # Option #2 - Manual build
$ docker build -t kali-build/kali-installer .
$ # ...OR...
$ podman build -t kali-build/kali-installer .
$
$
$
$ # Option #3 - Use the pre-generated
$ docker pull registry.gitlab.com/kalilinux/build-scripts/kali-installer:latest
$ docker tag registry.gitlab.com/kalilinux/build-scripts/kali-installer:latest kali-build/kali-installer
$ # ...OR...
$ podman pull registry.gitlab.com/kalilinux/build-scripts/kali-installer:latest
$ podman tag registry.gitlab.com/kalilinux/build-scripts/kali-installer:latest kali-build/kali-installer
$
$ # ...then point the build at it:
$ ./build-in-container.sh # Locally built (automated or manual)
$ IMAGE=registry.gitlab.com/kalilinux/build-scripts/kali-installer:latest ./build-in-container.sh # Pre-generated
Se hai installati sia docker che podman, build-in-container.sh utilizzerà podman per impostazione predefinita. Per modificare questo comportamento, anteponi CONTAINER=docker prima di ./build-in-container.sh:
$ CONTAINER=docker ./build-in-container.sh [...]
Ora puoi usare ./build-in-container.sh (anziché ./build.sh), per creare un'immagine.
$ ./build.sh --help
Usage: build.sh [OPTIONS]
Build a Kali Linux Installer image.
Build options:
-a, --arch ARCH Build an image for this architecture (default: amd64)
Supported: amd64 arm64 armhf
-b, --branch BRANCH Kali branch used to build the image (default: kali-rolling)
Supported: kali-rolling kali-dev kali-last-snapshot
-k, --keep Keep intermediary build artifacts
-m, --mirror URL Mirror used to build the image (default: http://http.kali.org/kali)
-o, --output DIR Output directory (default: /home/kali/kali-installer/output)
-v, --variant VARIANT Variant of image to build (default: default)
Supported: default everything netinst purple
-x, --version VERSION What to name the image release as (default: rolling)
-h, --help Show this help and exit
Installer options:
-H, --hostname HOSTNAME Set system host name (default: kali)
-P, --packages PKGS Install extra packages (comma/space separated list)
Apt caching proxy:
Auto-detected: localhost:3142 (apt-cacher-ng), localhost:8000 (squid-deb-proxy).
If detected and http_proxy is not set, http_proxy is exported automatically.
Supported environment variables:
http_proxy HTTP proxy URL, see README.md for details
DEBUG Print extra debug output
Any --flag value can be pre-set via its env var (e.g. ARCH, BUILD_MIRROR, OUT_DIR)
Examples:
build.sh
build.sh --branch kali-rolling
build.sh -b kali-dev -v netinst -a arm64