GNU/Linux >> Znalost Linux >  >> Linux

Moje vlastní distribuce Kali Linux

Milujeme, když členové komunity přicházejí s novými nápady nebo zajímavými stavbami, a tohle nás zaujalo. Jacek Kowalczyk nás na twitteru zasáhl opravdu zajímavým příběhem. Jeho přístup k úpravě Kali, aby byla specifická pro jeho potřeby, je přesně tím důvodem, proč je pro nás tato funkce tak důležitá a chtěli jsme jeho příběh sdílet šířeji.

Jacekův recept na živé sestavení byl pro odlehčenou verzi Kali pomocí jeho oblíbených desktopových prostředí, včetně několika pěkných konfigurací desktopů. Mysleli jsme si, že bude nejlepší nechat Jaceka, aby se s vámi o svůj proces podělil krok za krokem, jeho vlastními slovy:

Jackův příběh

Strávil jsem spoustu času hledáním distribuce Linuxu, která by nejlépe vyhovovala mým potřebám. Chtěl jsem velmi lehký systém a testoval jsem spoustu variant (Manjaro, Debian, Ubuntu, Sparky, MX Linux, Antix, Arch, Anarchy, Antergos, Archlabs, Bunsen Labs a mnoho dalších). Také jsem testoval různá desktopová prostředí ve snaze najít to správné řešení (Xfce, LXDE, Mate, LXqt, i3, openbox, fluxbox, jwm a IceWM). I přes toto vyčerpávající testování jsem stále nebyl spokojen.

Začalo být jasné, že pro své potřeby potřebuji průběžné vydání Linuxu, které by bylo nejen lehké, ale také mělo dobrou podporu ze strany společnosti nebo komunity. Udělal jsem dlouhý seznam svých oblíbených distribucí Linuxu, ale stále jsem se nemohl rozhodnout.

Vždy jsem se chtěl zúčastnit projektu s otevřeným zdrojovým kódem a udělat malý vývoj. Napadlo mě, že mým řešením by mohlo být jednoduše vytvořit si vlastní nastavení – mohl bych vzít distribuci Linuxu, nainstalovat základní OS a upravit si ho. Zpočátku se to zdálo jako skvělá volba. Ale co by se stalo, kdybych potřeboval přeinstalovat? Nechtěl jsem znovu začínat s přizpůsobením nainstalovaného systému.

Věděl jsem, že chci vytvořit ISO, které bych mohl použít k instalaci svého systému kdykoli a kdekoli. Bylo by dokonale přizpůsobeno mým potřebám po instalaci. Z tohoto důvodu jsem začal hledat způsoby, jak přizpůsobit Debian, Arch nebo Manjaro. To mě přivedlo ke konfiguračním skriptům Kali Linux live-build. V tuto chvíli jsem věděl, že jsem našel řešení.

Kali Linux je průběžná distribuce založená na Debianu a má velkou podporu od týmu Offensive Security a také od aktivní komunity. Také jsem našel existující skripty pro i3wm poskytnuté týmem Kali. Toto byl můj výchozí bod. Začal jsem si hrát se seznamem vlastních balíčků a později s některými chroot soubory, které mají být zahrnuty do ISO. V tomto procesu jsem vygeneroval přes 20 ISO snímků, dokud jsem neměl jeden, se kterým jsem byl spokojený. Dokonce i nyní stále pokračuji v jeho zlepšování.

Dovolte mi vysvětlit, jak jsem vytvořil dvě varianty Kali linux – jednu s i3wm a jednu s správcem oken Openbox.

Vlastní Kali Linux s i3wm nebo Openbox

První nastavení jsem provedl na základě oficiální dokumentace Kali pro live-build-config. Tento proces byl:

  1. Nainstalujte Kali Linux. Použijte jakýkoli oficiální obrázek Kali.
  2. Nainstalujte další balíčky.
  3. Začněte hackovat varianty i3wm/Openbox. Zpočátku jsem je považoval za dvě samostatné sestavení, abych měl věci čistější. Dělal jsem dvojnásobnou práci, ale sledování bylo snazší.
[email protected]:~# apt install curl git live-build cdebootstrap
[email protected]:~# git clone git://gitlab.com/kalilinux/build-scripts/live-build-config.git
...
[email protected]:~# cd live-build-config/kali-config
[email protected]:~/live-build-config/kali-config# ls
common variant-e17 variant-i3wm variant-light variant-mate
variant-default variant-gnome variant-kde variant-lxde variant-xfce

U i3 jsem začal s úpravami ve stávající variantě-i3wm složku. Pro Openbox jsem zkopíroval variant-i3wm adresář do varianta-openbox a přidal do něj své úpravy

[email protected]:~/live-build-config/kali-config# cp -r variant-i3wm variant-openbox

Když to bylo na místě, dalším krokem byla úprava souboru kali-config//package-lists/kali.list.chroot přidat požadované balíčky, které jsem chtěl. Můj seznam balíčků pro i3wm najdete zde a Openbox zde. Všechny konfigurační soubory pro livecd by měly být zkopírovány do kali-config/common/includes.chroot/root/ . Tento adresář se používá, když prostředí livecd běží jako uživatel root.

Všechny konfigurační soubory pro nainstalovaný souborový systém by měly být zkopírovány do kali-config/common/includes.chroot/etc/skel/ . Soubor /etc/skel adresář se běžně používá jako šablona pro vytváření domovských adresářů uživatelů, takže každý nový uživatel bude mít ve výchozím nastavení soubory, které jsou umístěny v tomto adresáři.

