X-Git-Url: https://git.proxmox.com/?p=pve-firewall.git;a=blobdiff_plain;f=src%2FPVE%2FFirewall.pm;h=630e5c4dd39413268e447325f3442d870d7e99e0;hp=d378c4fca2b3d4c1b5461e7d920a3a052b913e91;hb=e9d9a73efe2b600ef7d0933e24fc8b6a5f126aa4;hpb=236f55b95570a16db5f17d1ff367282fcc2760ee diff --git a/src/PVE/Firewall.pm b/src/PVE/Firewall.pm index d378c4f..630e5c4 100644 --- a/src/PVE/Firewall.pm +++ b/src/PVE/Firewall.pm @@ -1999,8 +1999,6 @@ sub compile { enable_host_firewall($ruleset, $hostfw_conf, $groups_conf) if $hostfw_enable; - my $ips_enable = undef; - # generate firewall rules for QEMU VMs foreach my $vmid (keys %{$vmdata->{qemu}}) { my $conf = $vmdata->{qemu}->{$vmid}; @@ -2008,8 +2006,6 @@ sub compile { next if !$vmfw_conf; next if defined($vmfw_conf->{options}->{enable}) && ($vmfw_conf->{options}->{enable} == 0); - $ips_enable = 1 if $vmfw_conf->{options}->{ips}; - foreach my $netid (keys %$conf) { next if $netid !~ m/^net(\d+)$/; my $net = PVE::QemuServer::parse_net($conf->{$netid}); @@ -2039,8 +2035,6 @@ sub compile { next if !$vmfw_conf; next if defined($vmfw_conf->{options}->{enable}) && ($vmfw_conf->{options}->{enable} == 0); - $ips_enable = 1 if $vmfw_conf->{options}->{ips}; - if ($conf->{ip_address} && $conf->{ip_address}->{value}) { my $ip = $conf->{ip_address}->{value}; generate_venet_rules_direction($ruleset, $groups_conf, $vmfw_conf, $vmid, $ip, 'IN'); @@ -2071,7 +2065,7 @@ sub compile { if($hostfw_options->{optimize}){ - my $accept = $ips_enable ? "PVEFW-IPS" : "ACCEPT"; + my $accept = ruleset_chain_exist($ruleset, "PVEFW-IPS") ? "PVEFW-IPS" : "ACCEPT"; ruleset_insertrule($ruleset, "PVEFW-FORWARD", "-m conntrack --ctstate RELATED,ESTABLISHED -j $accept"); ruleset_insertrule($ruleset, "PVEFW-FORWARD", "-m conntrack --ctstate INVALID -j DROP"); }