A cdimage.kali.org/current/ link to kali-linux-2026.2-installer-amd64.iso now returns a 404, and your connection is fine. Kali Linux 2026.3 images on the mirror are dated 9 October 2026 and /current/ pointed to them by 20 October, while the Get Kali page still linked the 2026.2 downloads on 25 October with no 2026.3 announcement posted. You can install Kali Linux 2026.3 today from either release’s ISO, because the installer takes the same path and a 2026.2 system reaches 2026.3 with one full upgrade.
Below are working download URLs and SHA256 hashes for both releases, the GPG check, and every installer screen up to the first Xfce login. Then the post-install jobs that trip people up: the deb822 APT sources file, missing VM graphics firmware, guest tools and SSH. Every installer screen and post-install check below comes from a fresh UEFI install of the 2026.3 ISO in a QEMU/KVM VM in October 2026.
Download the Kali Linux 2026.3 or 2026.2 ISO
Take the installer image unless you’ve a reason not to. It carries the default toolset on the disc, so the install finishes even with a slow mirror, and it works on laptops, desktops and virtual machines alike. The live images are a different product: they boot to a desktop without touching the disk, which is what you want for forensics, and they are published as torrents only. A plain wget against the mirror directory returns a 404 for them on both releases.
| Image | 2026.3 size | 2026.2 size | Use it for |
|---|---|---|---|
| installer-amd64.iso | 4.7 GiB | 4.5 GiB | Laptops, UEFI desktops and VMs. Installs offline with the default tools. This guide uses it. |
| installer-netinst-amd64.iso | 712 MiB | 743 MiB | A small download on a fast link. Everything past the base system comes from the mirror. |
| live-amd64.iso | torrent only | torrent only | A USB stick that boots without installing, for forensics or a quick look. |
| installer-everything-amd64.iso | torrent only | torrent only | Air-gapped builds that need every packaged tool on the disc. |
| installer-purple-amd64.iso | 4.6 GiB | 4.6 GiB | Kali Purple, the defensive SOC build. |
| installer-arm64.iso | 3.8 GiB | 3.7 GiB | Apple Silicon VMs under UTM or Parallels and other ARM64 machines. |
Every file name follows the pattern kali-linux-<release>-<image>, so the 2026.3 installer is kali-linux-2026.3-installer-amd64.iso. Versioned directories on cdimage only last two releases: the mirror keeps the current and the previous one, and older releases move to old.kali.org/kali-images/ (2026.1 already lives there). These are the direct installer URLs today:
https://cdimage.kali.org/kali-2026.3/kali-linux-2026.3-installer-amd64.iso
https://cdimage.kali.org/kali-2026.2/kali-linux-2026.2-installer-amd64.iso
Pull the two checksum files first, then read the installer’s file name out of SHA256SUMS instead of typing it. The /current/ path always follows the newest release, so these lines fetch whatever Kali ships next quarter without an edit:
mkdir -p ~/kali-iso && cd ~/kali-iso
wget https://cdimage.kali.org/current/SHA256SUMS https://cdimage.kali.org/current/SHA256SUMS.gpg
ISO=$(grep -oE 'kali-linux-[0-9.]+[a-z]?-installer-amd64\.iso$' SHA256SUMS)
echo "$ISO"
wget "https://cdimage.kali.org/current/$ISO"
The echo should print kali-linux-2026.3-installer-amd64.iso until the next release replaces it. For the 2026.2 ISO, use the same three files from https://cdimage.kali.org/kali-2026.2/ instead of /current/.
Expect the 5 GB installer to take a while on an average connection; the lab VM pulled it from the mirror in about five minutes. Keep all three files in the same directory, because the checksum step below looks for the ISO next to SHA256SUMS.
Error: “ERROR 404: Not Found” on cdimage.kali.org/current
The /current/ directory is a pointer to the newest release, not a fixed folder. Once the 2026.3 files arrived, every /current/kali-linux-2026.2-* URL in older guides, scripts and Packer templates stopped resolving. The checksum list in the same directory shows what it holds now:

