Anyone involved in or even significantly interested in cybersecurity has probably heard of Kali Linux. Since its early days as BackTrack, it has been considered the standard in penetration testing and security analysis platforms. In my opinion, it also happens to be one of the best Debian GNU/Linux distributions available.
SEE: An IT pro’s guide to robotic process automation (free PDF) (TechRepublic)
It is based on Debian stable (currently 10/buster), but with a much more current Linux kernel (currently 5.9 in Kali, compared to 4.19 in Debian stable and 5.10 in Debian testing).
Kali is available for installation in a number of different formats, for a number of different systems, and that variety can sometimes be a bit intimidating. So I am going to run down some of the possibilities, in hopes of clearing it up a bit.
The installation images available on the Kali Downloads page are:
- 32-bit (i386) and 64-bit (amd64) versions: Some distributions have dropped 32-bit support, but not Kali
- Full Installer: This is a slightly modified version of the Debian GNU/Linux installer. Yes, I can hear a lot of users out there going “Ugh”. It is a very old installer, primarily text-based, with no spiffy GUI interface. But the important thing is that it does the job very, very well in almost every situation and on almost every kind of system, without having to worry about graphic adapters, display resolution or much of anything else. The basic “Installer” is text-only, and the “Graphic Installer” is the same thing with mouse support added (but still no other graphics or GUI). The installation image includes the complete Kali system, so it can be installed without having an Internet connection. It weighs in at just over 4GB.
- NetInstaller: This is the same installation program as the full installer, but the downloaded image includes only enough to get the computer booted and connected to the Internet, and the rest of the packages are downloaded as needed during installation. It is a very svelte 471MB.
- Live: This is a bootable image that can be run from the USB stick (or DVD). As with other Linux Live distributions, you can use it to check that your hardware works properly with Kali Linux, but you can go even further than that. When it is copied to a USB stick, you can add a partition for “persistence”, where data created or modified while running the Live image will be saved across shutdown and rebooting – and that persistence data can even be encrypted. So you can use the USB stick as a conveniently portable Kali Linux platform.
- Virtual Images for VMware and VirtualBox: Just download and import the image, and you’re ready to go.
- ARM Images: Tailored and tested images for the Raspberry Pi, Pine 64, ODROID and others. Download the image, copy it to appropriate media, and it’s ready to go.
Each of the download links is accompanied by the SHA256 checksum for that image. Be SURE to validate the checksum before installing the image!
Full Installer / NetInstaller
As mentioned above, the only difference between these two is where the installer gets the packages from, so the following description applies equally to either one.
After booting the installation medium, you are presented with a series of screens:
- Installation language
- Locale / Keyboard layout
- Network Configuration
- User Account creation
- Disk Partitioning
- System Software selection
Please be aware that after you complete software selection, the installer immediately begins installation. There is no “last chance / are you sure” prompt!
I have included a screen shot of the Software Selection step to show what these “text-based” screens look like, and because I find this particular screen interesting and amusing. First (interesting) the default desktop is Xfce, but if you prefer Gnome 3 or KDE Plasma, you may select them here (I still wish they would offer the i3 desktop here…). Second (amusing) the “Kali Software” options include “Collection of tools (selecting this item has no effect)”. Huh? Hmmm… Well… Does not selecting this item have any effect? I don’t know… Anyway, you can get just a bare-bones Debian system by clearing the “top-10”, “default” and “large” choices.
SEE: Raspberry Pi 400: Its designer reveals more about the faster Pi 4 in the $70 PC’s keyboard
One other interesting note. Kali uses only their own repositories, and they do not have the Debian concept of OSS and Non-Free packages. But this hasn’t been entirely removed from the installer dialog, because if your system has a wireless network adapter which requires non-free firmware (such as the Intel wireless adapters), the installer will ask you if you want to install them from a separate medium, but if you simply say no, when the installation completes the drivers will be installed and wireless networking will be working.
One very significant change that Kali made not long ago was to stop using the root login with a well-known default password (hooray!), and actually disabling login to the root account, so you have to login to the account you created during the installation, and then use sudo to execute privileged commands.
Also, Kali recently changed to using the zsh command interpreter by default, rather than bash. Long-time Linux (and Unix) users like me might find this disconcerting at first, and of course if you know enough for it to bother you, then you certainly know enough to change it back (bash is also included in the base installation), but give zsh a chance and you will probably like it – or at least not be disturbed by it. As one of my students once said to me, “It’s time to join the 21st century”.
If you use the NetInstaller, when the installation is complete your system will be up to date (because it installs from the latest packages in the Kali repository). If you use the stand-alone Installer, when you boot the installed system you will need to install the latest updates. The command that I use to get everything done at once is:
sudo sh -c “apt update && apt dist-upgrade && apt autoremove”
This simply combines the three necessary commands (update the package list, install all upgrades and remove unused packages) in a single command line, which makes it easy to repeat from the command history list when necessary.
Live System
The Kali Live download is an ISO image which can be written to a USB stick or DVD, and you can then boot that medium and run a full Kali Linux system from it without disturbing whatever is currently installed on the disk drive. When you boot this image, there are a number of boot options:
- Live System
- Live System (fail safe mode)
- Live System (forensic mode)
- Live System (persistence)
- Live System (encrypted persistence)
- Installer
- Installer (with speech synthesis)