X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=html%2Fcgi-bin%2Foptionsfw.cgi;h=1ab3c7d7987f0efb0098506a81c2d33f18cc3db3;hb=ad1204e4eb397b4f7d10c3bdfa9214aa8c0a0575;hp=de68fea4e5eb692c5887b7e0325e5f485d5fec9b;hpb=5595bc0381fe971b538ddd0b7cf3bf4a9f31832c;p=ipfire-2.x.git diff --git a/html/cgi-bin/optionsfw.cgi b/html/cgi-bin/optionsfw.cgi index de68fea4e5..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,80 +21,339 @@ 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{'DROPOUTPUT'} = 'on'; -$settings{'DROPPORTSCAN'} = 'on'; +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"); + } + &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'"; $checked{'DROPINPUT'}{'off'} = ''; $checked{'DROPINPUT'}{'on'} = ''; $checked{'DROPINPUT'}{$settings{'DROPINPUT'}} = "checked='checked'"; -$checked{'DROPOUTPUT'}{'off'} = ''; -$checked{'DROPOUTPUT'}{'on'} = ''; -$checked{'DROPOUTPUT'}{$settings{'DROPOUTPUT'}} = "checked='checked'"; +$checked{'DROPFORWARD'}{'off'} = ''; +$checked{'DROPFORWARD'}{'on'} = ''; +$checked{'DROPFORWARD'}{$settings{'DROPFORWARD'}} = "checked='checked'"; +$checked{'DROPOUTGOING'}{'off'} = ''; +$checked{'DROPOUTGOING'}{'on'} = ''; +$checked{'DROPOUTGOING'}{$settings{'DROPOUTGOING'}} = "checked='checked'"; $checked{'DROPPORTSCAN'}{'off'} = ''; $checked{'DROPPORTSCAN'}{'on'} = ''; $checked{'DROPPORTSCAN'}{$settings{'DROPPORTSCAN'}} = "checked='checked'"; +$checked{'DROPWIRELESSINPUT'}{'off'} = ''; +$checked{'DROPWIRELESSINPUT'}{'on'} = ''; +$checked{'DROPWIRELESSINPUT'}{$settings{'DROPWIRELESSINPUT'}} = "checked='checked'"; +$checked{'DROPWIRELESSFORWARD'}{'off'} = ''; +$checked{'DROPWIRELESSFORWARD'}{'on'} = ''; +$checked{'DROPWIRELESSFORWARD'}{$settings{'DROPWIRELESSFORWARD'}} = "checked='checked'"; +$checked{'DROPPROXY'}{'off'} = ''; +$checked{'DROPPROXY'}{'on'} = ''; +$checked{'DROPPROXY'}{$settings{'DROPPROXY'}} = "checked='checked'"; +$checked{'DROPSAMBA'}{'off'} = ''; +$checked{'DROPSAMBA'}{'on'} = ''; +$checked{'DROPSAMBA'}{$settings{'DROPSAMBA'}} = "checked='checked'"; +$checked{'SHOWCOLORS'}{'off'} = ''; +$checked{'SHOWCOLORS'}{'on'} = ''; +$checked{'SHOWCOLORS'}{$settings{'SHOWCOLORS'}} = "checked='checked'"; +$checked{'SHOWREMARK'}{'off'} = ''; +$checked{'SHOWREMARK'}{'on'} = ''; +$checked{'SHOWREMARK'}{$settings{'SHOWREMARK'}} = "checked='checked'"; +$checked{'SHOWTABLES'}{'off'} = ''; +$checked{'SHOWTABLES'}{'on'} = ''; +$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 / +
$Lang::tr{'drop newnotsyn'}on / off
$Lang::tr{'drop input'}on / +
$Lang::tr{'drop input'}on / off
$Lang::tr{'drop output'}on / - off
$Lang::tr{'drop portscan'}on / +
$Lang::tr{'drop forward'}on / + off
$Lang::tr{'drop outgoing'}on / + off
$Lang::tr{'drop portscan'}on / off
$Lang::tr{'drop wirelessinput'}on / + off
$Lang::tr{'drop wirelessforward'}on / + off
+
+ + + + + +
$Lang::tr{'fw blue'}
$Lang::tr{'drop proxy'}on / + off
$Lang::tr{'drop samba'}on / + off
+
+ + + + + + +
$Lang::tr{'fw settings'}
$Lang::tr{'fw settings color'}on / + off
$Lang::tr{'fw settings remark'}on / + off
$Lang::tr{'fw settings ruletable'}on / + 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'} +
+ +
+ + + + + +
$Lang::tr{'fw default drop'}
$Lang::tr{'drop action'} +
$Lang::tr{'drop action1'} +
$Lang::tr{'drop action2'} +
+ +
+ +
+ +
END ; &Header::closebox(); + +&Header::openbox('100%', 'center', $Lang::tr{'fwdfw pol title'}); + if ($fwdfwsettings{'POLICY'} eq 'MODE1'){ $selected{'POLICY'}{'MODE1'} = 'selected'; } else { $selected{'POLICY'}{'MODE1'} = ''; } + if ($fwdfwsettings{'POLICY'} eq 'MODE2'){ $selected{'POLICY'}{'MODE2'} = 'selected'; } else { $selected{'POLICY'}{'MODE2'} = ''; } + if ($fwdfwsettings{'POLICY1'} eq 'MODE1'){ $selected{'POLICY1'}{'MODE1'} = 'selected'; } else { $selected{'POLICY1'}{'MODE1'} = ''; } + if ($fwdfwsettings{'POLICY1'} eq 'MODE2'){ $selected{'POLICY1'}{'MODE2'} = 'selected'; } else { $selected{'POLICY1'}{'MODE2'} = ''; } +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();