For a one-off download, point the URL at the versioned directory (kali-2026.2/), which works until 2026.4 pushes 2026.2 over to old.kali.org. Scripts should read the file name from /current/SHA256SUMS as shown above, since a hardcoded file name under /current/ breaks every quarter.
Verify the Kali ISO SHA256 and signature
A checksum only proves something if the checksum file itself came from Kali, so check the signature first and the hash second. Import Kali’s archive signing key and confirm its fingerprint matches 827C 8569 F251 8CC6 77FE CA1A ED65 462E C8D5 E4C5, the value Kali publishes in its secure download guide:
wget -q -O - https://archive.kali.org/archive-key.asc | gpg --import
gpg --fingerprint 827C8569F2518CC677FECA1AED65462EC8D5E4C5
Now verify the detached signature, then let sha256sum compare the ISO against its line in the signed list:
gpg --verify SHA256SUMS.gpg SHA256SUMS
sha256sum -c SHA256SUMS --ignore-missing
You need two things in the output: Good signature from "Kali Linux Archive Automatic Signing Key (2025)" and OK next to the ISO name. The trust warning under the signature is normal, since you haven’t signed Kali’s key with a key of your own:
gpg: Signature made Mon 19 Oct 2026 11:57:14 PM EDT
gpg: using RSA key 827C8569F2518CC677FECA1AED65462EC8D5E4C5
gpg: Good signature from "Kali Linux Archive Automatic Signing Key (2025) <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 827C 8569 F251 8CC6 77FE CA1A ED65 462E C8D5 E4C5
kali-linux-2026.3-installer-amd64.iso: OK
Both checks passed on the lab download:

These are the SHA256 values from the signed lists for the images people search for most. The 2026.2 list was signed on 24 June 2026 and the 2026.3 list on 19 October 2026, and both signatures verified against the same key in the lab. If your hash differs, delete the file and download it again, because a truncated ISO produces exactly the boot failures people blame on the installer.
| File | SHA256 |
|---|---|
| kali-linux-2026.3-installer-amd64.iso | db9cbed33edb45727d16911813c2434fcd1419585007884153be22a03b30ec2f |
| kali-linux-2026.3-installer-netinst-amd64.iso | 0dd3e70f2e0b092286b29355450bc79a034a13fb1d5b4bf83c297149115258cd |
| kali-linux-2026.3-live-amd64.iso | 93a40ef53936719119824c3f0f0742ab50a045e2e082b95e382cf9f2f1f8acbb |
| kali-linux-2026.2-installer-amd64.iso | 6dbefacc95e3b556c19c48e8bae39b8b505e2d3a1aba0bfb7ab62b036c3d2ba3 |
| kali-linux-2026.2-installer-netinst-amd64.iso | d32f929dacc48134a31461a09f2160d13ad1d26b820cee920446813ca979b39b |
| kali-linux-2026.2-live-amd64.iso | 49e90e694d1b3dedd47f94afbe99dfdd5afb41c8462b638bbd332929769c773a |
Treat this table as a cross-check, not the source of truth. The signed SHA256SUMS next to the image is the authority, and Kali has re-spun point releases before (2025.1c is the latest example on its release history page).
Check the hardware before you start
Kali runs on modest hardware, but the default toolset is bigger than most people expect. A fresh 2026.3 install put 2,909 packages and 16 GB on the root filesystem before a single update, so size the disk for that, not for the documented minimum:
- CPU: x86_64 or arm64, two cores or more
- RAM: 4 GB for a usable Xfce session, 8 GB if Burp and a browser run together
- Disk: 40 GB to start, 50 GB or more for
kali-linux-large - Firmware: UEFI with Secure Boot turned off
- Network: wired or Wi-Fi with a working route to the Kali mirror
Secure Boot is the one that wastes an afternoon. With Secure Boot on, UEFI firmware refuses to start the Kali installer and moves on to the next boot device, so the USB stick appears to do nothing (the troubleshooting section shows the exact message). We gave the lab VM 2 vCPUs and 6 GB, and it idled at 950 MB of RAM after login, which is why 4 GB is a floor rather than a target.
The other hardware question is Wi-Fi. Laptop cards rarely do monitor mode and packet injection, which most wireless work in Kali depends on, so a USB adapter is the usual add-on. The Alfa AWUS036ACM (paid link) uses the MediaTek MT7612U chipset, whose driver is already in Kali’s kernel, so it works without building a DKMS module. Our Wi-Fi adapter guide for Kali compares it with the other chipsets and shows how to confirm injection works.
Write the ISO to a USB drive
Skip this section for a virtual machine: attach the ISO as a virtual CD instead, and our guide on installing VirtualBox covers the host side. For bare metal you need a USB drive of 8 GB or more. Confirm the device name with lsblk first, because dd overwrites whatever disk you point it at without asking:
lsblk -d -o NAME,SIZE,MODEL,TRAN
sudo dd if=kali-linux-2026.3-installer-amd64.iso of=/dev/sdX bs=4M status=progress conv=fsync
Replace /dev/sdX with the USB drive from the lsblk list, which shows usb in the TRAN column. On Windows and macOS, balenaEtcher writes the image the same way, and Ventoy works if you keep several ISOs on one stick.
Boot the Kali installer
Boot from the USB drive or the virtual CD and read the line under the Kali logo before you press anything. It names the firmware mode the menu came up in. If it says BIOS on a machine you meant to run as UEFI, fix the boot order now, because a mixed install fails at the first reboot rather than here:

