How to Install Kali Linux on Raspberry Pi? (Complete Guide)

1. Download the Kali Linux Raspberry Pi image from the Offensive Security website.

2. Insert your microSD card into your computer and format it using the SD Card Formatter tool.

3. Use the Win32 Disk Imager to write the Kali Linux image to your microSD card.

4. Insert the microSD card into your Raspberry Pi and connect the power supply.

5. Connect your Raspberry Pi to your network using an Ethernet cable.

6. Log in to your Raspberry Pi using the default username and password (root/toor).

7. Update the Kali Linux packages using the apt-get update command.

8. Install the Raspberry Pi specific packages using the apt-get install raspberrypi-kernel raspberrypi-bootloader command.

9. Reboot your Raspberry Pi using the reboot command.

10. Log in to your Raspberry Pi again and configure the network settings.

11. Install the Kali Linux tools using the apt-get install kali-linux-full command.

12. Enjoy using Kali Linux on your Raspberry Pi!

Kali Linux is an open-source Linux distribution, based on Raspberry Pi OS, that includes all apps for penetration testing.
I recently installed it on my Raspberry Pi and I will give you some tips to do the same on your side. We’ll also test a few tools to learn more about this system.

Download the Kali Linux image from the official website.
Then, flash it on an SD card with Balena Etcher and start the Raspberry Pi.

In this article, I will explain in 15 steps how you can get started with this hacking distribution on Raspberry Pi.
Feel free to use the table of contents below to go directly to what interests you the most.

By the way, if you are really interested in improving your skills on Raspberry Pi, I highly recommend you check out my e-book here. It’s a 30-day challenge from beginner to master, with step-by-step tutorials and many projects for you to practice along the way.

Kali Linux introduction

Kali Linux is a Debian-based Linux distribution that includes security and penetration testing tools.
Formerly known as Backtrack, many security companies (and also hackers) use it.
Associated with Raspberry Pi, it turns it into a perfect hacking kit. You may have seen it in “Mr. Robot”:

Kali Linux is available for the ARM architecture, so the installation is relatively simple. We will now discuss how to install it on your Raspberry Pi.

How to Install Kali Linux

Here are the required steps to install Kali Linux on a Raspberry Pi:

  • Download the image from the official website.
  • Flash it with Balena Etcher or Raspberry Pi Imager.
  • Insert the SD card into your Raspberry Pi and log in with kali / kali.

I will now explain each step in detail.

Download Kali Linux images for Raspberry Pi

Kali Linux images for the ARM architecture are available on this page of the official website.
Click on the image name to download it directly, or click on “Torrent” to download the torrent file.

If you don’t know Torrent, it’s a peer-to-peer download protocol.
You need to download and install software to use it (Transmission, Vuze, Deluge, BitTorrent, …).
On Ubuntu, for example, Transmission is part of the basic packages already installed.

As you can see, all Raspberry Pi models are now supported, including the Raspberry Pi 4 and 400. This is good news for us!

Create a new SD Card with Etcher

Now that you have the image of Kali Linux, we will create an SD card to install and use later.

If possible, I recommend installing it on a different SD card than the one you use for Raspberry Pi OS, so you don’t have to redo everything if you come back to Raspberry Pi OS later (8Gb minimum).
If you need more SD cards, you can check my recommended products here.

As usual, we will use Etcher to create our SD card.
If you don’t have it yet, you can download it from the official website; it’s available for Linux, Windows, and macOS and will make your life easier.

Once Etcher is installed, start it.
Then select your image and your SD card, and then start the copy.
I don’t know exactly why, but Kali Linux took me longer than other distributions to flash (even if the size is almost the same as Raspberry Pi OS Full), probably more compressed than Raspberry Pi OS.

First boot on Kali Linux

Just insert the SD card into your Raspberry Pi and start.
Kali Linux will start directly with the login screen.
No questions or anything, insert, start, and wait.

There is nothing else to do.

Open a session on Kali Linux

Once Kali started, you need to log in:

The default credentials on Kali Linux are:
– login: kali
– password: kali

It is strongly recommended that you change these credentials quickly.
You can change it by opening a terminal and typing the command:
passwd

Kali Linux Configuration

You are now on the Kali Linux Desktop, and we can move to the configuration.

Keyboard layout

If you don’t use a US keyboard, you can change it in the main menu > Settings > Keyboard.
Disable the system defaults, add your custom layout and set it by default (or remove the US layout).
But be careful, on the login screen you will keep the US layout for the moment, so choose your password knowing this.

