====== firewalld======
[[linux:linux|{{ :dokuwiki:tux.png?120|}}]]
===== context=====
dit document beschrijft de werking van firewalld, de firewall die op centos/redhat wordt gebruikt.
===== algemeen =====
* meest opmerkelijke is de ondersteuning voor **zones** waaraan je interfaces toevoegt en die de firewall config uit die zone overnemen. \\ Enkele voorbeelden: public, home, block, internal, ...
* toegangen worden gedefinieerd in **services** waarbij je protocol en poort tot een herbruikbaar geheel samenvoegt. \\ bv: ssh: tcp/22, dns: udp/53, ...
* zones, services, ports worden bewaard in xml-bestanden die bij starten van de firewall worden ingeladen. \\ Die kan je vinden onder /etc/firewalld/
* all beschikbare configuraties kan je vinden onder /usr/lib/firewalld
* beheer doe je in grote make ahv ''firewall-cmd''
===== zones =====
* overzicht van alle (configureerbare) zones:sudo firewall-cmd --list-all-zones
* overzicht van alle actieve zones.\\ Indien geen output (en de firewall is actief) is het de default zonesudo firewall-cmd --get-active-zones
* default zone:sudo firewall-cmd --get-default-zone
===== services =====
* actieve configuratie van een zone:sudo firewall-cmd --zone=--list-services
* overzicht van alle beschikbare services (''/usr/lib/firewalld/services''): sudo firewall-cmd --get-services
* service toevoegen: firewall-cmd --zone= --add-service=
* service permanent toevoegen aan de firewall config: firewall-cmd --runtime-to-permanent
===== poorten =====
* poort toevoegen: firewall-cmd --zone= --add-port=/ --permanent
* voobeeld: firewall-cmd --zone=public --add-port=10000/tcp --permanent
===== beheer =====
==== start/stop ====
* starten, stoppen en reload config:sudo systemctl start|stop|restart|status firewalld
==== eigen service toevoegen ====
* ''firewall-cmd --permanent --new-service-from-file=.xml --name=nieuweService''
* bewerk ''/etc/firewalld/services/.xml''
* reload de firewall: ''systemctl reload firewalld''
* voeg de service toe aan de zone: ''firewall-cmd --zone=public --add-service=''
* voeg service aan permanente configuratie toe: firewall-cmd --runtime-to-permanent
* herstart firewalld service: ''systemctl restart firewalld''
==== eigen service verwijderen ====
* ''firewall-cmd --permanent --delete-service=serviceNaam''
===== logging=====
TODO
===== meer info =====
- [[https://www.certdepot.net/rhel7-get-started-firewalld/| firewalld: getting started]]
- [[https://firewalld.org/documentation/howto/add-a-service.html|adding our own service]]
{{tag>Linux firewalld}}