For best performance and functionality we have documented some recommendations for running dionaea.

Platform Options
Operating System
  • Ubuntu 18.04 LTS (recommended) (used for development)
  • Debian 10 (recommended)
Python Runtime
  • 3.9 (recommended)
  • 3.8 (recommended)
  • 3.7
  • 3.6

At the moment we do not recommend using Ubtuntu 20.04 or Debian 11 because libemu has been dropped from the package repository. Feel free to have a look at Future of shellcode emulation (libemu)? for more information and to help use.

Basic stuff

Download the source code

You can download the source code from the release page or by using the git command.

git clone
cd dionaea


We provide an official docker image. For detailed instructions please have a look at the dinotools/dionaea docker hub page

Ubuntu 18.04

From Source

Before you start download the source code of dionaea.

Install required build dependencies before configuring and building dionaea. (‘ttf-liberation’ required to ‘util/’)

sudo apt-get install \
    build-essential \
    cmake \
    check \
    cython3 \
    libcurl4-openssl-dev \
    libemu-dev \
    libev-dev \
    libglib2.0-dev \
    libloudmouth1-dev \
    libnetfilter-queue-dev \
    libnl-3-dev \
    libpcap-dev \
    libssl-dev \
    libtool \
    libudns-dev \
    python3 \
    python3-dev \
    python3-bson \
    python3-yaml \
    python3-boto3 \

After all dependencies have been installed successfully create a build directory and run cmake to setup the build process.

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/opt/dionaea ..

Now you should be able to run make to build and run make install to install the honeypot.

sudo make install

The new honeypot can be found in the directory /opt/dionaea.

3rd-party packages

The packages below are 3rd party provided, which is appreciated. If you have compiled a package for your own distribution, just send me the link or make a pull request.


Before you use 3rd party packages please check if you get the latest version of dionaea.


We are not responsible and it is hard to debug if you use 3rd party packages. If you have any issues with the packages please also contact the package maintainer.