Add 'allow_to_ext_net' and 'allow_to_ext_service'.
This commit is contained in:
@ -1409,6 +1409,11 @@ if $permit_local_net_to_inet ; then
|
||||
$ipt -A FORWARD -o $_dev -p ALL -m conntrack --ctstate NEW -j ACCEPT
|
||||
fi
|
||||
done
|
||||
|
||||
if $local_alias_interfaces && $kernel_activate_forwarding ; then
|
||||
$ipt -A FORWARD -p tcp --tcp-flag ACK ACK -j ACCEPT
|
||||
fi
|
||||
|
||||
echo_done
|
||||
else
|
||||
echo_skipped
|
||||
@ -1948,6 +1953,77 @@ fi
|
||||
|
||||
|
||||
|
||||
# ---
|
||||
# - Allow extern service
|
||||
# ---
|
||||
|
||||
echononl "\tAllow extern service"
|
||||
|
||||
if [[ ${#allow_to_ext_service_arr[@]} -gt 0 ]] ; then
|
||||
|
||||
for _val in "${allow_to_ext_service_arr[@]}" ; do
|
||||
|
||||
IFS=':' read -a _val_arr <<< "${_val}"
|
||||
|
||||
for _dev in ${ext_if_arr[@]} ; do
|
||||
|
||||
$ipt -A OUTPUT -o $_dev -p ${_val_arr[2]} -d ${_val_arr[0]} --dport ${_val_arr[1]} -m conntrack --ctstate NEW -j ACCEPT
|
||||
if $kernel_activate_forwarding && ! $permit_local_net_to_inet ; then
|
||||
$ipt -A FORWARD -o $_dev -p ${_val_arr[2]} -d ${_val_arr[0]} --dport ${_val_arr[1]} -m conntrack --ctstate NEW -j ACCEPT
|
||||
fi
|
||||
done
|
||||
|
||||
if $local_alias_interfaces ; then
|
||||
if [[ "${_val_arr[2]}" = "tcp" ]]; then
|
||||
$ipt -A FORWARD -p tcp -d ${_val_arr[0]} --dport ${_val_arr[1]} --tcp-flag ACK ACK -j ACCEPT
|
||||
$ipt -A FORWARD -p tcp -s ${_val_arr[0]} --sport ${_val_arr[1]} --tcp-flag ACK ACK -j ACCEPT
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
done
|
||||
|
||||
echo_done
|
||||
else
|
||||
echo_skipped
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# ---
|
||||
# - Allow extern network
|
||||
# ---
|
||||
|
||||
echononl "\tAllow extern network"
|
||||
|
||||
if [[ ${#allow_to_ext_net_arr[@]} -gt 0 ]] ; then
|
||||
|
||||
for _net in "${allow_to_ext_net_arr[@]}" ; do
|
||||
|
||||
for _dev in ${ext_if_arr[@]} ; do
|
||||
|
||||
$ipt -A OUTPUT -o $_dev -d $_net -m conntrack --ctstate NEW -j ACCEPT
|
||||
|
||||
if $kernel_activate_forwarding && ! $permit_local_net_to_inet ; then
|
||||
$ipt -A FORWARD -o $_dev -d $_net -m conntrack --ctstate NEW -j ACCEPT
|
||||
fi
|
||||
done
|
||||
|
||||
if $local_alias_interfaces ; then
|
||||
$ipt -A FORWARD -p tcp -d $_net --tcp-flag ACK ACK -j ACCEPT
|
||||
$ipt -A FORWARD -p tcp -s $_net --tcp-flag ACK ACK -j ACCEPT
|
||||
fi
|
||||
|
||||
|
||||
done
|
||||
|
||||
echo_done
|
||||
else
|
||||
echo_skipped
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# ---
|
||||
# - Separate local networks
|
||||
# ---
|
||||
|
Reference in New Issue
Block a user