How to install airgeddon on Linux Mint or Ubuntu

Airgeddon is a multi-purpose tool to audit wireless networks. It can assist you to crack Wi-Fi password (WPA / WPA2, WPS). It is one of the easiest program to hack Wi-Fi for absolute beginners. Airgeddon is Linux application it won’t work on Windows or Mac.

There are a lot of compatible with airgeddon Linux distros. Anyway, it can be used with any Linux distro if you have installed the tools what script needs. The script checks for them at the beginning. This tutorial will guide you through installation airgeddon dependencies on Linux Mint or Ubuntu.

airgeddon on Ubuntu

Some airgeddon dependencies can be installed from default repository of Linux Mint or Ubuntu:

sudo apt-get install iw gawk curl git wireless-tools ettercap-graphical hostapd isc-dhcp-server iptables sslstrip lighttpd dsniff reaver xterm expect john

Create directory for our purpose:

mkdir bin
cd bin

Remove very old aircrack-ng from default repository, install aircrack-ng dependencies, download aircrack-ng source, compile and install aircrack-ng

sudo apt remove aircrack-ng
sudo apt install autoconf automake libpcre3-dev libnl-3-dev libsqlite3-dev libssl-dev ethtool build-essential g++ libnl-genl-3-dev libgcrypt20-dev libtool python3-distutils
sudo apt install -y pkg-config
git clone
cd aircrack-ng/
autoreconf -i
./configure --with-experimental --with-ext-scripts
sudo make install
sudo airodump-ng-oui-update
# up
cd ..

Try it

sudo apt-get install crunch

if you got an error

E: Unable to locate package crunch

Follow this step:

Download crunch source, compile and install crunch

wget -O crunch-.tgz
tar xvzf crunch-*.tgz
cd crunch-*/
sudo make PREFIX=/usr INSTALL_OPTIONS=geninstall
sudo make install
# up
cd ..

If apt-get install crunch worked for you, go to mdk3 installation

Download mdk3 source, compile and install mdk3

git clone
cd mdk3-master
sudo make install
# up
cd ..

Install PixieWPS dependencies, download PixieWPS source, compile and install PixieWPS

sudo apt-get install libssl-dev
git clone
cd pixiewps*/
sudo make install
# up
cd ..

Install bully dependencies, download bully source, compile and install bully

sudo apt-get -y install build-essential libpcap-dev libssl-dev
git clone
cd bully*/
cd src/
sudo make install
# up
cd ../..

Installation hashcat 64-bit

