diff --git a/conf/logging_ipv4.conf b/conf/logging_ipv4.conf index 8dc04a2..253e204 100644 --- a/conf/logging_ipv4.conf +++ b/conf/logging_ipv4.conf @@ -30,6 +30,7 @@ log_invalid_state=false log_invalid_flags=false log_spoofed=false log_spoofed_out=false +log_private_network_out=false log_to_lo=false log_not_wanted=false log_blocked=false diff --git a/conf/logging_ipv6.conf b/conf/logging_ipv6.conf index b2ad497..aecb621 100644 --- a/conf/logging_ipv6.conf +++ b/conf/logging_ipv6.conf @@ -30,6 +30,7 @@ log_invalid_state=false log_invalid_flags=false log_spoofed=false log_spoofed_out=false +log_private_network_out=false log_to_lo=false log_not_wanted=false log_blocked=false diff --git a/ip6t-firewall-server b/ip6t-firewall-server index 5547713..2dc41fc 100755 --- a/ip6t-firewall-server +++ b/ip6t-firewall-server @@ -1023,6 +1023,30 @@ done echo_done +# --- +# - Don't allow traffik into Unique local network (ULA) +# --- + +echo "" +echononl "\tDon't allow traffic into Unique local network (ULA)" +if $log_private_network_out || $log_all ; then + for _dev in ${ext_if_arr[@]} ; do + $ip6t -A OUTPUT -o $_dev -d $ula_block -j $LOG_TARGET $tag_log_prefix "$log_prefix Spoofing Out: " + if $kernel_forward_between_interfaces ; then + $ip6t -A FORWARD -o $_dev -d $ula_block -j $LOG_TARGET $tag_log_prefix "$log_prefix Spoofing Out: " + fi + done +fi + +for _dev in ${ext_if_arr[@]} ; do + $ip6t -A OUTPUT -o $_dev -d $ula_block -j DROP + if $kernel_forward_between_interfaces ; then + $ip6t -A FORWARD -o $_dev -d $ula_block -j DROP + fi +done +echo_done + + # ------------- # --- Services # ------------- diff --git a/ipt-firewall-server b/ipt-firewall-server index 4e6f402..616805b 100755 --- a/ipt-firewall-server +++ b/ipt-firewall-server @@ -1184,6 +1184,35 @@ done echo_done +# --- +# - Don't allow traffic into private networks +# --- + +echo "" +echononl "\tDon't allow traffic into private anetworks" +for _dev in ${ext_if_arr[@]} ; do + if $log_private_network_out || $log_all ; then + $ipt -A OUTPUT -o $_dev -d $priv_class_a -j $LOG_TARGET $tag_log_prefix "$log_prefix out to priv Class A:" + $ipt -A OUTPUT -o $_dev -d $priv_class_b -j $LOG_TARGET $tag_log_prefix "$log_prefix out to priv Class B:" + $ipt -A OUTPUT -o $_dev -d $priv_class_c -j $LOG_TARGET $tag_log_prefix "$log_prefix out to priv Class C:" + if $kernel_activate_forwarding ; then + $ipt -A FORWARD -o $_dev -d $priv_class_a -j $LOG_TARGET $tag_log_prefix "$log_prefix out to priv Class A:" + $ipt -A FORWARD -o $_dev -d $priv_class_b -j $LOG_TARGET $tag_log_prefix "$log_prefix out to priv Class B:" + $ipt -A FORWARD -o $_dev -d $priv_class_c -j $LOG_TARGET $tag_log_prefix "$log_prefix out to priv Class C:" + fi + fi + $ipt -A OUTPUT -o $_dev -d $priv_class_a -j DROP + $ipt -A OUTPUT -o $_dev -d $priv_class_b -j DROP + $ipt -A OUTPUT -o $_dev -d $priv_class_c -j DROP + if $kernel_activate_forwarding ; then + $ipt -A FORWARD -o $_dev -d $priv_class_a -j DROP + $ipt -A FORWARD -o $_dev -d $priv_class_b -j DROP + $ipt -A FORWARD -o $_dev -d $priv_class_c -j DROP + fi +done +echo_done + + # ------------- # --- Services # -------------