Graphical install and Install build the same system; the second runs the same questions in a text interface. The dark contrast menu and the speech synthesis entry exist for low-vision and blind users, and Advanced options holds rescue mode and automated installs. Press Enter on Graphical install.
Set the language, location and keyboard
The first three screens set the system locale, seed the time zone list and pick the console keymap. Choose what matches the hardware in front of you, because a wrong keymap is the usual reason a first login “fails” with the right password. Start with the language:

Countries on the next screen are filtered by the language you picked. The country also seeds the time zone list two screens later, so pick where the machine actually runs. If your country is missing, choose other at the bottom to see the full list:

Slow down on the keymap. It’s independent of the language, so a German keyboard on an English system needs German selected here. A wrong choice only shows up later, when the password you set during the install no longer matches what you type at the login screen:

After this screen the installer loads its remaining components and runs DHCP on the first network card, which took about a minute in the lab.
Name the host
The hostname defaults to kali. That is fine for one machine, but on a lab with several Kali VMs every shell prompt and SSH known_hosts entry looks the same, so give each box a name you can tell apart. This install uses pentest01:

Leave the domain name empty unless you run internal DNS or plan to join a directory. The installer accepts a blank field without complaint:

Press Continue to move on to the user account. Nothing has been written to disk yet, so Go Back still undoes any choice so far.
Create the user account
Kali has not used a root login with the toor password for years. The installer creates one unprivileged user with sudo rights and leaves root locked, which is the right default for a machine full of offensive tools. The account name is derived from the full name, so type that first:

Next comes the username, pre-filled from the first word of the full name in lowercase. Overwrite it if you want something else:

Then set the password twice. You’ll type it at every sudo, so pick one you can live with. If you drive the installer from the keyboard, Tab from the first field lands on the “Show Password in Clear” checkbox, so press it twice to reach the second password box:

Both fields show the same number of dots when they match. A mismatch sends you back to this screen after Continue.
Set the clock
This screen only appears when the country you chose spans several time zones. Pick yours, since timestamps in logs, packet captures and reports depend on it:

Disk detection follows and takes a few seconds, after which the partitioner opens.
Partition the disk
Guided, use entire disk is the right choice for almost everyone. It wipes the selected disk, creates an EFI system partition when you booted in UEFI mode, and puts the rest under /. Take one of the LVM options only if you already know you want snapshots or full-disk encryption, and back up the target disk first because the installer asks once:

Pick the disk next. A VM disk shows up as sda or vda, and a laptop NVMe drive as nvme0n1:

Five layouts are on offer, including a server layout with separate /var and /srv and a small-disk scheme for drives under 10 GB. Keep All files in one partition on a personal pentest machine, since separate partitions only earn their keep on a shared server:

On the overview you see the table before anything is written. On the 42.9 GB virtual disk the guided layout produced a 1.0 GB ESP, a 39.7 GB ext4 root and 2.2 GB of swap, and Finish partitioning is already highlighted:

Writing defaults to No on purpose, because this is the step that destroys whatever was on the disk. Press the Down arrow to select Yes, then Continue:

