Kali Linux On Raspberry Pi 3 – Installation


Kali Linux on Arm provided by offensive-security (the makers of kali linux) does not come in an iso so the drive it is installed on will be of fixed size and that drive size cannot easily be changed in windows. For example, if you have a 32GB drive, you will only have about 6.7GB total and only a little of that available once Kali Linux is installed. I don’t know why it’s configured that way.

Windows 10 Installation

  1. Connect a 32gb microsd card to a usb adapter so the windows system can read it.
  2. Format it as fat32 by right clicking on the drive in file explorer, changing file system to fat32 and clicking ‘Format…’ and clicking ‘start’ on the bottom.
  3. Download a Kali Linux Arm Image (iso) for Raspberry Pi 3 https://www.offensive-security.com/kali-linux-arm-images/
  4. Download usb iso installer https://rufus.akeo.ie/
  5. Open Rufus and choose to create a bootable disk using the iso that was downloaded, choose micro sd card as the device
  6. Clicked Start
  7. After it’s complete, install the microsd card into the powered-off raspberry pi 3 directly, as the primary microsd card. It will now boot into Kali Linux when turned on.


  1. Login with username: root password: toor
  2. If connecting on a wireless network, connect to it via the internet icon on the top right of the screen similar to how you would on a laptop or other mobile device.
  3. Open a terminal window and run the following commands
    • sudo apt update
    • sudo apt upgrade
      • May take a while
      • On upgrading packages you may receive several prompts. Choosing default settings is fine for the programs unless you would prefer otherwise.
  4. Additional programs you may want to install with the following command:
    • sudo apt install mtr traceroute telnet chromium pianobar iperf3 gedit bluetooth bluez blueman vim
    • Explanations for the packages in that install command are as follows:
      • mtr is mytraceroute which is a continuous traceroute with stat tracker, good for network troubleshooting
      • traceroute is a basic traceroute
      • pianobar allows for pandora to be played via command line (requires pandora account)
      • iperf3 allows for testing to or from an iperf3 server/client to check available bandwidth
      • gedit is a text editor similar to windows notepad that can be used from command line to open files and edit them with ease. Though when learned, vim allows for more robust commands to be run such as advanced search and/or replace functions.
      • vim, a useful cli file editor
      • blue packages – to get bluetooth up and running on kali linux for your raspberry pi
  5. Bluetooth configuration
    1. cd /lib/systemd/system
    2. sudo gedit bluetooth.service
    3. change this line
      • ExecStart=/usr/lib/bluetooth/bluetoothd
    4. to be this line
      • ExecStart=/usr/lib/bluetooth/bluetoothd –noplugin=sap
    5. save
    6. run the following comands
      • sudo update-rc.d service enable
        • This configures bluetooth to run on boot.
      • sudo systemctl restart bluetooth
    7. check bluetooth status with the following command
      • sudo systemctl status bluetooth
    8. Output should resemble the following
      • ● bluetooth.service - Bluetooth service
           Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: disabled)
           Active: active (running) since Fri 2018-01-26 20:03:30 UTC; 8s ago
             Docs: man:bluetoothd(8)
         Main PID: 2581 (bluetoothd)
           Status: "Running"
           CGroup: /system.slice/bluetooth.service
                   └─2581 /usr/lib/bluetooth/bluetoothd --noplugin=sap
        qun 26 20:03:29 kali systemd[1]: Starting Bluetooth service...
        qun 26 20:03:30 kali bluetoothd[2581]: Bluetooth daemon 5.47
        qun 26 20:03:30 kali systemd[1]: Started Bluetooth service.
        qun 26 20:03:30 kali bluetoothd[2581]: Starting SDP server
        qun 26 20:03:30 kali bluetoothd[2581]: Excluding (cli) sap
        qun 26 20:03:30 kali bluetoothd[2581]: Bluetooth management interface 1.14 initialized

Change Root Password

For security reasons you should change the root password, via command line with the following command:

  • sudo passwd