sudo apt-get -y install p7zip-full
cd /tmp/ && wget`curl -s | grep -E -o '/files/hashcat-[0-9]{1,2}[.][0-9]{1,2}[.][0-9]{1,2}[.]7z' | head -n 1` && 7z x hashcat-*7z && sudo mkdir /opt/hashcat && sudo mv hashcat-*/* /opt/hashcat && sudo touch /bin/hashcat && echo -e '#!/bin/bash\n/opt/hashcat/hashcat64.bin "$@"' > ./hashcat && sudo mv ./hashcat /bin/hashcat && sudo chmod +x /bin/hashcat && cd ~/bin

Installing Bettercap:

sudo apt-get install build-essential ruby-dev libpcap-dev net-tools
sudo apt-get install ruby
sudo gem install bettercap

Installing BeEF:

sudo apt install build-essential openssl libreadline6 libreadline6-dev zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev autoconf libc6-dev libncurses5-dev automake libtool bison subversion ruby git nodejs ruby-dev
sudo gem update --system
sudo gem install bundler rake rubocop
git clone git://
cd beef
sudo bundle install
# up
cd ..
sudo mv beef/ /opt/
echo -e '#!/bin/bash\ncd /opt/beef/\n/opt/beef/beef "$@"' > ./beef && sudo mv ./beef /bin/beef && sudo chmod +x /bin/beef

Perhaps when you enter a command

sudo bundle install

you receive the following error:

/usr/local/bin/bundle:23:in `load': cannot load such file -- /usr/lib/ruby/gems/2.3.0/gems/bundler-1.16.1/exe/bundle (LoadError)
    from /usr/local/bin/bundle:23:in `<main>'

This is a bug in Rubygems 2.7.5. The developers know about it and, of course, will fix it. As a temporary solution, it is proposed to downgrade to the previous version:

sudo gem update --system  2.7.4

Installing asleap:

tar xvzf asleap-2.2.tgz
rm asleap-2.2.tgz
cd asleap-2.2/
sudo mv ./asleap /usr/local/bin/
sudo mv ./genkeys /usr/local/bin/
cd .. # up

Installing hostapd-wpe:

Install dependencies:

sudo apt install libssl-dev libnl-genl-3-dev libnl-3-dev pkg-config libsqlite3-dev

The main part of the installation:

tar -zxf hostapd-2.7.tar.gz
cd hostapd-2.7
patch -p1 < ../hostapd-wpe.patch
cd hostapd


sudo make install
sudo make wpe

Creation of certificates

cd /etc/hostapd-wpe/certs
sudo ./bootstrap
sudo make install

Return to the ~/bin folder

cd ~/bin/

At last airgeddon installation

git clone
cd airgeddon/

It is recommended to run the following commands:

sudo systemctl stop NetworkManager
sudo airmon-ng check kill

They will close the applications (including the Network Manager) that might interfere.

Launching airgeddon:

sudo bash

After you are sure everything is ok, you can clean OS from unnecessary any more files.

cd ~/bin/
sudo rm -rf aircrack-ng/ bully/ mdk3-master/ pixiewps/ crunch*

Bonus – Dictionary for airgeddon

While cracking passwords by bruteforce you can use mask attack or dictionary attack. The last one requires a wordlist. Rockyou – is powerful dictionary and it will come in handy. The next commands will download rockyou and clean it from inappropriate password candidates.

sudo apt-get install hydra
cd ~/bin/
git clone git://
gunzip wordlists/rockyou.txt.gz
cat wordlists/rockyou.txt | sort | uniq | pw-inspector -m 8 -M 63 > ~/bin/newrockyou.txt
rm -rf wordlists/

Now your ready to use wordlist is placed in the directory ~/bin/newrockyou.txt

To get the absolute path issue the command

ls ~/bin/newrockyou.txt

airgeddon on Linux Mint

See also

Last Updated on

Recommended for you:

19 Comments to How to install airgeddon on Linux Mint or Ubuntu

  1. Nan0BC says:

    When I go to compile 'aircrack-ng' I get the "No target and no makefile found. Stop."

    I realized that I had to run "" command, then it seemed to work, so why is that not mentioned on this instructions? Not everybody is going to know to go into the directory and open the file.

    • Alex Alex says:

      Hello! A month ago, new autotools build system was merged with the source code. I got to know about that only now, due to you. So thank you a lot for the report.

      I will review the manual.

  2. Nan0BC says:

    When I restart my machine airgeddon is missing and some of the ruby components are not working. How can I make this a permanent installation?

  3. Nan0BC says:

    I finally managed to get airgeddon to work across reboots, I had to update my gems for BeEf and Bettercap, also updated Ruby to version 2.3. Then I git cloned the airgeddon package to ~Home/bin/airgeddon.

    Upon running it for the first time one of the optional components reports an error:

    unbuffer …. Error (Possible package name : expect / expect-dev)

    Otherwise a great script, thanks for this awesome tool!

  4. Nan0BC says:

    Also Hashcat operations dont work because of a dependency problem like Unbuffer:

    The hashcat version you have installed (4.0.1) is greater or equal than 3.40 so you need to convert the capture files to "hccapx" format, airgeddon will do this automatically. To do this you need a converter that is not present on your system (hashcat-utils package), install it to be able to perform this attack.

    Like you said you're going over the manual, so hopefully that will be fixed as well.

    Again, thanks for this.

  5. Pantelis says:

    Hi there!
    Followed this guide smoothly until the "sudo bundle install" where i get an error message like this "/usr/local/bin/bundle:23:in `load': cannot load such file -- /usr/lib/ruby/gems/2.3.0/gems/bundler-1.16.1/exe/bundle (LoadError)   from /usr/local/bin/bundle:23:in `<main>'  "
    Do you got any workouts for that?

    • Pantelis says:


    • Pantelis says:

      After a few hours of browsing through the internet for possible solutions I think I found what the problem was.
      The installer was looking for bundle in this folder :
      usr/lib/ruby/gems/2.3.0/gems/bundler-1.16.1/exe while in usr/lib/ruby/gems/2.3.0/gems folder there was only rdoc-421 gem folder.
      I created a Gemfile inside
      /var/lib/gems/2.3.0/gems/bundler (as in homepage), then copied the folder in usr/…../gems and run again the install command.
      It seems ok now.
      Thanx a lot for the guide !

    • Alex Alex says:

      This is a bug in Rubygems 2.7.5. The developers know about it and, of course, will fix it. As a temporary solution, it is proposed to downgrade to the previous version:

      sudo gem update --system  2.7.4

      I have known about this problem for several months, but did not add the fix to the guide, because I hoped that this obvious problem would be quickly solved. It seems necessary to note this in the guide.

  6. b1 says:

    we need hashcat-utils for this script to convert to hccapx… Tried installing in /opt/hashcat, /opt/ in the airgeddon folder… nothing. Broken script section or am I missing something?

  7. Minemzz says:

    Command line for hashcat not wor, 

    Any command to install hashcat?

  8. newby says:

    Dumb question from a novice. I had no problem installing. How can I undo all of the above?

    • Alex Alex says:

      The following commands should rollback your system without any warnings. If you’ll get any issues with dependencies, please report here, I’ll adjust the commands:

      sudo rm -rf ~/bin /bin/hashcat /opt/hashcat /bin/beef /opt/beef/
      sudo apt remove ettercap-graphical aircrack-ng build-essential crunch mdk3 pixiewps bully hydra git hostapd isc-dhcp-server iptables sslstrip lighttpd dsniff reaver xterm expect autoconf automake g++ libpcap-dev libssl-dev
      sudo apt autoremove
  9. Alex Alex says:

    The guide is upgraded according to new airgeddon functions and dependencies

  10. rand0m says:

    ( no longer exists.  hostapd is now hosted on

    When I try to 'make' asleap, it gives me this error:

    cc -pipe -Wall -D_LINUX -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I../../.. -D_OPENSSL_MD4 -g3 -ggdb -g asleap.c -o asleap common.o utils.o sha1.o -lpcap -lcrypt -lcrypto
    asleap.c: In function ‘main’:
    asleap.c:1398:6: warning: variable ‘findleaptimeout’ set but not used [-Wunused-but-set-variable]
      int findleaptimeout = 5;
    /usr/bin/ld: utils.o: in function `DesEncrypt':
    /home/user/Downloads/asleap-2.2/utils.c:179: undefined reference to `setkey'
    /usr/bin/ld: /home/user/Downloads/asleap-2.2/utils.c:182: undefined reference to `encrypt'
    collect2: error: ld returned 1 exit status
    make: *** [Makefile:31: asleap] Error 1

    What am I doing wrong?  I'm not familiar with compiling stuff.


  11. Anonymous says:


    I was missing libcurl3-dev when doing bundle install for BeEF (curb was failing) on Mint 19.3. after apt-get install libcurl3-dev, then BeEF bundle install ran ok. It was run as normal user otherwise my ${HOME}/.bundle subdir had root owned files.

    Then, bummer: hostapd is completely unavailable on its site So I am stuck there: I will try later…

    Thanks for your nice work.

  12. Ciscoramon says:

    hostapd-2.7.tar.gz , from given link is not working

    recommended, which worked for me is

  13. Castigo says:

    Thank you so much Alex for your time and effort. i could install everything as showing in the tutorial. But i have a problem when trying to find wps targets. I cant find any target when using the wep and wpa attack. Any help is appreciated. thanks

Leave a Reply

Your email address will not be published.