| verzia 2.105, 2015/10/19 14:00:33 |
verzia 2.106, 2016/01/17 15:03:29 |
|
|
| # Licensed under terms of GNU General Public License. |
# Licensed under terms of GNU General Public License. |
| # All rights reserved. |
# All rights reserved. |
| # |
# |
| # $Platon: scripts/shell/firewall/fw-universal.sh,v 2.104 2015/10/12 22:41:24 rajo Exp $ |
# $Platon: scripts/shell/firewall/fw-universal.sh,v 2.105 2015/10/19 14:00:33 nepto Exp $ |
| # |
# |
| # Changelog: |
# Changelog: |
| # 2003-10-24 - created |
# 2003-10-24 - created |
| Riadok 39 DEFAULT_FIREWALL_CONFIG="${DEFAULT_FIREW |
|
| Riadok 39 DEFAULT_FIREWALL_CONFIG="${DEFAULT_FIREW |
|
| DEFAULT_FIREWALL_CONFIG_DIR="${DEFAULT_FIREWALL_CONFIG_DIR:=/etc/default/firewall.d}" |
DEFAULT_FIREWALL_CONFIG_DIR="${DEFAULT_FIREWALL_CONFIG_DIR:=/etc/default/firewall.d}" |
| DEFAULT_CACHE_DIR="${DEFAULT_CACHE_DIR:=/var/cache/firewall}" |
DEFAULT_CACHE_DIR="${DEFAULT_CACHE_DIR:=/var/cache/firewall}" |
| |
|
| |
DIST_FIREWALL_CONFIG_DIR="${DIST_FIREWALL_CONFIG_DIR:=/etc/firewall/firewall.d}" |
| |
|
| # quiet output? {{{ |
# quiet output? {{{ |
| if [ "x$1" = "xblock" ] || [ "x$QUIET" = "xyes" ]; then |
if [ "x$1" = "xblock" ] || [ "x$QUIET" = "xyes" ]; then |
| print_info() |
print_info() |
|
|
| done |
done |
| } # }}} |
} # }}} |
| |
|
| |
map_subnet() |
| |
{ # {{{ |
| |
cfgvar=$1 |
| |
cfgfile=$2 |
| |
port=$3 |
| |
|
| |
if [ -f "$DEFAULT_FIREWALL_CONFIG_DIR/subnets/$cfgfile" ]; then |
| |
cfgfound="$DEFAULT_FIREWALL_CONFIG_DIR/subnets/$cfgfile"; |
| |
else |
| |
if [ -f "$DIST_FIREWALL_CONFIG_DIR/subnets/$cfgfile" ]; then |
| |
cfgfound="$DIST_FIREWALL_CONFIG_DIR/subnets/$cfgfile"; |
| |
else |
| |
"Config file '$cfgfile' not found" |
| |
exit 1 |
| |
fi |
| |
fi |
| |
|
| |
echo "Mapping $cfgfound map file to $cfgvar, port $port" |
| |
while read subnet ; do |
| |
case "$subnet" in |
| |
""|\#*) |
| |
continue |
| |
;; |
| |
esac |
| |
echo "$cfgvar=\"\$$cfgvar $subnet:$port\"" >> "$DEFAULT_FIREWALL_CONFIG_DIR/$cfgfile" |
| |
done < $cfgfound |
| |
|
| |
} # }}} |
| |
|
| # Parse output from ifconfig: - tested on Linux and FreeBSD |
# Parse output from ifconfig: - tested on Linux and FreeBSD |
| # http://platon.sk/cvs/cvs.php/scripts/shell/firewall/ifconfig-parse.sh |
# http://platon.sk/cvs/cvs.php/scripts/shell/firewall/ifconfig-parse.sh |
| parse_ifconfig() |
parse_ifconfig() |
|
|
| remote) |
remote) |
| remote; |
remote; |
| ;; |
;; |
| |
map-subnet) |
| |
shift; |
| |
map_subnet $*; |
| |
;; |
| *) |
*) |
| echo "Usage: $0 {start|stop|really-off|status|purge|block|deploy-block|deploy-update|update}" >&2 |
echo "Usage: $0 {start|stop|really-off|status|purge|block|deploy-block|deploy-update|update}" >&2 |
| exit 1 |
exit 1 |