Connect to your Network

Follow this part only if there is a DHCP server on your network.
If not, or if you need to set a static IP address, look at the following step.

Ethernet:

Just connect the RJ45 cable to your Raspberry Pi and wait a few seconds for an IP address to be assigned to it, there is nothing else to do.

WiFi:

On the Kali desktop, click on the network icon at the top right, and choose the SSID of your Wi-Fi network.

Type the password of your access point, and wait a few moments.

Get your current IP address:

Whatever your connection mode, you can check the IP address obtained with the ifconfig command:
sudo ifconfig
The addresses are indicated on the second line of each interface, after the keyword “inet”.

eth0 = Ethernet, wlan0 = Wi-Fi

I recommend not activating both simultaneously, even if it seems to work.
I had problems with response time by moments. Probably a problem with routing (I didn’t take any longer to look at this, but disabling the Wi-Fi fixed the problem).

Are you a bit lost in the Linux command line? Check this article first for the most important commands to remember, and a free downloadable cheat sheet so you can have the commands at your fingertips.

Set a static IP address

A static IP address will allow you to choose the IP address associated with your Raspberry Pi, and therefore find it more easily later:

  • Open a terminal or connect with SSH.
  • To set a static IP open the /etc/network/interfaces file:
    sudo nano /etc/network/interfaces
  • You will see something like this:
    auto eth0
    iface eth0 inet dhcp
  • Replace it with something like this:
    auto eth0
    iface eth0 inet static
    address 192.168.1.200
    netmask 255.255.255.0
    gateway 192.168.1.1
    nameserver 8.8.8.8

    Replace the IPs indicated by what fits your network.
  • Reboot your Raspberry Pi or unplug/plug the network cable to update your IP.

If you want to do the same thing for the Wi-Fi connection, the easiest way is to use the GUI (Advanced network configuration in the main menu), or this tool from a terminal:
sudo nmtui

In it, you can configure your wireless network, but also set a static IP if needed.

Update Kali

As for any fresh new installation, a good practice is to update your system.
Kali is based on Debian, so you can use the same commands as on Raspberry Pi OS:
sudo apt update
sudo apt upgrade

Note: In my tests, I got this error when trying to upgrade:
The following packages have unmet dependencies:
libwacom9 : Depends: libwacom-common (= 2.1.0-2) but 1.12-1 is to be installed
E: Broken packages

I fixed it with:
sudo apt reinstall libwacom-common && sudo apt reinstall libwacom-bin
Then apt upgrade should work.

By the way, I had approximately 800 packages to upgrade, so I think this is pretty important to do it right away.

Enable SSH and VNC

Now that we have a fixed IP address, it’s time to make our Raspberry Pi accessible from another network computer.

Enable SSH

In theory, SSH is installed and enabled by default.
If you don’t have access, it’s probably because you need to start the service:
service ssh start

If you need help with SSH, look at this tutorial here.

Enable VNC

VNC will allow you to have access to a remote desktop on your Raspberry Pi.
On the latest Kali Linux versions, TightVNC is already installed.
You just need to set a password:

  • Open a terminal or connect via SSH.
  • Use this command to define your password:
    vncserver
  • Once done, this will also start the service.

You can now connect to your Raspberry Pi on Kali Linux with any VNC Viewer.
For example, on Ubuntu:
sudo apt install xtightvncviewer
xtightvncviewer 192.168.1.200:1

On Windows, you can download TightVNC here. Don’t forget to add “:1” after the IP address.

Remember that VNC is not a secure protocol, and if you use it at home it’s ok, but in a more extensive network, it is better to use it through an SSH tunnel for example.

You can find more details about the remote desktop on Raspberry Pi in my tutorial linked here. It’s for Raspberry Pi OS, but it’s very similar.

Note: If you get a grey screen when connecting to Kali Linux with VNC Viewer, you may need to edit the startup file for VNC:
sudo nano ~/.vnc/xstartup
Paste these lines (backup the old content if needed):
!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &

Kali Linux tools

Ok, you are now ready to try the Kali Linux tools available directly after the installation.
There are so many apps available that it can quickly become overwhelming.
That’s why I’ll show you a few ones here, that you can easily try.

Change your MAC Address

Overview