Dusík je aplikace používaná k nastavení tapety. Soubor .config/nitrogen/bg-saved.cfg definuje nastavenou tapetu. Druhý soubor .config/nitrogen/nitrogen.cfg je hlavní konfigurační soubor pro dusík a definuje adresáře, kde jsou umístěny obrázky tapety. Každý z nich jsem vylepšil tak, aby vyhovoval mým preferencím. S tím na místě jsem pak také vylepšil applet správce napájení konfigurací .config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml .

Kromě toho jsem provedl řadu dalších úprav, abych si systém ještě více přizpůsobil. Aniž bychom zacházeli do přílišných podrobností, byli:

  • Pro i3wm

    • kali-config/common/includes.chroot/root/.i3wm_conkyrc - Konfigurace pro nástroj Conky. Tento soubor conkyrc je založen na konfiguraci conky ze Sparky Linux

    • kali-config/common/includes.chroot/root/.config/i3/config - Konfigurační soubor pro i3wm mi byl vygenerován při prvním přihlášení do relace i3wm a přidal jsem několik změn pro automatické spouštění dalších nástrojů, jako je:dusík, klipit, ovládání hlasitosti, a definoval jsem svá klíčová spojení pro mé nástroje a akce (vypnutí a restartovat).

  • Pro Openbox

    • kali-config/common/includes.chroot/root/.openbox_conkyrc - konfigurace pro conky. Openbox conkyrc je jiný než ten pro i3wm. Tento je založen na souboru conkyrc z CrunchBang++.

    • kali-config/common/includes.chroot/root/.config/openbox/autostart - Openbox autostart file definuje, které nástroje a aplikace se mají automaticky spouštět s openbox session:(dusík, clipit, volume vontrol, power manager, conky). Založil jsem to také na souboru z CrunchBang++.

    • kali-config/common/includes.chroot/root/.config/openbox/menu.xml - Toto je konfigurace nabídky Openbox, která řídí, co se stane, když kliknete pravým tlačítkem na plochu. Openbox je opravdu unikátní v tom, že tento soubor je plně řízen uživatelem a můžete v něm spouštět skripty a dělat další věci, jako je spouštění aplikací nebo dokonce zobrazení stavu aplikace přehrávače médií v nabídce dynamického kanálu. Openbox je opravdu výkonný.

    • kali-config/common/includes.chroot/root/.config/openbox/rc.xml - Témata a klávesové zkratky správce oken Openbox. To je pěkná zásoba, ale přidal jsem tam své klávesové zkratky pro mé oblíbené nástroje a akce, jako je vypnutí a restart.

    • kali-config/common/includes.chroot/root/.config/tint2/tint2rc - Nastavení panelu Tint2 a spouštěče. Zde jsem přidal své nejpoužívanější nástroje:terminál, editory, webové prohlížeče. K úpravě tohoto souboru jsem použil aplikaci tint2conf gui. Tato aplikace umožňuje snadno definovat témata panelu tint2 a přidávat spouštěče a další položky panelu.

Všechny změny pro i3wm lze nalézt zde a Openbox zde.

Také jsem přidal prohlížeč Firefox Developer Edition stažením instalačního balíčku a jeho rozbalením do kali-config/common/includes.chroot/opt/firefox/ a poté přidal toxického tox klienta do kali-config/common/includes.chroot/opt/toxic . Pro spuštění Firefoxu jsem přidal také shell skript kali-config/common/includes.chroot/usr/bin/firefox.sh .

#!/bin/bash
echo "Starting firefox developer edition"
/opt/firefox/firefox
  1. Sestavte ISO

Vzhledem k tomu, že všechna tato konfigurace byla mimo, nastal čas na zábavnější část, budování ISO!

[email protected]:~/live-build-config/kali-config# ./build.sh --distribution kali-rolling --variant i3wm --verbose
[email protected]:~/live-build-config/kali-config# ./build.sh --distribution kali-rolling --variant openbox --verbose

S těmi běžícími jsem pak musel jen čekat na dokončení práce. V mém případě to trvalo asi 3 hodiny. Soubory ISO, které vygeneroval, byly uloženy v obrázcích podsložku.

Konečná verze

Ve finální verzi konfigurací jsem se rozhodl portovat svou instalaci i3wm do mého Openboxu. Tímto způsobem při sestavování konfigurace Openboxu získávám oba správce oken, Openbox a i3. Na přihlašovací obrazovce si mohu vybrat relaci, kterou chci. Je zřejmé, že je mnohem snazší mít jedno „dokonalé“ ISO, než se mezi nimi rozhodovat při instalaci.

Zabalení

Milovali jsme Jacekův přístup identifikovat jeho potřeby a pak se nebát jen skočit a provést změny. Stejně jako mnoho věcí v Linuxu může být vlastní instalace zastrašující a vypadat jako velmi složitý proces. Ale jakmile se do toho pustíte a spustíte proces, je to opravdu docela jednoduché a množství práce, které vám to může ušetřit, je úžasné.

Díky Jacekovi za všechnu jeho tvrdou práci a ochotu sdílet ji s komunitou. Co dalšího Jacek chystá, můžete vidět na jeho stránce GitLab.


Linux
  1. Vydání Kali Linux 2018.2

  2. Vydání Kali Linux 2018.4

  3. Instalace PowerShellu na Kali Linux

  1. Vylepšení přístupnosti Kali Linuxu

  2. Následky vydání Kali Linuxu

  3. Vydání Kali Linux 2019.1

  1. Vydání Kali Linux 1.0.7

  2. Metabalíky Kali Linux

  3. Vydání Kali Linux 1.0.6