- Base Images
- Kali On ARM
- Acer Tegra Chromebook 13"
- ASUS Chromebook Flip
- BeagleBone Black
- Cubieboard 2
- Galaxy Note 10.1
- Gem PDA
- HP Chromebook
- ODROID U2
- Raspberry Pi
- Raspberry Pi - Disk Encryption
- Raspberry Pi 2
- Samsung ChromeBook
- Samsung Chromebook 2
- USB Armory
- Utilite Pro
- Kali NetHunter Documentation
- NetHunter Rootless
- NetHunter KeX Manager
- Building a New Device File
- Building NetHunter
- Installing NetHunter from Windows
- Installing NetHunter On the Gemini PDA
- Modifying the Kernel
- NetHunter Application - Csploit
- NetHunter Application - DriveDriod
- NetHunter Application - Keyboard
- NetHunter Application - Router Keygen
- NetHunter Application - Shodan
- NetHunter Application - Terminal
- NetHunter Application Update
- NetHunter BadUSB Attack
- NetHunter Chroot Manager
- NetHunter Components
- NetHunter Custom Commands
- NetHunter DuckHunter Attacks
- NetHunter Exploit Database SearchSploit
- NetHunter HID Keyboard Attacks
- NetHunter Home Screen
- NetHunter Kali Services
- NetHunter MAC Changer
- NetHunter Man In The Middle Framework
- NetHunter MANA Evil Access Point
- NetHunter Metasploit Payload Generator
- NetHunter Nmap Scan
- Porting NetHunter to New Devices
- Testing Checklist
- Wireless Cards and NetHunter
- Kali Linux on Android
- The Android Hacking Landscape
- General Use
- Kali Development
- Live Build a Custom Kali ISO
- Public Packaging
- Rebuilding a Source Package
- Recompiling the Kali Linux Kernel
- Building Custom Kali ISOs
- Generate an Updated Kali ISO
- ARM Cross-Compilation
- Custom Beaglebone Black Image
- Custom Chromebook Image
- Custom CuBox Image
- Custom EfikaMX Image
- Custom MK/SS808 Image
- Custom ODROID X2 U2 Image
- Custom Raspberry Pi Image
- Preparing a Kali Linux ARM chroot
Should I Use Kali Linux?
What’s Different About Kali Linux?
Kali Linux is specifically geared to meet the requirements of professional penetration testing and security auditing. To achieve this, several core changes have been implemented in Kali Linux which reflect these needs:
Single user, root access by design: Due to the nature of security audits, Kali Linux is designed to be used in a “single, root user” scenario. Many of the tools used in penetration testing require escalated privileges, and while it’s generally sound policy to only enable root privileges when necessary, in the use cases that Kali Linux is aimed at, this approach would be a burden.
Network services disabled by default: Kali Linux contains systemd hooks that disable network services by default. These hooks allow us to install various services on Kali Linux, while ensuring that our distribution remains secure by default, no matter what packages are installed. Additional services such as Bluetooth are also blacklisted by default.
Custom Linux kernel: Kali Linux uses an upstream kernel, patched for wireless injection.
A minimal and trusted set of repositories: given the aims and goals of Kali Linux, maintaining the integrity of the system as a whole is absolutely key. With that goal in mind, the set of upstream software sources which Kali uses is kept to an absolute minimum. Many new Kali users are tempted to add additional repositories to their sources.list, but doing so runs a very serious risk of breaking your Kali Linux installation.
Is Kali Linux Right For You?
As the distribution’s developers, you might expect us to recommend that everyone should be using Kali Linux. The fact of the matter is, however, that Kali is a Linux distribution specifically geared towards professional penetration testers and security specialists, and given its unique nature, it is NOT a recommended distribution if you’re unfamiliar with Linux or are looking for a general-purpose Linux desktop distribution for development, web design, gaming, etc.
Even for experienced Linux users, Kali can pose some challenges. Although Kali is an open source project, it’s not a wide-open source project, for reasons of security. The development team is small and trusted, packages in the repositories are signed both by the individual committer and the team, and — importantly — the set of upstream repositories from which updates and new packages are drawn is very small. Adding repositories to your software sources which have not been tested by the Kali Linux development team is a good way to cause problems on your system.
While Kali Linux is architected to be highly customizable, don’t expect to be able to add random unrelated packages and repositories that are “out of band” of the regular Kali software sources and have it Just Work. In particular, there is absolutely no support whatsoever for the apt-add-repository command, LaunchPad, or PPAs. Trying to install Steam on your Kali Linux desktop is an experiment that will not end well. Even getting a package as mainstream as NodeJS onto a Kali Linux installation can take a little extra effort and tinkering.
If you are unfamiliar with Linux generally, if you do not have at least a basic level of competence in administering a system, if you are looking for a Linux distribution to use as a learning tool to get to know your way around Linux, or if you want a distro that you can use as a general purpose desktop installation, Kali Linux is probably not what you are looking for.
In addition, misuse of security and penetration testing tools within a network, particularly without specific authorization, may cause irreparable damage and result in significant consequences, personal and/or legal. “Not understanding what you were doing” is not going to work as an excuse.
However, if you’re a professional penetration tester or are studying penetration testing with a goal of becoming a certified professional, there’s no better toolkit — at any price — than Kali Linux.
If you are looking for a Linux distribution to learn the basics of Linux and need a good starting point, Kali Linux is not the ideal distribution for you. You may want to begin with Ubuntu, Mint, or Debian instead. If you're interested in getting hands-on with the internals of Linux, take a look the "Linux From Scratch" project.