Formatting and the base system come next, which took about three minutes from the full ISO. Nothing needs your input until the software screen appears.
Choose the desktop and the tool collection
This screen decides what you log into and how many tools land on disk. The defaults (Xfce, top10 and default) are what every Kali tutorial assumes, and we kept them for this install:

Read the rows as two independent choices:
- Xfce: light, the default, the one the Kali team tests hardest
- GNOME: the heaviest of the three, for people already used to it
- KDE Plasma: a Windows-like layout with deep settings
top10: exactly ten tools, from aircrack-ng and Burp Suite to Metasploit, nmap, sqlmap and Wiresharkdefault: the full recommended set, the same tools the live image carries
The two group headers do nothing when toggled. Neither kali-linux-large nor kali-linux-everything is offered here, so add them with apt after the install. Watch the keyboard on this screen: Enter toggles the highlighted checkbox instead of pressing Continue, so press Tab to move focus to the button first.
Unpacking and configuring the default set is the long part of the install:

In the lab, the time from pressing Continue on the software screen to the completion screen, including GRUB, was about 16 minutes from the full ISO. The netinst image takes longer because every package comes off the mirror.
Finish the install and reboot
On UEFI the installer writes GRUB to /boot/efi/EFI/kali/grubx64.efi without asking, and adds a kali boot entry to the firmware. Only a legacy BIOS install prompts for a boot disk. When the completion screen appears, remove the USB drive or detach the ISO before you press Continue:

A machine that boots straight back into the installer still has its install media attached, so pull the stick or detach the ISO and reboot again. Nothing on the new disk is affected.
Log in and confirm the Kali release
LightDM comes up with the hostname in the top bar and an empty username field. Type the username, press Enter, then the password:

Xfce loads in a few seconds with Home, File System and Trash on the desktop and the menu, browser and terminal in the top panel. In a VM you may also see a cdrom0 icon for the now-empty virtual drive:

Open a terminal with Ctrl+Alt+T and check what you installed. This is the moment to catch an old ISO somebody handed you:
uname -a; grep -E "^(PRETTY_NAME|VERSION_ID|VERSION_CODENAME)" /etc/os-release; df -h /
Your output should show the 7.1 kernel and the release in VERSION_ID:
Linux pentest01 7.1.5+kali-amd64 #1 SMP PREEMPT_DYNAMIC Kali 7.1.5-1kali1 (2026-07-29) x86_64 GNU/Linux
PRETTY_NAME="Kali GNU/Linux Rolling"
VERSION_ID="2026.3"
VERSION_CODENAME=kali-rolling
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 37G 16G 19G 45% /
And the same check in the Xfce terminal:

PRETTY_NAME reads “Kali GNU/Linux Rolling” on every release, so read VERSION_ID when you need to know which snapshot you’re on.
What changed between the 2026.2 and 2026.3 installs
We installed 2026.2 the same way in September 2026 for the previous version of this guide, on the same kind of UEFI KVM machine. Putting the two fresh installs side by side shows what the new ISO changes before you run any update:
| Measured on a fresh install | 2026.2 ISO | 2026.3 ISO |
|---|---|---|
| Kernel | 6.19.14 | 7.1.5 |
| Installed packages | 2,880 | 2,909 |
| Root filesystem used | 15 GB | 16 GB |
| OpenSSH | 10.3p1 | 10.4p1 |
| Initrd in a VM | 62 MB | 63 MB |
| Xfce panel | 4.20.7 | 4.20.8 |
| APT sources | kali.sources (deb822) | kali.sources (deb822) |
The kernel is the change that matters. 2026.2 shipped 6.19 because of reported incompatibilities between 7.0 and the NVIDIA DKMS driver, and the 2026.3 ISO now lays down 7.1 directly, so a system with the proprietary NVIDIA driver should confirm the module builds on first boot. Everything else is the normal quarterly drift, and the two habits 2026.2 broke (no sources.list, no GPU firmware in VMs) carry over unchanged.
Run the first full upgrade
Kali is rolling, so an ISO starts aging the day it is built. On 25 October the fresh 2026.3 install already had 798 packages waiting after apt update, so make an upgrade the first job after login:
sudo apt update
sudo apt -y full-upgrade
Use full-upgrade, which is what Kali documents. On a rolling release, packages often have to remove or replace others to move forward, and plain apt upgrade holds those back without making it obvious. The summary APT printed on the lab install shows exactly that case:
Summary:
Upgrading: 798, Installing: 21, Removing: 3, Not Upgrading: 0
Download size: 1,855 MB
Freed space: 468 MB
apt upgrade never removes a package, so those three removals, and every upgrade that depends on them, would have been held back. The run took about 15 minutes and ended with “A reboot may be required to replace a running dbus-daemon”, so reboot once before you start real work.
Find the APT sources file
Older Kali guides tell you to edit /etc/apt/sources.list. Fresh installs since 2026.2 do not create that file; the repository lives in a deb822 stanza in /etc/apt/sources.list.d/kali.sources:
ls /etc/apt/sources.list /etc/apt/sources.list.d/
cat /etc/apt/sources.list.d/kali.sources
A deb822 stanza carries the same components the old one-line entry did, plus an explicit keyring path:
ls: cannot access '/etc/apt/sources.list': No such file or directory
/etc/apt/sources.list.d/:
kali.sources
# See https://www.kali.org/docs/general-use/kali-apt-sources/
Types: deb
URIs: http://http.kali.org/kali/
Suites: kali-rolling
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/kali-archive-keyring.gpg
Both commands on the lab install:

