[1] Firewalld – Podstawy
7 marca 2022To są podstawowe operacje Firewalld. Definicja usług jest ustawiona na strefy w Firewalld.
Aby włączyć/wyłączyć zaporę, przypisz strefę do karty sieciowej za pomocą powiązanych poleceń.
[1] Aby użyć Firewalld, uruchom usługę.
[root@vlsr08 ~]# systemctl enable --now firewalld
[2] Domyślnie strefa [public] jest stosowana z każdą kartą sieciową, a cockpit, dhcpv6-client, ssh są dozwolone. Podczas pracy z poleceniem [firewall-cmd], jeśli wprowadzisz polecenie bez specyfikacji [–zone=***], konfiguracja zostanie ustawiona na strefę domyślną.
# pokaż domyślną strefę [root@vlsr08 ~]# firewall-cmd --get-default-zone Public # pokaż aktualne ustawienia [root@vlsr08 ~]# firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: ens160 sources: services: cockpit dhcpv6-client ssh ports: protocols: forward: no masquerade: no forward-ports: source-ports: icmp-blocks: rich rules: # pokaż wszystkie strefy domyślnie skonfigurowane [root@vlsr08 ~]# firewall-cmd --list-all-zones block target: %%REJECT%% icmp-block-inversion: no interfaces: sources: services: ports: protocols: forward: no masquerade: no forward-ports: source-ports: icmp-blocks: rich rules: dmz target: default icmp-block-inversion: no interfaces: sources: services: ssh ports: protocols: forward: no masquerade: no forward-ports: source-ports: icmp-blocks: rich rules: # pokaż dozwolone usługi w wyspecyfikowanej strefie [root@vlsr08 ~]# firewall-cmd --list-service --zone=external Ssh # zmień domyślną strefę [root@vlsr08 ~]# firewall-cmd --set-default-zone=external Success # zmień strefę dla określonego interfejsu # uwaga! nie jest zmieniany na stałe za pomocą [change-interface], nawet jeśli dodano opcję [--permanent] [root@vlsr08 ~]# firewall-cmd --change-interface=ens160 --zone=external success [root@vlsr08 ~]# firewall-cmd --list-all --zone=external external (active) target: default icmp-block-inversion: no interfaces: ens160 sources: services: ssh ports: protocols: forward: no masquerade: yes forward-ports: source-ports: icmp-blocks: rich rules: #jeśli chcesz zmienić na stałe, użyj komendy [nmcli] [root@vlsr08 ~]# nmcli connection modify ens160 connection.zone external [root@vlsr08 ~]# firewall-cmd --get-active-zone external interfaces: ens160
[3] Pokaż usługi zdefiniowane domyślnie. Jeśli nie określisz strefy [–zone=XXX] definicje zostaną przypisane do domyślnej strefy – patrz [2].
[root@vlsr08 ~]# firewall-cmd --get-services RH-Satellite-6 RH-Satellite-6-capsule amanda-client amanda-k5-client amqp amqps apcupsd audit bacula bacula-client bb bgp bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc bittorrent-lsd ceph ceph-mon cfengine cockpit collectd condor-collector ctdb dhcp dhcpv6 dhcpv6-client distcc . . . . . #pliki definicji są umieszczane w katalogu jak poniżej # jeśli chcesz dodać swoją oryginalną definicję, dodaj tam plik XML [root@vlsr08 ~]# ls /usr/lib/firewalld/services amanda-client.xml iscsi-target.xml rdp.xml amanda-k5-client.xml isns.xml redis-sentinel.xml amqps.xml jenkins.xml redis.xml amqp.xml kadmin.xml RH-Satellite-6-capsule.xml apcupsd.xml kdeconnect.xml RH-Satellite-6.xml audit.xml kerberos.xml rpc-bind.xml bacula-client.xml kibana.xml rquotad.xml bacula.xml klogin.xml rsh.xml bb.xml kpasswd.xml rsyncd.xml bgp.xml kprop.xml rtsp.xml bitcoin-rpc.xml kshell.xml salt-master.xml bitcoin-testnet-rpc.xml kube-apiserver.xml samba-client.xml . . . . .
[4] Dodaj lub usuń dozwolone usługi.
Zmiana nie zostanie zachowana po ponownym uruchomieniu systemu. Jeśli zmieniasz ustawienia na stałe, dodaj opcję [–permanent]. Jeśli nie określisz strefy [–zone=XXX] definicje zostaną przypisane do domyślnej strefy – patrz [2].
# dodaj [http] zmiana zostanie utracona po restarcie systemu [root@vlsr08 ~]# firewall-cmd --add-service=http # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx success [root@vlsr08 ~]# firewall-cmd --list-service # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx http ssh # usuń [http] [root@vlsr08 ~]# firewall-cmd --remove-service=http # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx success [root@vlsr08 ~]# firewall-cmd --list-service # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx ssh # dodaj [http] permanentnie – ta zmiana wymaga restartu usługi Firewalld [root@vlsr08 ~]# firewall-cmd --add-service=http --permanent # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx success [root@vlsr08 ~]# firewall-cmd --reload success [root@vlsr08 ~]# firewall-cmd --list-service # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx http ssh
[5] Dodaj i usuń porty. Jeśli nie określisz strefy [–zone=XXX] definicje zostaną przypisane do domyślnej strefy – patrz [2].
# dodaj port [456] [root@vlsr08 ~]# firewall-cmd --add-port=465/tcp # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx success [root@vlsr08 ~]# firewall-cmd --list-port # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx 465/tcp # usuń port [456] [root@vlsr08 ~]# firewall-cmd --remove-port=465/tcp # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx success [root@vlsr08 ~]# firewall-cmd --list-port # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx # dodaj port [456] permanentnie [root@vlsr08 ~]# firewall-cmd --add-port=465/tcp --permanent # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx success [root@vlsr08 ~]# firewall-cmd --reload success [root@vlsr08 ~]# firewall-cmd --list-port # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx 465/tcp
[6] Dodaj lub usuń zabronione typy ICMP. Jeśli nie określisz strefy [–zone=XXX] definicje zostaną przypisane do domyślnej strefy – patrz [2].
# dodaj [echo-request] do zabronionej listy [root@vlsr08 ~]# firewall-cmd --add-icmp-block=echo-request # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx success [root@vlsr08 ~]# firewall-cmd --list-icmp-blocks # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx echo-request # usuń [echo-request] z listy zabronionej [root@vlsr08 ~]# firewall-cmd --remove-icmp-block=echo-request # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx success [root@vlsr08 ~]# firewall-cmd --list-icmp-blocks # aby określić strefę, której dotyczy ta reguła dodaj --zone=xxxx # pokaż dostępne typy ICMP [root@vlsr08 ~]# firewall-cmd --get-icmptypes address-unreachable bad-header beyond-scope communication-prohibited destination-unreachable echo-reply echo-request failed-policy fragmentation-needed host-precedence-violation host-prohibited host-redirect host-unknown host-unreachable ip-header-bad neighbour-advertisement neighbour-solicitation network-prohibited network-redirect network-unknown network-unreachable no-route packet-too-big parameter-problem port-unreachable precedence-cutoff protocol-unreachable redirect reject-route required-option-missing router-advertisement router-solicitation source-quench source-route-failed time-exceeded timestamp-reply timestamp-request tos-host-redirect tos-host-unreachable tos-network-redirect tos-network-unreachable ttl-zero-during-reassembly ttl-zero-during-transit unknown-header-type unknown-option