Firewall-/IP-Regelprobleme zwischen zwei Hosts über vSwitch

Firewall-/IP-Regelprobleme zwischen zwei Hosts über vSwitch

Ich habe hier zwei Server im Einsatz, einer ist ein Qemu-VM-Host, der andere ist eine Art Speicherbox.

Es handelt sich um Hetzner-Maschinen und ich habe sie über einen vSwitch verbunden.

Server1 vSwitch-Schnittstelle:

3: local@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 10:7b:44:b1:5b:7d brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.1/24 brd 192.168.100.255 scope global local
       valid_lft forever preferred_lft forever

Server1 (VM-Host) IP-Route:

default via <redacted-public-ip> dev eth0 proto static metric 100 
<redacted-public-ip> dev eth0 proto static scope link metric 100 
192.168.10.0/24 dev virbr0 proto kernel scope link src 192.168.10.254 metric 425 <-- virbr0 network
192.168.10.253 via 192.168.100.2 dev local <-- srv02 IP to fit in virbr0 net space

Server2 vSwitch-Schnittstelle:

3: local@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc noqueue state UP group default qlen 1000
    link/ether 08:60:6e:44:d6:2a brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.2/24 brd 192.168.100.255 scope global local
       valid_lft forever preferred_lft forever
    inet 192.168.10.253/24 brd 192.168.10.255 scope global local
       valid_lft forever preferred_lft forever

Server2-IP-Route:

default via <redacted-public-ip> dev eth0 proto static metric 100 
<redacted-public-ip> dev eth0 proto static scope link metric 100 
192.168.10.0/24 dev local proto kernel scope link src 192.168.10.253  <-- to access virbr0 via vSwitch

Ich gehe davon aus, dass ich die Routen richtig eingerichtet habe, da bei ausgeschaltetem Firewalld-Dienst alles einwandfrei funktioniert.

Wenn ich es jedoch einschalte, beginnen die Probleme.

Dies sind die Firewall-Zonen auf Server1 (auf dem alles funktioniert, wenn ich Firewall deaktiviere)

libvirt (active)
  target: ACCEPT
  icmp-block-inversion: no
  interfaces: virbr0
  sources: 
  services: dhcp dhcpv6 dns ssh tftp
  ports: 
  protocols: icmp ipv6-icmp
  forward: no
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 
    rule priority="32767" reject


public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0 local
  sources: 
  services: cockpit dhcpv6-client ssh
  ports: 
  protocols: 
  forward: no
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

Ich habe versucht, Masquerade auf jedem dieser Server gleichzeitig einzuschalten, aber ohne Erfolg. Ich „teste“ dies mit einem einfachen Ping von Server2 zu einer der VMs auf virbr0.

Gibt es hier irgendetwas Offensichtliches, das ich übersehe?

Vielen Dank an alle im Voraus.

Antwort1

Ich konnte dieses Problem beheben, indem ich die folgenden beiden Regeln auf dem QEMU-Host verwendete

firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -o local -i virbr0 -j ACCEPT

firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -o virbr0 -i local -j ACCEPT

verwandte Informationen