APT reads both formats, so nothing is broken. What breaks is automation that greps, edits or overwrites sources.list, since it now works on a file that doesn’t exist. If the repository definition on a box has been mangled, our guide to restoring the official Kali repositories covers the repair.
Add graphics firmware only if a VM needs it
When the installer detects a virtual machine it skips the NVIDIA, AMD and Intel GPU firmware, which keeps the initrd small and the install lighter. Three commands show what that produced in the lab:
systemd-detect-virt
apt-cache policy kali-linux-firmware-graphics | head -3
ls -lh /boot/initrd.img-$(uname -r)
Expect the metapackage to show as available but not installed, with the initrd at 63 MB:
kvm
kali-linux-firmware-graphics:
Installed: (none)
Candidate: 2026.4.2
-rw-r--r-- 1 root root 63M Oct 25 01:29 /boot/initrd.img-7.1.5+kali-amd64
On the KVM guest it looked like this:

Wireless firmware is untouched, so USB Wi-Fi adapters still work in a VM. The one setup that needs the GPU firmware back is a VM with a passed-through graphics card, and one package restores it:
sudo apt install -y kali-linux-firmware-graphics
Bare metal installs still get the full firmware set, so skip this on a laptop or desktop.
Install guest tools for your hypervisor
The installer detects the common hypervisors and pulls the matching guest tools itself; the KVM install here came up with qemu-guest-agent and spice-vdagent already in place. Check before you assume, because without them the display doesn’t resize with the window and the clipboard doesn’t reach the host. Install the line for your platform if it’s missing:
# VirtualBox
sudo apt install -y virtualbox-guest-x11
# VMware
sudo apt install -y open-vm-tools-desktop
# QEMU/KVM and Proxmox
sudo apt install -y spice-vdagent qemu-guest-agent
Reboot once after installing them. VMware shared folders need extra scripts on top of that, which kali-tweaks installs under Virtualization. If you’re building a full lab rather than one machine, the walkthrough on building a pentest lab on Proxmox covers the isolated network and the target VMs around it.
Enable SSH only when you need it
OpenSSH is installed but disabled. Turn it on only when you want remote access, and regenerate the host keys first, so a VM cloned from this one doesn’t hand the same fingerprint to every client on the network:
systemctl is-enabled ssh
sudo rm /etc/ssh/ssh_host_*
sudo dpkg-reconfigure openssh-server
sudo systemctl enable --now ssh
is-enabled answers disabled on a fresh install. The reconfigure step prints the three new key fingerprints, and enabling the unit creates its symlinks and starts the daemon:

