Tento článek poskytuje základní informace o tom, jak používat firewalld
softwarový firewall. Tento firewall je výchozím řešením firewallu pro distribuce Linuxu založené na RHEL® 7 a CentOS® 7.
Poznámka :Pokud potřebujete provést změny ve vaší bráně firewall na serveru RackConnect®, musíte to provést prostřednictvím správce Dedicated Firewall Manager.
Předpoklady
Musíte mít následující předpoklady:
- Základní pochopení Secure Shell (SSH®)
- Sudo nebo administrativní přístup k vašemu serveru
- Cloudový server jiný než RackConnect se systémem RHEL 7 nebo CentOS 7
Co je firewall?
firewalld
služba je výchozí a nejběžnější řešení softwarového firewallu používané v RHEL a CentOS 7. Jedná se o obal na iptables
který používá odlišnou syntaxi k aplikaci nových pravidel.
Jak firewalld funguje?
firewalld
služba používá zóny k řízení přístupu k firewallu. Zóny jsou předem vytvořené sady pravidel pro různé úrovně důvěryhodnosti. Pravděpodobně máte zónu pro dané místo nebo scénář, například home
, public
, nebo trusted
. Různé zóny umožňují různé síťové služby a typy příchozího provozu, zatímco vše ostatní odmítají. Poté, co povolíte firewalld
poprvé public
je výchozí zóna.
Zde je několik příkladů zón:
Zóna | Co to dělá |
---|---|
public | Toto je externí zónu nebo zónu orientovanou na internet. Nedůvěřujete spojením pocházejícím z vnějšího světa a povolujete pouze konkrétní služby. |
internal | Toto je tradičně vnitřek sítě za firewallem. |
dmz | Tato zóna je určena pro použití na počítačích umístěných v DMZ (demilitarizovaná zóna). Pouze některá příchozí připojení mají přístup k omezené vnitřní síti. |
drop | Provoz určený k drop zóna je zrušena bez jakékoli odpovědi. Použijte to jako černou díru pro škodlivé adresy IP. |
trusted | trusted přijímá všechna spojení. Používejte tuto zónu střídmě. |
Povolení a kontrola stavu brány firewall
Než začnete, musíte se ujistit, že firewalld
běží na vašem serveru. Můžete to zkontrolovat pomocí následujícího příkazu:
firewall-cmd --state
Pokud je služba spuštěna, měli byste obdržet výstup indikující, že služba běží.
Pokud služba není spuštěna, můžete ji spustit spuštěním následujícího příkazu:
systemctl start firewalld
Můžete také povolit firewalld
spustit při spuštění spuštěním následujícího příkazu:
systemctl enable firewalld
Zóny v firewalld
Než přidáte pravidla, musíte zkontrolovat výchozí nastavení v firewalld
.
Chcete-li zkontrolovat výchozí zónu v firewalld
, můžete spustit následující příkaz:
firewall-cmd --get-default-zone
Ve výchozím nastavení je tato zóna nastavena jako public
. Další zóny můžete zobrazit pomocí následujícího příkazu:
firewall-cmd --get-zones
Tento příkaz vypíše dostupné zóny v firewalld
.
Jak bylo uvedeno dříve, různé zóny v firewalld
mají různé funkce. Můžete určit připojení zónového a ethernetového ovladače, abyste získali větší kontrolu nad přístupem k vašemu serveru, ale pro účely Rackspace použijete výchozí konfiguraci a upravíte public
zóny.
Základní firewalld
anatomie pravidla
Když napíšete firewalld
pravidlo, potřebujete několik základních položek v pravidle.
-
Zadejte příkaz.
-
Určete zónu a změňte ji.
-
Nastavte vytrvalost.
Když to všechno dáte dohromady, dostanete něco jako následující příklad:
firewall-cmd --zone=public --add-source=127.0.0.1 --permanent
Tento příkaz umožňuje přístup z IP 127.0.0.1
public
zóna. Existují další dostupné příznaky, ale toto je základní konstrukce firewalld
pravidlo.
Stálá vlajka a rozšířená pravidla
trvalý příznak může nastavit perzistenci pravidel a umožnit doladění pravidel pomocí rozšířených pravidel .
Trvalý příznak
Použití trvalého příznaku neaktivuje pravidlo v běžící konfiguraci. Chcete-li zajistit, aby pravidlo přetrvávalo, musíte pravidlo přidat podruhé s trvalým příznakem.
Příklad trvalého příznaku:
firewall-cmd --add-source=12.345.67.89 --zone=trusted --permanent
Rozsáhlá pravidla
Bohatá pravidla nabízejí větší kontrolu díky vlastním podrobným možnostem. Bohatá pravidla mohou konfigurovat protokolování, maskování, přesměrování portů a omezení rychlosti.
Příklad rozšířených pravidel:
firewall-cmd --add-rich-rule='rule family=ipv4 source address="123.45.69.78" port port="11" protocol=tcp accept' --permanent
Poznámka :Směs bohatých pravidel a běžných pravidel může vést k chaotické konfiguraci. Použití pouze rozšířených pravidel pro určitá pravidla, jako je přístup SSH, může pomoci udržet vaše nastavení čisté.
Příklady příkazů
Nakonec zde je několik příkladů firewalld
příkazy.
Příkaz | Co to dělá |
---|---|
firewall-cmd --add-source=12.345.67.89 --zone=trusted | Tento příkaz přijímá provoz ze zadané IP do důvěryhodné zóny. |
firewall-cmd --zone=drop --add-source=12.345.67.89/24 | Tento příkaz sníží provoz ze zadaného rozsahu IP. |
firewall-cmd --zone=public --add-service=ssh | Tento příkaz umožňuje provoz přes SSH ve veřejné zóně. |
firewall-cmd --zone=public --list-all | Tento příkaz vypíše všechny specifikace nastavené pro zónu, jako jsou zdroje, služby, rozšířená pravidla a tak dále. |
firewall-cmd --add-rich-rule='rule family=ipv4 source address="123.456.789.123" port port="22" protocol=tcp accept' --permanent | Tento příkaz přidá rozšířené pravidlo pro povolení přístupu ze zadané IP na portu 22 přes TCP na public zóny. |
Další čtení
Tento dokument pouze poškrábe povrch možností s firewalld
. Můžete si prohlédnout man
stránka pro firewalld
nebo si prostudujte oficiální dokumentaci pro firewalld
na https://firewalld.org/documentation/man-pages/firewall-cmd.html.