Adopção do meu tutorial sobre zonas baseadas em IP para firewalld :
Comece alterando a zona padrão para ser descartada:
firewallctl config set default-zone drop
A zona de recebimento descarta todas as conexões de entrada. Você pode querer considerar a block
zone que faz o mesmo, exceto que ela retorna uma conexão bloqueada em vez de apenas deixá-la silenciosamente. Em seguida, crie uma nova zona e vincule-a a uma sub-rede de endereços IP (ou um único endereço):
firewallctl new --permanent zone --name "myzone"
firewallctl zone "myzone" --permanent add source "198.51.100.0/24"
firewallctl zone "myzone" --permanent add source "2001:0DB8::/32"
(Lembre-se de estar preparado para o IPv6!) Verifique se as suas zonas estão bem:
firewallctl info zones --active
Neste ponto, você inicia adicionando portas ou serviços a myzone
. Estes serviços só serão acessíveis a partir da zona / sub-rede IP que você adicionar e não na zona padrão de queda / pública.