% Testing the script # Testing the script ## Checking duplicates ```bash $ for chain in INPUT OUTPUT FORWARD ; do echo $chain ; sudo iptables -L $chain -v | sort -u | wc -l ; sudo iptables -L $chain -v | wc -l ; done INPUT 21 24 OUTPUT 14 17 FORWARD 3 3 ``` ## Identifying duplicates ```bash sudo iptables -L INPUT -v | sort ``` ``` /sbin/iptables -A INPUT -i lo -s localhost -d localhost -j ACCEPTn /sbin/iptables -A INPUT -i lo -j ACCEPT ``` # Possible addition ```bash CONFIGURATION_USER_RULES_DIR=${CONFIGURATION_DIR}/rules.d #... #################################################### # Executes the user-defined rules #################################################### fw_run_user_rules () { local do_action do_action=$1 if [ -d $CONFIGURATION_USER_RULES_DIR ] then for user_file in $(ls $CONFIGURATION_USER_RULES_DIR) do ( echo "$do_action user_file=$user_file" #typeset -f | awk '/ \(\) $/ && !/^main / {print $1}' awk '/^lfirewall_set_/{print $1}' "$CONFIGURATION_USER_RULES_DIR/${user_file}" for function_name in `awk '/^lfirewall_set_/{print $1}' "$CONFIGURATION_USER_RULES_DIR/${user_file}"` do echo "$do_action $user_file > $function_name" done ) done fi } # Inside fw_execute #**************************************************************************# # User Rules execution #**************************************************************************# # NOT YET ACTIVATED #fw_run_user_rules $do_action # In Makefile config: $(MKDIR) -p $(FIREWALL_ETC_DIR) $(FIREWALL_ETC_DIR)/rules.d ```