A MAC address is a unique identifier for each network adapter. It depends on each manufacturer, and it’s often used to give access to a specific part of the network to restricted computers. A DHCP server can also assign always the same IP to a MAC Address.
For example, you can configure your Wi-Fi network to whitelist your MAC address, and prevent anyone else from connecting to it. I have a detailed article here on how to find the MAC address of your Raspberry Pi.

MacChanger is a tool that allows you to do MAC address spoofing, i.e. to pretend to be someone else.

Usage

Install it if needed (in my tests it was already installed):
sudo apt install macchanger

See your current MAC Address:
ifconfig eth0

  • Disable your network card:
    ifdown eth0
  • Get a random MAC address:
    macchanger -r eth0
  • Set a specific MAC address:
    macchanger -m XX:XX:XX:XX:XX:XX eth0
  • Reboot to reset and get the standard MAC Address.

Hack Wi-Fi password

Overview

AirCrack-NG is one of the most popular tools on Kali Linux.
It’s a complete suite of tools to test the wireless security of a network.
It provides tools for monitoring, attacking, testing, and cracking Wi-Fi networks.

Usage

You need to disconnect the Wi-Fi on your Raspberry Pi before starting:

  • Then check that your network card is compatible (it is):
    sudo airmon-ng
  • Start monitoring:
    sudo airmon-ng start wlan0
  • Show wireless network available:
    sudo airodump-ng wlan0mon
    airodump scan wifi networks

And you are ready to go!
You can read this post to get more details on how to do this.

Brute force with Hydra

Overview

Brute force is a password cracking method, that tries passwords from a dictionary or other sources, and tries all the possibilities until it works.

Hydra is a tool to make very fast brute force from Kali Linux software and that supports many protocols.

Usage

First, you will need a list of passwords and put it in a file, like /root/passwords.txt (one per line).
You can find the most common passwords on the Internet, or generate your own.
For the test, just put a few random passwords manually in the file.

Then you can try it, for example, I have decided to brute force SSH on my computer from the Raspberry Pi:
hydra -l root -P /root/passwords.txt -t 6 ssh://192.168.222.51

If I check in my /var/log/auth.log, I can see tries from the Raspberry:

May 22 15:55:37 ubuntu sshd[2481]: Failed password for root from 192.168.222.31 port 37226 ssh2
May 22 15:55:37 ubuntu sshd[2487]: Failed password for root from 192.168.222.31 port 37234 ssh2
May 22 15:55:39 ubuntu sshd[2482]: Failed password for root from 192.168.222.31 port 37228 ssh2
May 22 15:55:39 ubuntu sshd[2484]: Failed password for root from 192.168.222.31 port 37232 ssh2

Packet Analyzer

Overview

A packet analyzer (or sniffer) is a tool that can intercept traffic from the network and capture it to analyze it.

On Kali Linux, you can use Wireshark, which is the most used tool to analyze network traffic.
It’s a graphical tool, but you can capture packets with tcpdump or something else, and then open it with Wireshark.

Usage

You can find the app in the Applications menu, under Sniffing and spoofing:

  • Start it and then go to Capture > Start.
  • You will now see all packets from the network.
  • Click Stop when you want.

Then there are many features that you can use to filter or analyze what you have captured:

Related: Getting Started With Wireshark On Ubuntu

SQL Injection

Overview

SQL injection is a technique to attack insecure applications, including injecting code into user fields that are not protected.

This technique is mainly used to attack websites.
For example, if you replace a parameter of the URL, say ?user=yourname with something like ?user=yourname ‘ OR 1.
If the field is poorly protected, the SQL query will be modified and will return all the data, not just those of your user.

On Kali Linux, the sqlmap tool allows testing SQL injection vulnerabilities.

Usage

Sqlmap is a straightforward tool to use.

You only need to put the URL of the page to test, something like this:
sqlmap -u https://www.domain.com/?p=123

Once you have found a security hole, it is possible to dig deeper with this tool to see what you can get. But the best thing to do is to fix it.

Vulnerabilities exploit

Overview

Metasploit is a tool that will allow you to validate vulnerabilities and use them.
Metasploit allows you to automate the process of discovery and exploitation and provides you with the tools required to perform the manual testing phase of a penetration test.

Usage

You can start it in Applications > Exploitation Tools > Metasploit framework.

This tool will initialize and start a terminal that will allow you to use it.
For example, you can use nmap in the framework:
db_nmap -v -sV 192.168.222.1

You can also retrieve information about a known vulnerability, and try to use it:
db_rebuild_cache
search CVE-2018-9864
use exploit/folder/folder/name

