|
118 | 118 | while IFS="$(printf '\n')" read -r IPTABLES_LINES
|
119 | 119 | do
|
120 | 120 | set -- ${IPTABLES_LINES}
|
121 |
| - while [ $# -gt 0 ] |
122 |
| - do |
123 |
| - if [ "${1}" = "-P" ] |
124 |
| - then |
| 121 | + while [ $# -gt 0 ]; do |
| 122 | + if [ "${1}" = "-P" ]; then |
125 | 123 | IPTABLES_CHAIN="${2}"
|
126 | 124 | IPTABLES_TARGET="${3}"
|
127 | 125 | shift 3
|
128 |
| - elif [ "${1}" = "-A" ] || [ "${1}" = "-N" ] |
129 |
| - then |
| 126 | + elif [ "${1}" = "-A" ] || [ "${1}" = "-N" ]; then |
130 | 127 | IPTABLES_CHAIN="${2}"
|
131 | 128 | shift 2
|
132 |
| - elif [ "${1}" = "-j" ] |
133 |
| - then |
| 129 | + elif [ "${1}" = "-j" ]; then |
134 | 130 | IPTABLES_TARGET="${2}"
|
135 | 131 | shift
|
136 | 132 | else
|
137 | 133 | shift
|
138 | 134 | fi
|
139 | 135 | done
|
140 | 136 | # logics
|
141 |
| - if [ "${IPTABLES_TABLE}" = "filter" ] || [ "${IPTABLES_TABLE}" = "security" ] |
142 |
| - then |
143 |
| - if [ "${IPTABLES_CHAIN}" = "INPUT" ] |
144 |
| - then |
145 |
| - if [ "${IPTABLES_TARGET}" = "ACCEPT" ] |
146 |
| - then |
| 137 | + if [ "${IPTABLES_TABLE}" = "filter" ] || [ "${IPTABLES_TABLE}" = "security" ]; then |
| 138 | + if [ "${IPTABLES_CHAIN}" = "INPUT" ]; then |
| 139 | + if [ "${IPTABLES_TARGET}" = "ACCEPT" ]; then |
147 | 140 | IPTABLES_OUTPUT_QUEUE="${IPTABLES_OUTPUT_QUEUE} ${IPTABLES_TABLE} ${IPTABLES_CHAIN} ${IPTABLES_TARGET} YELLOW"
|
148 | 141 | AddHP 1 3
|
149 |
| - elif [ "${IPTABLES_TARGET}" = "DROP" ] |
150 |
| - then |
| 142 | + elif [ "${IPTABLES_TARGET}" = "DROP" ]; then |
151 | 143 | IPTABLES_OUTPUT_QUEUE="${IPTABLES_OUTPUT_QUEUE} ${IPTABLES_TABLE} ${IPTABLES_CHAIN} ${IPTABLES_TARGET} GREEN"
|
152 | 144 | AddHP 3 3
|
153 | 145 | fi
|
154 | 146 | fi
|
155 |
| - if [ "${IPTABLES_CHAIN}" = "INPUT" ] || [ "${IPTABLES_CHAIN}" = "FORWARD" ] || [ "${IPTABLES_CHAIN}" = "OUTPUT" ] |
156 |
| - then |
157 |
| - if [ "${IPTABLES_TARGET}" = "NFQUEUE" ] |
158 |
| - then |
| 147 | + if [ "${IPTABLES_CHAIN}" = "INPUT" ] || [ "${IPTABLES_CHAIN}" = "FORWARD" ] || [ "${IPTABLES_CHAIN}" = "OUTPUT" ]; then |
| 148 | + if [ "${IPTABLES_TARGET}" = "NFQUEUE" ]; then |
159 | 149 | IPTABLES_OUTPUT_QUEUE="${IPTABLES_OUTPUT_QUEUE} ${IPTABLES_TABLE} ${IPTABLES_CHAIN} ${IPTABLES_TARGET} RED"
|
160 | 150 | AddHP 0 3
|
161 | 151 | fi
|
162 | 152 | fi
|
163 | 153 | fi
|
164 | 154 | done
|
165 |
| - # resume |
166 |
| - if [ ! "${SORTBINARY}" = "" ] |
167 |
| - then |
168 |
| - IPTABLES_OUTPUT="$( echo "${IPTABLES_OUTPUT_QUEUE}" | ${SORTBINARY} -u )" |
| 155 | + # Sort output if sort tool is available |
| 156 | + if [ -n "${SORTBINARY}" ]; then |
| 157 | + LogText "Info: sorting output" |
| 158 | + IPTABLES_OUTPUT="$(echo "${IPTABLES_OUTPUT_QUEUE}" | ${SORTBINARY} -u )" |
169 | 159 | else
|
170 | 160 | IPTABLES_OUTPUT="${IPTABLES_OUTPUT_QUEUE}"
|
171 | 161 | fi
|
172 | 162 | echo "${IPTABLES_OUTPUT}" | while IFS="$(printf '\n')" read -r IPTABLES_OUTPUT_LINE
|
173 | 163 | do
|
174 |
| - if [ ! "$IPTABLES_OUTPUT_LINE" = "" ] |
175 |
| - then |
| 164 | + if [ -n "$IPTABLES_OUTPUT_LINE" ]; then |
176 | 165 | set -- ${IPTABLES_OUTPUT_LINE}
|
177 |
| - while [ $# -gt 0 ] |
178 |
| - do |
179 |
| - LogText "Result: Found ${3} for ${2} (table: ${1})" |
180 |
| - Display --indent 6 --text "- Checking chain ${2} (table: ${1}, target: ${3})" --result "${3}" --color "${4}" |
| 166 | + while [ $# -gt 0 ]; do |
| 167 | + LogText "Result: Found target '${3}' for chain '${2}' (table: ${1})" |
| 168 | + Display --indent 6 --text "- Chain ${2} (table: ${1}, target: ${3})" --result "${3}" --color "${4}" |
181 | 169 | if [ "${3}" = "NFQUEUE" ]
|
182 | 170 | then
|
183 | 171 | ReportSuggestion "${TEST_NO}" "Consider avoid ${3} target if possible (iptables chain ${2}, table: ${1})"
|
|
0 commit comments