# firewall-cmd --add-interface=[INTERFACE] --zone=internal --permanent
Editar a interface em /etc/sysconfig/network-scripts/ifcfg-[INTERFACE]
e incluir :
[...] ZONE=internal
Criar o arquivo /etc/network/if-pre-up.d/firewalld-zone-internal
:
nmcli connection modify [INTERFACE] connection.zone internal
Permissão de execução:
# chmod +x /etc/network/if-pre-up.d/firewalld-zone-internal
Em public (quando não informamos a zona):
# firewall-cmd --add-service=http --permanent
Em outra zona:
# firewall-cmd --zone=internal --add-service=http --permanent
# firewall-cmd --add-port=1234/[tcp ou udp] --permanent
# firewall-cmd --reload
# firewall-cmd --get-active-zones
# firewall-cmd --get-services
# firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.0.0.0/8" service name="http" accept"
# firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="146.164.0.0/16" port port=9101 protocol=tcp accept"
Pode-se também liberar um range de portas:
# firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="146.164.0.0/16" port port=9101-9109 protocol=tcp accept"
Obs.: O parâmetro –remove-rich-rule
remove as regras citadas acima.
O modo pânico bloqueia qualquer a passagem de dados, tanto as conexões de entrada quanto as de saída.
# firewall-cmd --panic-on
Para desligar o modo pânico, o comando é:
# firewall-cmd --panic-off
Para verificar se o modo pânico está ativo ou não:
# firewall-cmd --query-panic
# firewall-cmd --zone=external --add-masquerade
Verificar se o recurso masquerade está liberado no firewall:
# firewall-cmd --zone=external --query-masquerade
# firewall-cmd --zone=external --add-forward-port=port=22:proto=tcp:toport=2222:toaddr=192.168.0.132
Listando os serviços ICMP disponíveis no FirewallD:
# firewall-cmd --get-icmptypes
Verificando se um serviço ICMP está ou não bloqueado:
# firewall-cmd --zone=public --query-icmp-block=echo-reply
Bloqueando um serviço ICMP:
# firewall-cmd --zone=public --add-icmp-block=echo-reply
Listar regras:
# firewall-cmd --direct --get-rules ipv4 filter IN_public_allow
Adicionar uma nova regra:
# firewall-cmd --direct --add-rule ipv4 filter IN_public_allow 0 -m tcp -p tcp --dport 25 -j ACCEPT
Remover uma regra já existente:
# firewall-cmd --direct --remove-rule ipv4 filter IN_public_allow 0 -m tcp -p tcp --dport 25 -j ACCEPT