Replace the search parameter with your vulnerability ID and use the exploit path displayed in the search results.
If you are interested, find a good tutorial on the topic (or read the documentation), it’s not possible to explain everything in a few short lines.

Video

If you want a visual explanation, you can watch this video on how to install Kali Linux on your Raspberry Pi:

Subscribe to get all the other videos about Raspberry Pi:

Want to chat with other Raspberry Pi enthusiasts? Join the community, share your current projects and ask for help directly in the forums.

Conclusion

We learned how to install Kali Linux on Raspberry Pi, including the first steps of the system configuration, and some exciting tools to use on this distribution.

As I said at the beginning, this article is not exhaustive. There are hundreds of apps and most are quite complicated to take in hand which would require an article each, but that was not the goal here.

I still hope you understand the basics and that this article made you want to try ?

Additional Resources

Not sure where to start?
Understand everything about the Raspberry Pi, stop searching for help all the time, and finally enjoy completing your projects.
Watch the Raspberry Pi Bootcamp course now.

Master your Raspberry Pi in 30 days
Don’t want the basic stuff only? If you are looking for the best tips to become an expert on Raspberry Pi, this book is for you. Learn useful Linux skills and practice multiple projects with step-by-step guides.
Download the e-book.

VIP Community
If you just want to hang out with me and other Raspberry Pi fans, you can also join the community. I share exclusive tutorials and behind-the-scenes content there. Premium members can also visit the website without ads.
More details here.

Need help building something with Python?
Create, understand, and improve any Python script for your Raspberry Pi.
Learn the essentials step-by-step without losing time understanding useless concepts.
Get the e-book now.

You can also find all my recommendations for tools and hardware on this page.

How to Install Kali Linux on Raspberry Pi? (Complete Guide)

Kali Linux is a Debian-based Linux distribution designed for digital forensics and penetration testing. It is one of the most popular Linux distributions used by security professionals and ethical hackers. It is also a great platform for learning ethical hacking and penetration testing.

In this guide, we will show you how to install Kali Linux on Raspberry Pi. We will also discuss some of the best practices for setting up your Raspberry Pi for security testing.

Prerequisites

  • Raspberry Pi 3 or 4
  • MicroSD card (8GB or larger)
  • Kali Linux image
  • Ethernet cable
  • USB keyboard and mouse
  • Monitor with HDMI input

Step 1: Download the Kali Linux Image

The first step is to download the Kali Linux image for Raspberry Pi. You can download the image from the official Kali Linux website. Make sure to select the correct image for your Raspberry Pi model.

Step 2: Write the Image to the MicroSD Card

Once you have downloaded the image, you need to write it to the MicroSD card. You can use a tool like Etcher to write the image to the card. Make sure to select the correct drive before writing the image.

Step 3: Boot the Raspberry Pi

Once the image is written to the MicroSD card, you can insert it into the Raspberry Pi and boot it up. Connect the Raspberry Pi to a monitor, keyboard, and mouse. You should see the Kali Linux boot menu.

Step 4: Configure the Network Settings

Once the Raspberry Pi has booted, you need to configure the network settings. You can either use a wired connection or a wireless connection. If you are using a wired connection, connect the Ethernet cable to the Raspberry Pi and configure the network settings.

Step 5: Install the Kali Linux Packages

Once the network settings are configured, you can install the Kali Linux packages. You can use the apt-get command to install the packages. Make sure to update the package list before installing the packages.

Step 6: Configure the Security Settings

Once the packages are installed, you need to configure the security settings. You can use the iptables command to configure the firewall settings. You can also use the ssh command to enable remote access to the Raspberry Pi.

Conclusion

In this guide, we have shown you how to install Kali Linux on Raspberry Pi. We have also discussed some of the best practices for setting up your Raspberry Pi for security testing. If you have any questions or feedback, please leave a comment below.

Jaspreet Singh Ghuman

Jaspreet Singh Ghuman

Jassweb.com/

Passionate Professional Blogger, Freelancer, WordPress Enthusiast, Digital Marketer, Web Developer, Server Operator, Networking Expert. Empowering online presence with diverse skills.

jassweb logo

Jassweb always keeps its services up-to-date with the latest trends in the market, providing its customers all over the world with high-end and easily extensible internet, intranet, and extranet products.

Contact
San Vito Al Tagliamento 33078
Pordenone Italy
Item added to cart.
0 items - 0.00
Open chat
Scan the code
Hello 👋
Can we help you?