
# Скрипты для сборки облачных образов Kali (форк https://salsa.debian.org/cloud-team/debian-cloud-images)
Этот репозиторий предназначен для сборки образов Kali для всех облачных провайдеров.
Это форк: https://salsa.debian.org/cloud-team/debian-cloud-images/
Вам понадобится копия этого репозитория на вашем диске и установленный свежий пакет fai-server (как минимум 5.7). Установите необходимые пакеты fai без рекомендованных зависимостей (это позволит избежать превращения вашего хоста в DHCP-сервер!).
# git clone https://salsa.debian.org/cloud-team/debian-cloud-images.git
# sudo apt install --no-install-recommends ca-certificates debsums dosfstools \
fai-server fai-setup-storage fdisk make python3 python3-httpx python3-libcloud \
python3-marshmallow python3-pytest python3-yaml qemu-utils udev
Выполните make help и следуйте инструкциям.
Пример 1:
# make image_kali-rolling_nocloud_amd64
Будут созданы некоторый вывод журнала и следующие файлы:
image_kali-rolling_nocloud_amd64.build.jsonimage_kali-rolling_nocloud_amd64.infoimage_kali-rolling_nocloud_amd64.rawimage_kali-rolling_nocloud_amd64.tarПример 2:
# make image_kali-last-snapshot-minimal_genericcloud_amd64
image_kali-last-snapshot-minimal_genericcloud_amd64.build.jsonimage_kali-last-snapshot-minimal_genericcloud_amd64.infoimage_kali-last-snapshot-minimal_genericcloud_amd64.rawimage_kali-last-snapshot-minimal_genericcloud_amd64.tarЭти образы можно использовать с QEMU-KVM, Virtualbox или любым другим бэкендом виртуализации, поддерживающим raw-образы дисков.
Вы можете войти как root в консоль виртуальной машины без пароля (но не через
SSH), других пользователей нет. Новых пользователей можно добавлять с помощью
adduser как обычно, и, вероятно, вам стоит добавить их в группу sudo.
После создания образа диска вы можете опробовать его с помощью kvm и подождать 5 секунд, пока начнётся загрузка:
# kvm -nic user,model=virtio -m 1024 -drive format=raw,file=image_kali-rolling_nocloud_amd64.raw
Как показано выше, можно собирать различные типы образов для разных сценариев использования. Каждый тип образа собирается следующей командой:
# make image_<suite>_<type>_<arch>
где <suite> — одно из значений kali-rolling, kali-last-snapshot или kali-dev
для переключения веток.
Кроме того, в конец <suite> можно добавить -minimal, чтобы создать образ без
метапакетов.
<type> может быть одним из следующих:
azure: оптимизирован для облачной платформы Microsoft Azureec2: оптимизирован для Amazon Elastic Compute Cloud (EC2)gce: оптимизирован для Google Cloud Enginegeneric: должен работать в любом окруженииgenericcloud: должен работать в любой виртуализированной среде. Он
меньше, чем generic, поскольку не включает драйверы для физического оборудования.nocloud: в основном полезен для тестирования самого процесса сборки.
Не содержит cloud-init, но вместо этого позволяет вход root без пароля.Прежде всего, мы довольно уверены, что generic-vm-image должен загружаться
практически везде. Если вам действительно нужны изменения для вашего образа, начните
с изучения структуры каталогов и вносите изменения только там, где это действительно
необходимо. Наш базовый класс CLOUD уже должен позаботиться о большей части того,
что нужно для облачного образа.