Firewalld: Atribuição de regras amplas e explícitas em zonas

Firewalld: Atribuição de regras amplas e explícitas em zonas

Estou tentando configurar firewalldpela primeira vez. Tenho dois tipos de regras que gostaria de adicionar:

  • Regras que permitem apenas tráfego em portas específicas com determinadas fontes.
  • Regras que permitem TODO o tráfego de fontes específicas.

Digamos que eu crie uma nova zona chamada "myZone". Quero permitir TODO o tráfego de 10.95.0.0/16, mas apenas o tráfego relacionado ao LDAP de 10.96.59.23.

Então adiciono as fontes ao "myZone":

firewall-cmd --permanent --zone=myZone --add-source=10.95.0.0/16
firewall-cmd --permanent --zone=myZone --add-source=10.96.59.23

Agora é hora de adicionar a porta LDAP na qual desejo permitir o tráfego:

firewall-cmd --zone=myZone --add-port=389/tcp

No entanto, o que isso fará exatamente? Imagino que isso esteja sendo aplicado a todas as fontes em "myZone"? Quero restringir 10.96.59.23apenas o tráfego LDAP, mas permitir QUALQUER tráfego para arquivos 10.95.0.0/16. Tenho a sensação de que estou perdendo algo fundamental aqui.

Teoricamente pensei que poderia criar duas zonas, digamos "workstationZone" e "ldapZone". Posso então atribuir a porta 389 a "ldapZone". No entanto, não consigo atribuir várias zonas a uma única interface.

# firewall-cmd --zone workstationZone --add-interface ens32 --permanent
success
# firewall-cmd --zone ldapZone --add-interface ens32 --permanent
success
#firewall-cmd --get-active-zones
workstationZone
  interfaces: ens32
  sources: 10.95.0.0/16
ldapZone
  sources: 10.96.59.23

Eu esperava acima que minha interface "ens32" fosse adicionada a ambas as zonas.

Outra opção que vejo é usar "regras ricas", porém parece haver muitas recomendações para evitar usá-las por serem difíceis de manter.

Mais uma vez, sinto que estou perdendo algo totalmente fundamental, mas mesmo depois de ler alguns guias, simplesmente não estou entendendo. Se alguém puder ajudar a me esclarecer, ficaria muito grato.

Responder1

Se o tráfego a ser permitido for diferente entre fontes/interfaces, você deverá criar novas zonas. Uma zona define um conjunto de tráfego permitido e, em seguida, aplica-o às interfaces e/ou redes de origem especificadas.

Por exemplo, você pode ter uma zona que permite todo o tráfego (já existe por padrão; é chamada trusted), outra zona que permite o tráfego LDAP e outra zona que permite algum outro conjunto de serviços.

Observe que uma interface ou origem só pode estar em uma zona; portanto, você deve atribuir cada uma delas a uma zona e o tráfego permitido por essa zona será aplicado a essa interface ou origem. Isso pode significar que você precisa criar outra zona, mas está perfeitamente bem.

Lembre-se, vocênão deveriause --permanentaté que você esteja satisfeito com o funcionamento das regras. Caso contrário, você poderá travar com um erro de digitação e precisar inicializar em um ambiente de resgate para se recuperar. Em vez disso, adicione suas regras e, quando estiver satisfeito com o funcionamento de todas, use firewall-cmd --runtime-to-permanentpara salvá-las. (E se você se bloquear com um erro de digitação, reiniciar o firewalld ou o computador reverterá todas as alterações não salvas.)

Além disso, evite digitar. A palavra Zoneno nome da zona é redundante.

informação relacionada