From: Alexander Marx Date: Tue, 11 Jun 2013 13:53:31 +0000 (+0200) Subject: Forward Firewall: Implemented INPUT Firewall (extended external access) X-Git-Url: http://git.ipfire.org/?p=people%2Fteissler%2Fipfire-2.x.git;a=commitdiff_plain;h=05d4f131e9f96a27249f1e833923ba2790dbd49a Forward Firewall: Implemented INPUT Firewall (extended external access) Now you are able to define INPUT Rules on every interface ip --- diff --git a/config/forwardfw/rules.pl b/config/forwardfw/rules.pl index 529943f81..12397037e 100755 --- a/config/forwardfw/rules.pl +++ b/config/forwardfw/rules.pl @@ -215,7 +215,16 @@ sub buildrules } } }elsif($$hash{$key}[5] eq 'ipfire'){ - if($$hash{$key}[6] eq 'Default IP'){ + if($$hash{$key}[6] eq 'GREEN'){ + $targethash{$key}[0]=$defaultNetworks{'GREEN_ADDRESS'}; + } + if($$hash{$key}[6] eq 'BLUE'){ + $targethash{$key}[0]=$defaultNetworks{'BLUE_ADDRESS'}; + } + if($$hash{$key}[6] eq 'ORANGE'){ + $targethash{$key}[0]=$defaultNetworks{'ORANGE_ADDRESS'}; + } + if($$hash{$key}[6] eq 'RED'){ open(FILE, "/var/ipfire/red/local-ipaddress") or die 'Unable to open config file.'; $targethash{$key}[0]= ; close(FILE); diff --git a/html/cgi-bin/forwardfw.cgi b/html/cgi-bin/forwardfw.cgi index 35d0bc563..22b0d407c 100755 --- a/html/cgi-bin/forwardfw.cgi +++ b/html/cgi-bin/forwardfw.cgi @@ -78,7 +78,7 @@ my %aliases=(); my %optionsfw=(); my %ifaces=(); -my $VERSION='0.9.9.6a'; +my $VERSION='0.9.9.7'; my $color; my $confignet = "${General::swroot}/fwhosts/customnetworks"; my $confighost = "${General::swroot}/fwhosts/customhosts"; @@ -1501,7 +1501,7 @@ sub getcolor }elsif ($val eq 'BLUE'){ $tdcolor="style='border: 1px solid $Header::colourblue;'"; return; - }elsif ($val eq 'RED'){ + }elsif ($val eq 'RED' ||$val eq 'RED1' ){ $tdcolor="style='border: 1px solid $Header::colourred;'"; return; }elsif ($val eq 'IPFire' ){ @@ -1802,17 +1802,18 @@ END END - if (! -z "${General::swroot}/ethernet/aliases"){ - print" @@ -2506,8 +2507,13 @@ END } print"
DNAT->"; } - if ($$hash{$key}[5] eq 'std_net_tgt'){ - print &get_name($$hash{$key}[6]); + if ($$hash{$key}[5] eq 'std_net_tgt' || $$hash{$key}[5] eq 'ipfire' && $$hash{$key}[6] eq 'RED' || $$hash{$key}[6] eq 'RED1' || $$hash{$key}[6] eq 'GREEN' || $$hash{$key}[6] eq 'ORANGE' || $$hash{$key}[6] eq 'BLUE' ){ + if ($$hash{$key}[6] eq 'RED1') + { + print $Lang::tr{'red1'}; + }else{ + print &get_name($$hash{$key}[6]); + } }else{ print $$hash{$key}[6]; } diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 40f6c4599..311b096be 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -1719,6 +1719,7 @@ 'reconnect' => 'Neu Verbinden', 'reconnection' => 'Wiederverbindung', 'red' => 'Internet', +'red1' => 'ROT', 'references' => 'Referenzen', 'refresh' => 'Aktualisieren', 'refresh index page while connected' => 'Aktualisere index.cgi Seite während der Verbindung', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index 2f3ec67e5..5713d66d5 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -1750,6 +1750,7 @@ 'reconnect' => 'Reconnect', 'reconnection' => 'Reconnection', 'red' => 'Internet', +'red1' => 'RED', 'references' => 'References', 'refresh' => 'Refresh', 'refresh index page while connected' => 'Refresh index.cgi page while connected',
$Lang::tr{'fwdfw targetip'}IPFire"; } print<