6wall patch
From SixXS Wiki
This patch enables proper conntrack support in 6wall, a configurable IPv6 firewall script for Linux.
Paste the patch into a local file named 6wall.patch:
--- firewall.noconntrack 2008-09-05 13:50:32.000000000 +0000 +++ firewall 2008-09-05 17:18:43.000000000 +0000 @@ -242,17 +242,18 @@ run_ip6tables -N $1 if [ $2 = yes ]; then -# state="ESTABLISHED,RELATED" -# run_ip6tables -A $1 -m state --state $state -j ACCEPT -# [ -z "$NEWNOTSYN" ] && \ -# run_ip6tables -A $1 -m state --state NEW -p tcp ! --syn -j newnotsyn + state="ESTABLISHED,RELATED" + run_ip6tables -A $1 -m state --state $state -j ACCEPT + [ -z "$NEWNOTSYN" ] && \ + run_ip6tables -A $1 -m state --state NEW -p tcp ! --syn -j newnotsyn # #<ET> Connection tracking not supported yet, # simulate the established,related state with # tcp: syn not set - allow # all others: drop # - run_ip6tables -A $1 -p tcp ! --syn -j ACCEPT + #run_ip6tables -A $1 -p tcp ! --syn -j ACCEPT + #run_ip6tables -A $1 -m state --state ESTABLISHED,RELATED -j ACCEPT fi eval ${1}_exists=Yes @@ -375,8 +376,8 @@ setcontinue() # $1 = name of chain { #<ET> Conection tracking not supported yet -# run_ip6tables -A $1 -m state --state ESTABLISHED,RELATED -j ACCEPT - run_ip6tables -A $1 -p tcp ! --syn -j ACCEPT + run_ip6tables -A $1 -m state --state ESTABLISHED,RELATED -j ACCEPT +# run_ip6tables -A $1 -p tcp ! --syn -j ACCEPT } # @@ -3482,10 +3483,10 @@ # #<ET> only needed if IPv6 is only transport protocol, otherwise DNS queries # can be done over IPv4 -# for chain in INPUT OUTPUT FORWARD; do -# run_ip6tables -A $chain -p udp --dport 53 -j ACCEPT -# run_ip6tables -A $chain -p ! icmp -m state --state INVALID -j DROP -# done + for chain in INPUT OUTPUT FORWARD; do + run_ip6tables -A $chain -p udp --dport 53 -j ACCEPT + # run_ip6tables -A $chain -p ! icmp -m state --state INVALID -j DROP + done # [ -n "$CLAMPMSS" ] && \ # run_ip6tables -A FORWARD -p tcp \ @@ -4057,9 +4058,9 @@ # for chain in INPUT OUTPUT FORWARD; do #<ET> Connection tracking not yet available -# run_ip6tables -D $chain -m state --state ESTABLISHED,RELATED -j ACCEPT -# run_ip6tables -D $chain -p udp --dport 53 -j ACCEPT - run_ip6tables -D $chain -p tcp ! --syn -j ACCEPT + run_ip6tables -D $chain -m state --state ESTABLISHED,RELATED -j ACCEPT + run_ip6tables -D $chain -p udp --dport 53 -j ACCEPT +# run_ip6tables -D $chain -p tcp ! --syn -j ACCEPT done }
Then apply the patch to the file /usr/share/6wall/firewall, by issuing the commands:
cd /usr/share/6wall patch < 6wall.patch