
Scripts para construir imágenes de Kali en la nube (fork de https://salsa.debian.org/cloud-team/debian-cloud-images)
Este repositorio tiene como objetivo crear imágenes de Kali para todos los proveedores de nube.
Es un fork de: https://salsa.debian.org/cloud-team/debian-cloud-images/
Necesitarás una copia (checkout) de este repositorio en tu disco y un paquete fai-server reciente (al menos 5.7) instalado. Instala los paquetes fai necesarios sin las recomendaciones (¡lo que evita que tu equipo se convierta en un servidor 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
Ejecuta make help y sigue las instrucciones
Ejemplo 1:
# make image_kali-rolling_nocloud_amd64
Esto generará algo de salida de registro (log) y los siguientes archivos:
image_kali-rolling_nocloud_amd64.build.jsonimage_kali-rolling_nocloud_amd64.infoimage_kali-rolling_nocloud_amd64.rawimage_kali-rolling_nocloud_amd64.tarEjemplo 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.tarEstas imágenes se pueden usar con QEMU-KVM, Virtualbox o cualquier otro backend de virtualización que admita imágenes de disco en formato raw.
Puedes iniciar sesión como root en la consola de la máquina virtual sin contraseña (pero no a través de SSH), y no hay otros usuarios. Puedes añadir nuevos usuarios usando adduser como siempre, y probablemente quieras añadirlos al grupo sudo.
Después de crear la imagen de disco, puedes probarla con kvm y esperar 5 segundos a que comience la secuencia de arranque:
# kvm -nic user,model=virtio -m 1024 -drive format=raw,file=image_kali-rolling_nocloud_amd64.raw
Como se ha mostrado anteriormente, se pueden construir distintos tipos de imágenes para diferentes casos de uso. Cada tipo de imagen se puede construir con el siguiente comando:
# make image_<suite>_<type>_<arch>
donde <suite> es uno de kali-rolling, kali-last-snapshot o kali-dev para cambiar de ramas. También puedes añadir -minimal al final de <suite> para crear una imagen sin ningún metapaquete. <type> puede ser cualquiera de los siguientes:
azure: Optimizado para la plataforma de computación en la nube de Microsoft, Azureec2: Optimizado para Amazon Elastic Compute Cloud (EC2)gce: Optimizado para Google Cloud Enginegeneric: Debería ejecutarse en cualquier entornogenericcloud: Debería ejecutarse en cualquier entorno virtualizado. Es
más pequeño que generic porque excluye los controladores para hardware físico.nocloud: Útil sobre todo para probar el propio proceso de construcción
en sí. No tiene cloud-init instalado, pero en su lugar permite que root
inicie sesión sin contraseña.Ante todo, estamos bastante seguros de que generic-vm-image debería arrancar en casi cualquier parte. Si realmente necesitas ajustes para tu imagen, empieza por examinar la estructura de directorios y añade únicamente los ajustes donde sea realmente necesario. Nuestra clase CLOUD (base) ya debería encargarse de la mayor parte de lo necesario para una imagen de nube.