Web interface for easy use of the IPTables firewall on Linux systems written in Python3
Project description
easywall
![GitHub license](https://pypi-camo.freetls.fastly.net/970a026cbd1e135b217f7b91131284212cc94044/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6a70796c797069772f6561737977616c6c)
Firewalls are becoming increasingly important in today's world. Hackers and automated scripts are constantly trying to invade your system and use it for Bitcoin mining, botnets or other things.
To prevent these attacks, you can use a firewall on your system. IPTables is the strongest firewall in Linux because it can filter packets in the kernel before they reach the application. Using IPTables is not very easy for Linux beginners. We have created easywall - the simple IPTables web interface. The focus of the software is on easy installation and use.
Demo
You can view an online version of the program as a demo under the following link:
https://dev01vt.wdkro.de:12227/ (Certificate is provided by Let's Encrypt)
- Username: demo
- Password: demo
The online demo version is reset every 30 minutes and all data is deleted. The demo has only the frontend installed without the backend. Configuration changes are therefore not saved or applied.
Quick Start
This guide refers to the easiest way to install using the APT Package Manager. For detailed installation instructions, please refer to the documentation.
apt update
apt install -y apt-transport-https gnupg
echo "deb https://apt.wdkro.de/ stable main" > /etc/apt/sources.list.d/easywall.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D88D7689C1624EE3
apt update
apt install easywall
After installation, the web interface can be accessed in the browser at https://hostname-or-ip-address:12227.
Features
- Built-in rules - that can be activated by option.
- Logging - of blocked connections and many other stuff.
- IPv6 - is completely supported since it should be used on every system.
- Two step activation - Changed rules are activated in two steps to check the connection.
- Blacklisting and Whitelisting - of IP addresses and IPv6 addresses.
- Port Forewarding - Forward Ports through the Firewall.
- TCP, UDP and Port Ranges - Open them if you need them in the internet.
- Own IPTables rules - Can be managed in the web interface.
- Install and Update - The software can be installed and updated easily.
- Ansible role- For advanced users and automation.
Roadmap
The following features will be implemented in one of the next versions. If you need a feature, simply create a GitHub issue, and we'll include it here.
- :x: finish all
TODO: Docs
documentations - :x: improve testing by using multiple os
Install
We provide extensive instructions on our installation page. You can find a script for automatic downloading and installation.
Ansible Role
We are currently working on an Ansible role that will allow easywall to be fully configured with Ansible.
The project can be found under the following link: ansible-role-easywall
Documentation
Check the docs folder for the software documentation.
License
easywall is GNU General Public License v3.0 +.
Support me
The project easywall was created in a time when I did not have any knowledge about Linux. Today I work as an administrator for Linux systems and would not need this project anymore. Nevertheless it is important to me to support the introduction to Linux and the use and simplification of firewalls.
To continue the project, I need your support! Please donate so that I can continue the project in my spare time. Every dollar counts! You can find a donation link on GitHub.
What does it look like
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.