X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=blobdiff_plain;f=html%2Fcgi-bin%2Foptionsfw.cgi;h=1ab3c7d7987f0efb0098506a81c2d33f18cc3db3;hp=898ee286fe65c677b2ddbebed6bd674dd1582171;hb=5fbd7b29829caf0bcadcccd6f56ead51e2fb812e;hpb=d998784149c62299aa7c417b7a7919c3d9abdcf7 diff --git a/html/cgi-bin/optionsfw.cgi b/html/cgi-bin/optionsfw.cgi index 898ee286fe..1ab3c7d798 100644 --- a/html/cgi-bin/optionsfw.cgi +++ b/html/cgi-bin/optionsfw.cgi @@ -11,7 +11,6 @@ # $Id: optionsfw.cgi,v 1.1.2.10 2005/10/03 00:34:10 gespinasse Exp $ # # - # enable only the following on debugging purpose #use warnings; #use CGI::Carp 'fatalsToBrowser'; @@ -22,52 +21,66 @@ require "${General::swroot}/header.pl"; my %checked =(); # Checkbox manipulations - -# File used -my $filename = "${General::swroot}/optionsfw/settings"; - our %settings=(); -$settings{'DISABLEPING'} = 'NO'; -$settings{'DROPNEWNOTSYN'} = 'on'; -$settings{'DROPINPUT'} = 'on'; -$settings{'DROPFORWARD'} = 'on'; -$settings{'DROPOUTGOING'} = 'on'; -$settings{'DROPPORTSCAN'} = 'on'; -$settings{'DROPWIRELESSINPUT'} = 'on'; -$settings{'DROPWIRELESSFORWARD'} = 'on'; -$settings{'SHOWCOLORS'} = 'off'; -$settings{'SHOWREMARK'} = 'on'; -$settings{'SHOWTABLES'} = 'on'; -$settings{'SHOWDROPDOWN'} = 'off'; +my %fwdfwsettings=(); +my %configfwdfw=(); +my %configoutgoingfw=(); +my $configfwdfw = "${General::swroot}/firewall/config"; +my $configoutgoing = "${General::swroot}/firewall/outgoing"; my $errormessage = ''; my $warnmessage = ''; +my $filename = "${General::swroot}/optionsfw/settings"; +&General::readhash("${General::swroot}/firewall/settings", \%fwdfwsettings); &Header::showhttpheaders(); #Get GUI values &Header::getcgihash(\%settings); - if ($settings{'ACTION'} eq $Lang::tr{'save'}) { - - $errormessage = $Lang::tr{'new optionsfw later'}; - delete $settings{'__CGI__'}; - delete $settings{'x'}; - delete $settings{'y'}; - &General::writehash($filename, \%settings); # Save good settings - }else { - &General::readhash($filename, \%settings); # Get saved settings and reset to good if needed + if ($settings{'defpol'} ne '1'){ + $errormessage .= $Lang::tr{'new optionsfw later'}; + &General::writehash($filename, \%settings); # Save good settings + system("/usr/local/bin/firewallctrl"); + }else{ + if ($settings{'POLICY'} ne ''){ + $fwdfwsettings{'POLICY'} = $settings{'POLICY'}; + } + if ($settings{'POLICY1'} ne ''){ + $fwdfwsettings{'POLICY1'} = $settings{'POLICY1'}; + } + my $MODE = $fwdfwsettings{'POLICY'}; + my $MODE1 = $fwdfwsettings{'POLICY1'}; + %fwdfwsettings = (); + $fwdfwsettings{'POLICY'} = "$MODE"; + $fwdfwsettings{'POLICY1'} = "$MODE1"; + &General::writehash("${General::swroot}/firewall/settings", \%fwdfwsettings); + &General::readhash("${General::swroot}/firewall/settings", \%fwdfwsettings); + system("/usr/local/bin/firewallctrl"); } - system("/usr/local/bin/forwardfwctrl"); + &General::readhash($filename, \%settings); # Load good settings +} + &Header::openpage($Lang::tr{'options fw'}, 1, ''); &Header::openbigbox('100%', 'left', '', $errormessage); - +&General::readhash($filename, \%settings); if ($errormessage) { &Header::openbox('100%', 'left', $Lang::tr{'warning messages'}); print "$errormessage "; &Header::closebox(); } +# Set new defaults +if (!$settings{'MASQUERADE_GREEN'}) { + $settings{'MASQUERADE_GREEN'} = 'on'; +} +if (!$settings{'MASQUERADE_ORANGE'}) { + $settings{'MASQUERADE_ORANGE'} = 'on'; +} +if (!$settings{'MASQUERADE_BLUE'}) { + $settings{'MASQUERADE_BLUE'} = 'on'; +} + $checked{'DROPNEWNOTSYN'}{'off'} = ''; $checked{'DROPNEWNOTSYN'}{'on'} = ''; $checked{'DROPNEWNOTSYN'}{$settings{'DROPNEWNOTSYN'}} = "checked='checked'"; @@ -107,15 +120,90 @@ $checked{'SHOWTABLES'}{$settings{'SHOWTABLES'}} = "checked='checked'"; $checked{'SHOWDROPDOWN'}{'off'} = ''; $checked{'SHOWDROPDOWN'}{'on'} = ''; $checked{'SHOWDROPDOWN'}{$settings{'SHOWDROPDOWN'}} = "checked='checked'"; +$checked{'CONNTRACK_FTP'}{'off'} = ''; +$checked{'CONNTRACK_FTP'}{'on'} = ''; +$checked{'CONNTRACK_FTP'}{$settings{'CONNTRACK_FTP'}} = "checked='checked'"; +$checked{'CONNTRACK_H323'}{'off'} = ''; +$checked{'CONNTRACK_H323'}{'on'} = ''; +$checked{'CONNTRACK_H323'}{$settings{'CONNTRACK_H323'}} = "checked='checked'"; +$checked{'CONNTRACK_IRC'}{'off'} = ''; +$checked{'CONNTRACK_IRC'}{'on'} = ''; +$checked{'CONNTRACK_IRC'}{$settings{'CONNTRACK_IRC'}} = "checked='checked'"; +$checked{'CONNTRACK_PPTP'}{'off'} = ''; +$checked{'CONNTRACK_PPTP'}{'on'} = ''; +$checked{'CONNTRACK_PPTP'}{$settings{'CONNTRACK_PPTP'}} = "checked='checked'"; +$checked{'CONNTRACK_SIP'}{'off'} = ''; +$checked{'CONNTRACK_SIP'}{'on'} = ''; +$checked{'CONNTRACK_SIP'}{$settings{'CONNTRACK_SIP'}} = "checked='checked'"; +$checked{'CONNTRACK_TFTP'}{'off'} = ''; +$checked{'CONNTRACK_TFTP'}{'on'} = ''; +$checked{'CONNTRACK_TFTP'}{$settings{'CONNTRACK_TFTP'}} = "checked='checked'"; $selected{'FWPOLICY'}{$settings{'FWPOLICY'}}= 'selected'; $selected{'FWPOLICY1'}{$settings{'FWPOLICY1'}}= 'selected'; +$selected{'FWPOLICY2'}{$settings{'FWPOLICY2'}}= 'selected'; +$selected{'MASQUERADE_GREEN'}{'off'} = ''; +$selected{'MASQUERADE_GREEN'}{'on'} = ''; +$selected{'MASQUERADE_GREEN'}{$settings{'MASQUERADE_GREEN'}} = 'selected="selected"'; +$selected{'MASQUERADE_ORANGE'}{'off'} = ''; +$selected{'MASQUERADE_ORANGE'}{'on'} = ''; +$selected{'MASQUERADE_ORANGE'}{$settings{'MASQUERADE_ORANGE'}} = 'selected="selected"'; +$selected{'MASQUERADE_BLUE'}{'off'} = ''; +$selected{'MASQUERADE_BLUE'}{'on'} = ''; +$selected{'MASQUERADE_BLUE'}{$settings{'MASQUERADE_BLUE'}} = 'selected="selected"'; - -&Header::openbox('100%', 'center', $Lang::tr{'options fw'}); +&Header::openbox('100%', 'center',); print "
"; -print < + + + + + + + + +END + + if (&Header::orange_used()) { + print < + + + +END + } + + if (&Header::blue_used()) { + print < + + + +END + } + + print < + +
+
$Lang::tr{'masquerading'}
$Lang::tr{'masquerade green'} + +
$Lang::tr{'masquerade orange'} + +
$Lang::tr{'masquerade blue'} + +
-
$Lang::tr{'fw logging'}
$Lang::tr{'drop newnotsyn'}on / @@ -153,7 +241,60 @@ print < off
$Lang::tr{'fw settings dropdown'}on / off
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ $Lang::tr{'application layer gateways'} +
FTP + $Lang::tr{'on'} / + $Lang::tr{'off'} +
H.323 + $Lang::tr{'on'} / + $Lang::tr{'off'} +
IRC + $Lang::tr{'on'} / + $Lang::tr{'off'} +
PPTP + $Lang::tr{'on'} / + $Lang::tr{'off'} +
SIP + $Lang::tr{'on'} / + $Lang::tr{'off'} +
TFTP + $Lang::tr{'on'} / + $Lang::tr{'off'} +
+
@@ -165,11 +306,15 @@ print <DROP +
$Lang::tr{'fw default drop'}
$Lang::tr{'drop action2'} +

- -
+ +
@@ -177,5 +322,38 @@ print < + + + + + +END + print "
FORWARD
$Lang::tr{'fwdfw pol text'}

+
"; + print"

"; + print < + + + + + +END + print "
OUTGOING
$Lang::tr{'fwdfw pol text1'}

+
"; + &Header::closebox(); + &Header::closebigbox(); &Header::closepage();