Raspberry Pi 2 with Kali

Raspberry Pi is an ARM processor based cheap and small device. There are several variations and lots of pluggable extensions, for example TFT display. Raspberry can run several OS including Kali Linux. More information can be found here.

A Raspberry Pi device with Kali Linux can be used for penetration testing. I decided to try it out. I bought the necessary items, but I had problems with installation. I collected the necessary steps to install and configure Kali Linux with TFT display on Raspberry Pi 2.


1, The official Offensive Security Kali Linux – Raspberry Pi page can be found here. The latest Kali Linux ARM images can be downloaded from here. This download page contains other OS images which can be used with Raspberry.


2, Raspberry requires at least an 8GB Class 10 micro SD card. If you have an SD card which contains partitions, those partitions should be removed by hand. In order to remove existing partitions and create one partition in Windows, start diskpart utility and execute the following commands (I found this procedure in this article):

show disk
select disk 1
show part
create part primary
format fs=fat32 quick


3, The image can be written to the SD card with Win32DiskImager utility, or with the dd Linux utility. If you use a VMWare image for Linux and you cannot mount the card reader as an USB driver, then Select ‘Edit virtual settings’, ‘Add Hard Disk’, ‘Use Physical Disk’, select the correct device and select ‘Use Entire Disk’. (The ID of the device can be seen in the Disk Management, which can be accessed through Computer Management.) If you boot the VMWare image now, the SD card is accessible in Linux. Check it with ‘fdisk -l’.

After you wrote the image to the SD card, insert it into the Raspberry, attach every necessary device and power it up. The red and green led should blink, this signals, that Raspberry is loading the OS from the SD card.


4, By default raspi-config is not installed on Kali. If you need it, you can install it with the following commands (I found this script in github here, however it has not been updated for a while):

cd /tmp
wget http://archive.raspberrypi.org/debian/pool/main/r/raspi-config/raspi-config_20160210_all.deb
apt-get install libnewt0.52 whiptail parted triggerhappy lua5.1 alsa-utils
dpkg -i raspi-config_20160210_all.deb


5, Update the system. This takes some time.

apt-get install update && apt-get install upgrade


6, For TFT drivers, we have to install and run rpi-update. This will update the kernel and modules. More information can be found here.

wget -L /usr/bin/ https://raw.githubusercontent.com/Hexxeh/rpi-update/master/rpi-update && sudo chmod 755 /usr/bin/rpi-update


For installing and configuring the FBTFT driver, check this site.


Finally, do not forget to change the SSH keys and the root password!