- Base Images
- Kali On ARM
- Gem PDA
- Raspberry Pi - Full Disk Encryption
- Galaxy Note 10.1
- Raspberry Pi
- Acer Tegra Chromebook 13"
- ASUS Chromebook Flip
- BeagleBone Black
- Cubieboard 2
- HP Chromebook
- ODROID U2
- Raspberry Pi - Disk Encryption
- Raspberry Pi 2
- Samsung ChromeBook
- Samsung Chromebook 2
- USB Armory
- Utilite Pro
- Kali NetHunter Documentation
- NetHunter Rootless
- Installing NetHunter
- Installing NetHunter On the Gemini PDA
- NetHunter Components
- NetHunter Home Screen
- NetHunter Chroot Manager
- NetHunter KeX Manager
- NetHunter USB-Arsenal
- NetHunter BadUSB Attack
- NetHunter Application - Terminal
- NetHunter Custom Commands
- NetHunter DuckHunter Attacks
- NetHunter HID Keyboard Attacks
- NetHunter Kali Services
- NetHunter MAC Changer
- NetHunter MANA Evil Access Point
- NetHunter Man In The Middle Framework
- NetHunter Metasploit Payload Generator
- NetHunter Nmap Scan
- NetHunter Exploit Database SearchSploit
- Wireless Cards and NetHunter
- Building a New Device File
- Building NetHunter
- Porting NetHunter to New Devices
- Testing Checklist
- Patching the Kernel
- Configuring the Kernel - General
- Configuring the Kernel - Network
- Configuring the Kernel - Wifi
- Configuring the Kernel - SDR
- Configuring the Kernel - USB
- General Use
- Kali Network Repositories (/etc/apt/sources.list)
- HiDPI (High Dots Per Inch) Display
- Install NVIDIA GPU Drivers
- Kali Linux XFCE FAQ
- Kali Linux Forensics Mode
- Kali Linux Metapackages
- Configuring Yubikeys for SSH Authentication
- Kali In The Browser (Guacamole)
- Kali In The Browser (noVNC)
- All about sudo
- Updating Kali
- Kali's Domains
- Kali Development
- Public Packaging
- ARM Cross-Compilation
- Building Custom Kali ISOs
- 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
- Generate an Updated Kali ISO
- Live Build a Custom Kali ISO
- Preparing a Kali Linux ARM chroot
- Rebuilding a Source Package
- Recompiling the Kali Linux Kernel
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:
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.