Як запустити Kali Linux на VirtualBox за допомогою Vagrant
Чи знаєте ви, що тепер ви можете керувати віртуальним екземпляром Kali Linux за допомогою Vagrant?. Будучи великим шанувальником Kali Linux, я радий поділитися з вами процесом запуску Kali Linux за допомогою гіпервізора Vagrant & VirtualBox. Kali Linux — це провідна операційна система для тестування на проникнення та аудиту безпеки на основі Debian.
Kali Linux містить кілька сотень інструментів, орієнтованих на комп’ютерну криміналістику, тестування на проникнення, реверс-інжиніринг, дослідження безпеки. Розробка Kali фінансується та підтримується Offensive Security, провідною навчальною компанією з інформаційної безпеки.
Для тих, хто новачок у Vagrant, Vagrant — це інструмент з відкритим вихідним кодом для створення та керування віртуальними машинними середовищами в простому у використанні єдиному робочому процесі.
Вимоги до налаштування
- Будь-який пристойний дистрибутив Linux – Debian, Ubuntu, Arch, Fedora тощо.
- Центральний процесор з розширеннями віртуалізації VT-X/AMD
- Встановлено VirtualBox та Vagrant
Крок 1: Встановіть Vagrant і VirtualBox
Щоб встановити Vagrant та VirtualBox, зверніться до наших попередніх інструкцій:
Крок 2: Завантажте коробку Kali Vagrant
Після встановлення VirtualBox та Vagrant завантажте образ коробки Kali Linux Vagrant. Для цього у вас є два варіанти.
- Завантажте повний образ Kali Linux – поставляється з усіма пакетами Kali
- Завантажити Kali Linux Light – містить урізаний список пакетів
Завантажити Vagrant box можна за допомогою команди:
$ vagrant box add kalilinux/rolling
==> box: Loading metadata for box 'kalilinux/rolling'
box: URL: https://vagrantcloud.com/kalilinux/rolling
This box can work with multiple providers! The providers that it
can work with are listed below. Please review the list and choose
the provider you will be working with.
1) libvirt
2) virtualbox
3) vmware_desktop
Enter your choice: 1
==> box: Adding box 'kalilinux/rolling' (v2023.3.0) for provider: libvirt
box: Downloading: https://vagrantcloud.com/kalilinux/boxes/rolling/versions/2023.3.0/providers/libvirt.box
==> box: Box download is resuming from prior download progress
==> box: Successfully added box 'kalilinux/rolling' (v2023.3.0) for 'libvirt'!
Ви також можете вказати провайдера в командному рядку:
# VirtualBox
$ vagrant box add kalilinux/rolling --providervirtualbox
# VMware
$ vagrant box add kalilinux/rolling --provider vmware_desktop
==> box: Loading metadata for box 'kalilinux/rolling'
box: URL: https://vagrantcloud.com/kalilinux/rolling
==> box: Adding box 'kalilinux/rolling' (v2023.3.0) for provider: vmware_desktop
box: Downloading: https://vagrantcloud.com/kalilinux/boxes/rolling/versions/2023.3.0/providers/vmware_desktop.box
...
Додані коробки Vagrant мають бути видні з
$ vagrant box list
kalilinux/rolling (virtualbox,v2023.3.0)kalilinux/rolling (vmware_desktop,v2023.3.0)
Крок 3: Запустіть віртуальну машину Kali Linux
Почніть зі створення порожнього каталогу для проекту Kali, а потім згенеруйте звідти файл Vagrant:
$ mkdir -p vagrant-projects/kali
$ cd vagrant-projects/kali
$ vagrant initkalilinux/rolling
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
Ця команда генерує для вас файл, який містить усі параметри конфігурації для віртуальної машини. Варто знати, що кожна команда повинна виконуватися з директорії, що містить Vagrantfile.Vagrantfile
vagrant
Ви можете змінити файл на свій смак перед виконанням команди:vagrant up
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.box = "kalilinux/rolling"
config.vm.box_check_update = false
config.vm.hostname = "kali-linux"
config.vm.provider "virtualbox" do |vb|
# Display the VirtualBox GUI when booting the machine
vb.gui = false
vb.memory = "2048"
end
end
Коли зі змінами закінчите, збережіть файл і запустіть
vagrant up
Ось приклад вихідних даних
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default:
default: Vagrant insecure key detected. Vagrant will automatically replace
default: this with a newly generated keypair for better security.
default:
default: Inserting generated public key within guest...
default: Removing insecure key from the guest if it's present...
default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Setting hostname...
==> default: Configuring and enabling network interfaces...
==> default: Mounting shared folders...
default: /vagrant => /home/jmutai/hacks/vagrant/labs/kali
default: /vagrant_data => /home/jmutai/Projects
Щоб отримати доступ до оболонки віртуальної машини, запустіть:
$ vagrant ssh
Ви також можете використовувати свій хост-клієнт і отримувати доступ до оболонки екземпляра Kali Linux через призначену приватну IP-адресу.ssh
$ ssh vagrant@192.168.90.99
Warning: Permanently added '192.168.90.99' (ECDSA) to the list of known hosts.
vagrant@192.168.90.99 password:
Linux kali 4.18.0-kali1-amd64 #1 SMP Debian 4.18.6-1kali1 (2018-09-10) x86_64
The programs included with the Kali GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Kali GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Fri Oct 19 15:20:41 2018 from 10.0.2.2
vagrant@kali:~$
Щоразу, коли ви вносите зміни до Vagrantfile, перезавантажуйте машину, щоб зміни набули чинності.
$ vagrant reload
Щоб зупинити інсталяцію, скористайтеся командою
$ vagrant halt
Якщо ви хочете зберегти поточний стан віртуальної машини під час її зупинки, використовуйте
$ vagrant suspend
Завдяки цьому ви повернетеся до того самого стану пізніше, коли буде запущено віртуальну машину.
Знищіть машину Vagrant, коли закінчите, запустивши
$ vagrant destroy
Підбиття підсумків
У цьому посібнику ми показали вам, як керувати екземпляром Kali Linux за допомогою Vagrant. Не забудьте ознайомитися з офіційною документацією, щоб дізнатися більше про варіанти конфігурації Vagrant.