Linux personal firewall with per application rule controls http://douaneapp.com/ https://github.com/Douane/Douane Douane is a firewall that filter and limit the outgoing network traffic per application. You can allow network traffic for some applications and deny network traffic for others. When Douane is started, it will watch the ougoing network traffic and as soon as an unknown application tries to send some network packets, Douane will block it and ask you if you allow it or not. The application is composed of multiple parts written in different programming languages. Linux kernel module: The Linux Kernel Module is the heart of Douane as it will catch outgoing network packets and find owning application. Written in C, it use Netfilter to watch the network traffic. Daemon process: This is the brain of Douane as it will ask you and remind your decisions to allow/deny network traffic. Written in C++, it provide a D-Bus server in order to communicate with the other parts. Dialog processes: The dialog process is the window which is appearing when an unknown activity has been detected. It is written in GTK 3 for the official project. Configurator: Finally the configurator allow you to edit the configuration (rules, load on boot, ...). The configuration is written in python 3 and GTK 3 using PyGObject, is open source and is an interface to the D-Bus server provided by the daemon process.