The “disabled or a static unit not running” lines come from the package scripts and are harmless; the two Created symlink lines are the ones that matter. The 2026.3 ISO ships OpenSSH 10.4p1, and if this disk is a clone or the IP once belonged to another host, clients that saw the old key will warn about a changed host key until you clear the entry from their known_hosts.
Find tools in the Kali menu
Click the dragon at the top left or press the Super key to open the Whisker menu. Tools are grouped by attack phase in the order the MITRE ATT&CK framework uses, from 01 Reconnaissance to 14 Impact, followed by 15 Forensics and 16 Services and Other Tools:

Command-line tools open a terminal showing their help text, while Burp Suite, Wireshark and the other graphical tools open their own windows. Tools that depend on a background service ship -start helpers that bring the service up for you. These five were present in /usr/bin on the default 2026.3 install:
faraday-startfor the Faraday collaboration servergophish-startfor phishing campaignsstarkiller-startfor the Empire C2 web UInotus-scan-start, the notus-scanner command from the OpenVAS stackkali-service-start, a generic wrapper shipped in kali-defaults
We’d start a new install with something small rather than a framework. Our guide to network scanning with Nmap sits in the Reconnaissance category and needs nothing beyond the default tools.
Switch the desktop to BackTrack mode
The BackTrack theme added for its 20th anniversary in 2026.1 is still in 2026.3. One command repaints the Xfce session in the BackTrack 5 look, down to the “5 r3” wallpaper:
kali-undercover --backtrack
Swapping takes a few seconds, and running the same command again restores the Kali theme:

kali-undercover -h lists the other two profiles, --undercover (a Windows-style disguise for working in public) and --halloween.
Troubleshooting a Kali install
Error: “cat: /etc/apt/sources.list: No such file or directory”
Nothing is broken. Fresh installs since 2026.2 never create that file, and the repository is defined in /etc/apt/sources.list.d/kali.sources. Read or edit that file, or drop your own .sources stanza next to it.
Pressing Enter on the software screen ticks a box instead of continuing
That screen is a multi-select list, so Enter toggles the highlighted row. If you meant to continue, you’ve just unticked something: press Enter again to restore it, then Tab to the Continue button and press it from there.
Error: “Access Denied — rejected probably by Secure Boot”
This is what a machine with Secure Boot enabled does with the Kali installer. We booted the same 2026.3 ISO on OVMF firmware with the Microsoft keys enrolled and Secure Boot on: the firmware refused the DVD and fell through to network boot. Some laptops show a “Secure Boot Violation” dialog, but many just skip the USB stick silently, which is why it looks like the stick is broken:

Enter the firmware setup (usually F2, F10, F12 or Del at power-on), turn Secure Boot off, save and boot the stick again. Leave it off after the install too: the installer puts only grubx64.efi, with no signed shim, in /boot/efi/EFI/kali, so the installed system would be refused the same way.
No bootable device after the install
This is nearly always a firmware mode mismatch. A UEFI install writes only the EFI boot loader and a kali boot entry, so a machine that now starts in legacy or CSM mode finds nothing to boot. Disable CSM in the firmware settings and put the kali entry first in the UEFI boot order.
Xfce shows a black screen with only a cursor
Switch to a text console with Ctrl+Alt+F3, log in and run journalctl -b -p err. In a VM the usual cause is missing guest tools. On bare metal with an NVIDIA card it is normally a DKMS module that didn’t build against the 7.1 kernel, so install the matching kernel headers, reinstall nvidia-driver and reboot.
Upgrade 2026.2 to 2026.3 instead of reinstalling
A Kali release is a snapshot of the rolling branch, not a new distribution, so a working 2026.2 machine does not need the new ISO. The VM that ran this lab was built from the official 2026.2 QEMU image and brought forward with apt full-upgrade, and it reports the new release on its own:
grep VERSION_ID /etc/os-release; uname -r
Same release identifier and kernel as the fresh install:
VERSION_ID="2026.3"
7.1.5+kali-amd64
Older machines installed before 2026.2 still carry a one-line /etc/apt/sources.list, and once the full upgrade has pulled in APT 3.3 you can convert it in one step with sudo apt modernize-sources, which writes the deb822 file and keeps the original as .list.bak. Reinstall only when you want a clean disk; for everything else, the full upgrade is faster and keeps your tools and configuration. Our Kali upgrade guide covers held-back packages and the other cases that need a hand.
this article is so helpful thanks you are so kind
Everything you explained is so good