Skip to content
Firewall daemon with D-Bus interface
Branch: master
Clone or download
Pull request Compare This branch is 489 commits behind firewalld:master.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config services/amqp: Add AMQP and AMQPS services Jan 31, 2018
doc firewallctl: mark deprecated (firewalld#261) Jan 25, 2018
po Update translations from zanata Oct 11, 2017
shell-completion
src
.gitignore .gitignore: Ignore auto-generated files Dec 4, 2017
.travis.yml
COPYING - using newer GPL license file Jan 3, 2011
Makefile.am
README README: Use proper links for mailing lists Jul 17, 2017
TODO Do not allow to set settings in config for immutable zones. Jul 4, 2013
autogen.sh autogen.sh: Allow skipping configure via NOCONFIGURE env var Sep 11, 2017
configure.ac Build system: Add option to override the 'ifcfg' directory Nov 15, 2017
doxygen.conf.in
firewalld.spec
fix_python_shebang.sh
py-compile - initial checkin Dec 20, 2010
zanata.xml Use zanata for translations Mar 11, 2015

README

README for firewalld
====================

firewalld provides a dynamically managed firewall with support for network or 
firewall zones to define the trust level of network connections or interfaces. 
It has support for IPv4, IPv6 firewall settings and for ethernet bridges and a 
separation of runtime and permanent configuration options. It also provides an 
interface for services or applications to add ip*tables and ebtables rules 
directly. 


Development
-----------
To check out the source repository, you can use:

  git clone https://github.com/firewalld/firewalld.git

This will create a local copy of the repository.


Working With The Source Repository
----------------------------------
You can use the source repository directly to test out changes. Change into the 
firewalld base directory and set the following environment variables.

  export FIREWALLD_DEVEL_ENV=$(pwd)/src
  export PYTHONPATH=$FIREWALLD_DEVEL_ENV

Install the following requirements or packages:

  desktop-file-utils: /usr/bin/desktop-file-install
  gettext
  intltool
  glib2: /usr/bin/glib-compile-schemas
  glib2-devel: /usr/share/aclocal/gsettings.m4
  systemd-units
  iptables
  ebtables
  ipset

For use with Python 3:

  python3-dbus
  python3-slip-dbus
  python3-decorator
  python3-gobject

For use with Python 2:

  dbus-python
  python-slip-dbus (http://fedorahosted.org/python-slip)
  python-decorator
  pygobject3-base (non-cairo parts of pygobject3)

To be able to create man pages and documentation from docbook files:

  docbook-style-xsl


Use

  ./autogen.sh

in the base directory to create for example src/firewall/config/__init__.py

Use

  make

to create the documentation and to update the po files.

Now you are done.


RPM package
-----------

For Fedora and RHEL based distributions, there is a spec file in the source
repo named firewalld.spec. This should be usable for Fedora versions >= 16 and
RHEL >= 7.


Links
-----
Homepage:          http://www.firewalld.org
Report a bug:      https://github.com/firewalld/firewalld/issues
Git repo browser:  https://github.com/firewalld/firewalld
Git repo:          https://github.com/firewalld/firewalld.git
Documentation:     http://www.firewalld.org/documentation/


Mailing lists
-------------
For usage:         https://lists.fedorahosted.org/archives/list/firewalld-users@lists.fedorahosted.org/
For development:   https://lists.fedorahosted.org/archives/list/firewalld-devel@lists.fedorahosted.org/


Directory Structure
-------------------
config/                 Configuration files
config/icmptypes/       Predefined ICMP types
config/services/        Predefined services
config/xmlschema/       XML Schema checks for config files
config/zones/           Predefined zones
config/ipsets/          Predefined ipsets
doc/                    Documentation
doc/man/                Base directory for man pages
doc/man/man1/           Man(1) pages
doc/man/man5/           Man(5) pages
patches/                Common patches
po/                     Translations
shell-completion/       Base directory for auto completion scripts
shell-completion/bash/  Bash auto completion scripts
src/                    Source tree
src/firewall/           Import tree for the sevice and all applications
src/icons/              Icons in the sizes: 16, 22, 24, 32, 48 and scalable
src/tests/              Test scripts
You can’t perform that action at this time.