Ok -- so I lied...

git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@5716 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
teastep 2007-03-27 05:07:57 +00:00
parent dd98eab8ee
commit b522fb46a2

View File

@ -336,6 +336,8 @@ stop_firewall() {
rm -f \${VARDIR}/proxyarp rm -f \${VARDIR}/proxyarp
"; ";
push_indent;
emit 'delete_tc1' if $config{CLEAR_TC}; emit 'delete_tc1' if $config{CLEAR_TC};
emitj( 'undo_routing', emitj( 'undo_routing',
@ -366,21 +368,21 @@ stop_firewall() {
); );
} }
emit " emitj( '',
for chain in INPUT OUTPUT; do 'for chain in INPUT OUTPUT; do',
setpolicy \$chain DROP ' setpolicy $chain DROP',
done "done\n"
"; );
} else { } else {
emit " emitj( '',
for chain in INPUT OUTPUT; do 'for chain in INPUT OUTPUT; do',
setpolicy \$chain ACCEPT ' setpolicy \$chain ACCEPT',
done 'done',
'',
setpolicy FORWARD DROP 'setpolicy FORWARD DROP',
'',
deleteallchains "deleteallchains\n"
"; );
for my $hosts ( @$criticalhosts ) { for my $hosts ( @$criticalhosts ) {
my ( $interface, $host ) = ( split /:/, $hosts ); my ( $interface, $host ) = ( split /:/, $hosts );
@ -392,44 +394,41 @@ stop_firewall() {
); );
} }
emit " emitj ( "\nsetpolicy INPUT DROP",
'',
setpolicy INPUT DROP 'for chain in INPUT FORWARD; do',
' setcontinue $chain',
for chain in INPUT FORWARD; do "done\n"
setcontinue \$chain );
done
";
} }
} elsif ( ! $config{ADMINISABSENTMINDED} ) { } elsif ( ! $config{ADMINISABSENTMINDED} ) {
emit "for chain in INPUT OUTPUT FORWARD; do emitj( 'for chain in INPUT OUTPUT FORWARD; do',
setpolicy \$chain DROP ' setpolicy $chain DROP',
done 'done',
'',
deleteallchains "deleteallchains\n"
" );
} else { } else {
emit "for chain in INPUT FORWARD; do emitj( 'for chain in INPUT FORWARD; do',
setpolicy \$chain DROP ' setpolicy $chain DROP',
done 'done',
'',
setpolicy OUTPUT ACCEPT 'setpolicy OUTPUT ACCEPT',
'',
deleteallchains 'deleteallchains',
'',
for chain in INPUT FORWARD; do 'for chain in INPUT FORWARD; do',
setcontinue \$chain ' setcontinue $chain',
done "done\n",
"; );
} }
push_indent;
process_routestopped; process_routestopped;
emitj( '$IPTABLES -A INPUT -i lo -j ACCEPT', emitj( '$IPTABLES -A INPUT -i lo -j ACCEPT',
'$IPTABLES -A OUTPUT -o lo -j ACCEPT' '$IPTABLES -A OUTPUT -o lo -j ACCEPT'
); );
emit '$IPTABLES -A OUTPUT -o lo -j ACCEPT' unless $config{ADMINISABSENTMINDED}; emit '$IPTABLES -A OUTPUT -o lo -j ACCEPT' unless $config{ADMINISABSENTMINDED};
my $interfaces = find_interfaces_by_option 'dhcp'; my $interfaces = find_interfaces_by_option 'dhcp';