6.9 KiB
Linux Installation Instructions
Table of Contents
- Linux Installation Instructions
- Table of Contents
- External resources
- Install the required dependencies
- Clone the repository
- Check ModemManager
- Check connection
- Get permissions to use /dev/ttyACM0
- Compile and use the project
External resources
^Top
You might want to follow one of these external resources to get an overview, but please still read carefully this page as some instructions may have evolved.
- ParrotOS: some further notes can be found at @5w0rdfish repo Proxmark Installation for Parrot OS
Install the required dependencies
^Top
On Debian / Ubuntu / Kali / ParrotOS / Raspbian / DragonOS
^Top
First what we want to do is get an update for the system. If you need to apply updates do this before installing the Proxmark3 software.
An system upgrade was carried out prior to following these instructions.
Update the packages list
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get auto-remove -y
Install the requirements
sudo apt-get install --no-install-recommends git ca-certificates build-essential pkg-config \
libreadline-dev gcc-arm-none-eabi libnewlib-dev qtbase5-dev \
libbz2-dev liblz4-dev libbluetooth-dev libpython3-dev libssl-dev
If you don't need...
👉 If you don't need the native Bluetooth support in the client,
you can skip the installation of libbluetooth-dev
.
👉 If you don't need the graphical components of the Proxmark3 client (such as in hw tune
),
you can skip the installation of qtbase5-dev
.
👉 If you don't need support for Python3 scripts in the Proxmark3 client,
you can skip the installation of libpython3-dev
.
👉 If you don't need support for NFC ePaper devices,
you can skip the installation of libgd-dev
.
Failed to load module...
⚠️ If you get some (non blocking) error at runtime such as Gtk-Message: Failed to load module "canberra-gtk-module"
you may have to install libcanberra-gtk-module
.
On ArchLinux
^Top
sudo pacman -Syu git base-devel readline bzip2 lz4 arm-none-eabi-gcc \
arm-none-eabi-newlib qt5-base bluez python gd --needed
If you don't need...
👉 If you don't need the native Bluetooth support in the client,
you can skip the installation of bluez
.
👉 If you don't need the graphical components of the Proxmark3 client (such as in hw tune
),
you can skip the installation of qt5-base
.
👉 If you don't need support for Python3 scripts in the Proxmark3 client,
you can skip the installation of python
.
👉 If you don't need support for NFC ePaper devices,
you can skip the installation of gd
.
On Fedora
^Top
sudo dnf install git make gcc gcc-c++ arm-none-eabi-gcc-cs arm-none-eabi-newlib \
readline-devel bzip2-devel lz4-devel qt5-qtbase-devel bluez-libs-devel \
python3-devel libatomic openssl-devel gd-devel
If you don't need...
👉 If you don't need the native Bluetooth support in the client,
you can skip the installation of bluez-libs-devel
.
👉 If you don't need the graphical components of the Proxmark3 client (such as in hw tune
),
you can skip the installation of qt5-qtbase-devel
.
👉 If you don't need support for Python3 scripts in the Proxmark3 client,
you can skip the installation of python3-devel
.
👉 If you don't need support for NFC ePaper devices,
you can skip the installation of gd-devel
.
On openSUSE
^Top
sudo zypper install git patterns-devel-base-devel_basis gcc-c++ \
readline-devel libbz2-devel liblz4-devel cross-arm-none-gcc9 \
cross-arm-none-newlib-devel python3-devel libqt5-qtbase-devel \
libopenssl-devel gd-devel
Note that Bluez is not available on openSUSE so the native Bluetooth support won't be available in the client.
If you don't need...
👉 If you don't need the graphical components of the Proxmark3 client (such as in hw tune
),
you can skip the installation of libqt5-qtbase-devel
.
👉 If you don't need support for Python3 scripts in the Proxmark3 client,
you can skip the installation of python3-devel
.
👉 If you don't need support for NFC ePaper devices,
you can skip the installation of gd-devel
.
Clone the repository
^Top
git clone https://github.com/RfidResearchGroup/proxmark3.git
Check ModemManager
^Top
⚠️ Very important ⚠️
^Top
make sure ModemManager will not interfere, otherwise it could brick your Proxmark3! Read carefully this page about ModemManager and follow its instructions.
Check connection
^Top
Check the proxmark is being picked up by your computer. Plug it in, then:
sudo dmesg | grep -i usb
It should show up as a CDC device:
usb 2-1.2: Product: PM3
usb 2-1.2: Manufacturer: proxmark.org
cdc_acm 2-1.2:1.0: ttyACM0: USB ACM device
And a new /dev/ttyACM0
should have appeared.
Get permissions to use /dev/ttyACM0
^Top
Add current user to the proper groups to get permission to use /dev/ttyACM0
.
This step can be done from the Iceman Proxmark3 repo with:
make accessrights
Then, you need to logout and login in again for your new group membership to be fully effective.
To test you have the proper read & write rights, plug the Proxmark3 and execute:
[ -r /dev/ttyACM0 ] && [ -w /dev/ttyACM0 ] && echo ok
It must return ok
. Otherwise this means you've got a permission problem to fix.
Compile and use the project
^Top
Now you're ready to follow the compilation instructions.