Como posso configurar o firewalld para compartilhar uma única interface com várias zonas?

0

CentOS 7

Eu tenho duas zonas (domésticas e públicas). Gostaria de permitir o SSH da minha casa, mas não do público.

[root@foobox ~]# firewall-cmd --list-all --zone=home
home (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0
  sources: 1.2.3.4
  services: ssh https
  ports: 12345/tcp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

[root@foobox~]# firewall-cmd --list-all --zone=public
public
  target: default
  icmp-block-inversion: no
  interfaces:
  sources:
  services: https
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks: echo-reply
  rich rules:

Como não há interface ou fonte associada à zona pública, suspeito que tudo esteja correspondendo em casa e usando isso.

Eu só tenho uma interface e não quero criar uma configuração dual-homed ... então como posso dizer firewall-cmd "se o cliente remoto está vindo de 1.2.3.4 usar a zona de origem ... se é qualquer outro IP de origem remota, use a zona pública "?

Eu achei que poderia ser tão simples quanto adicionar uma interface, mas recebo um erro:

[root@foobox ~]# firewall-cmd --permanent --zone=public --add-interface=eth0
Error: ZONE_CONFLICT: eth0
    
por Mike B 26.07.2018 / 17:18

0 respostas