TESTING.md 1.5 KB

% Testing the script

Testing the script

Checking duplicates

$ 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

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

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