forked from extern/shorewall_code
Compare commits
3 Commits
5.1.0-Beta
...
5.0.3
Author | SHA1 | Date | |
---|---|---|---|
|
e7e62b951c | ||
|
7a6f975af4 | ||
|
1a762c20da |
3
Shorewall-core/configure
vendored
3
Shorewall-core/configure
vendored
@@ -235,8 +235,7 @@ for on in \
|
|||||||
SPARSE \
|
SPARSE \
|
||||||
ANNOTATED \
|
ANNOTATED \
|
||||||
VARLIB \
|
VARLIB \
|
||||||
VARDIR \
|
VARDIR
|
||||||
DEFAULT_PAGER
|
|
||||||
do
|
do
|
||||||
echo "$on=${options[${on}]}"
|
echo "$on=${options[${on}]}"
|
||||||
echo "$on=${options[${on}]}" >> shorewallrc
|
echo "$on=${options[${on}]}" >> shorewallrc
|
||||||
|
@@ -209,8 +209,7 @@ for ( qw/ HOST
|
|||||||
SPARSE
|
SPARSE
|
||||||
ANNOTATED
|
ANNOTATED
|
||||||
VARLIB
|
VARLIB
|
||||||
VARDIR
|
VARDIR / ) {
|
||||||
DEFAULT_PAGER / ) {
|
|
||||||
|
|
||||||
my $val = $options{$_} || '';
|
my $val = $options{$_} || '';
|
||||||
|
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Script to install Shoreline Firewall Core Modules
|
# Script to install Shoreline Firewall Core Modules
|
||||||
#
|
#
|
||||||
# (c) 2000-2016 - Tom Eastep (teastep@shorewall.net)
|
# (c) 2000-2011,2014 - Tom Eastep (teastep@shorewall.net)
|
||||||
#
|
#
|
||||||
# Shorewall documentation is available at http://shorewall.net
|
# Shorewall documentation is available at http://shorewall.net
|
||||||
#
|
#
|
||||||
@@ -24,9 +24,6 @@
|
|||||||
|
|
||||||
VERSION=xxx #The Build script inserts the actual version
|
VERSION=xxx #The Build script inserts the actual version
|
||||||
|
|
||||||
PRODUCT=shorewall-core
|
|
||||||
Product="Shorewall Core"
|
|
||||||
|
|
||||||
usage() # $1 = exit status
|
usage() # $1 = exit status
|
||||||
{
|
{
|
||||||
ME=$(basename $0)
|
ME=$(basename $0)
|
||||||
@@ -103,9 +100,6 @@ require()
|
|||||||
eval [ -n "\$$1" ] || fatal_error "Required option $1 not set"
|
eval [ -n "\$$1" ] || fatal_error "Required option $1 not set"
|
||||||
}
|
}
|
||||||
|
|
||||||
#
|
|
||||||
# Change to the directory containing this script
|
|
||||||
#
|
|
||||||
cd "$(dirname $0)"
|
cd "$(dirname $0)"
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -346,10 +340,8 @@ fi
|
|||||||
mkdir -p ${DESTDIR}${SBINDIR}
|
mkdir -p ${DESTDIR}${SBINDIR}
|
||||||
chmod 755 ${DESTDIR}${SBINDIR}
|
chmod 755 ${DESTDIR}${SBINDIR}
|
||||||
|
|
||||||
if [ -n "${MANDIR}" ]; then
|
mkdir -p ${DESTDIR}${MANDIR}
|
||||||
mkdir -p ${DESTDIR}${MANDIR}
|
chmod 755 ${DESTDIR}${MANDIR}
|
||||||
chmod 755 ${DESTDIR}${MANDIR}
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "${INITFILE}" ]; then
|
if [ -n "${INITFILE}" ]; then
|
||||||
mkdir -p ${DESTDIR}${INITDIR}
|
mkdir -p ${DESTDIR}${INITDIR}
|
||||||
@@ -365,12 +357,6 @@ fi
|
|||||||
# Note: ${VARDIR} is created at run-time since it has always been
|
# Note: ${VARDIR} is created at run-time since it has always been
|
||||||
# a relocatable directory on a per-product basis
|
# a relocatable directory on a per-product basis
|
||||||
#
|
#
|
||||||
# Install the CLI
|
|
||||||
#
|
|
||||||
install_file shorewall ${DESTDIR}${SBINDIR}/shorewall 0755
|
|
||||||
[ $SHAREDIR = /usr/share ] || eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SBINDIR}/shorewall
|
|
||||||
echo "Shorewall CLI program installed in ${DESTDIR}${SBINDIR}/$PRODUCT"
|
|
||||||
#
|
|
||||||
# Install wait4ifup
|
# Install wait4ifup
|
||||||
#
|
#
|
||||||
install_file wait4ifup ${DESTDIR}${LIBEXECDIR}/shorewall/wait4ifup 0755
|
install_file wait4ifup ${DESTDIR}${LIBEXECDIR}/shorewall/wait4ifup 0755
|
||||||
@@ -386,31 +372,6 @@ for f in lib.* ; do
|
|||||||
echo "Library ${f#*.} file installed as ${DESTDIR}${SHAREDIR}/shorewall/$f"
|
echo "Library ${f#*.} file installed as ${DESTDIR}${SHAREDIR}/shorewall/$f"
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ $SHAREDIR != /usr/share ]; then
|
|
||||||
eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SHAREDIR}/${PRODUCT}/lib.base
|
|
||||||
eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SHAREDIR}/${PRODUCT}/lib.core
|
|
||||||
eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SHAREDIR}/${PRODUCT}/lib.cli
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
|
||||||
# Install the Man Pages
|
|
||||||
#
|
|
||||||
if [ -n "$MANDIR" ]; then
|
|
||||||
cd manpages
|
|
||||||
|
|
||||||
[ -n "$INSTALLD" ] || mkdir -p ${DESTDIR}${MANDIR}/man8/
|
|
||||||
|
|
||||||
for f in *.8; do
|
|
||||||
gzip -9c $f > $f.gz
|
|
||||||
install_file $f.gz ${DESTDIR}${MANDIR}/man8/$f.gz 644
|
|
||||||
echo "Man page $f.gz installed to ${DESTDIR}${MANDIR}/man8/$f.gz"
|
|
||||||
done
|
|
||||||
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
echo "Man Pages Installed"
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Symbolically link 'functions' to lib.base
|
# Symbolically link 'functions' to lib.base
|
||||||
#
|
#
|
||||||
|
@@ -20,22 +20,412 @@
|
|||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
# This library is a compatibility wrapper around lib.core.
|
# This library contains the code common to all Shorewall components except the
|
||||||
|
# generated scripts.
|
||||||
#
|
#
|
||||||
|
|
||||||
if [ -z "$PRODUCT" ]; then
|
SHOREWALL_LIBVERSION=40509
|
||||||
|
|
||||||
|
[ -n "${g_program:=shorewall}" ]
|
||||||
|
|
||||||
|
if [ -z "$g_readrc" ]; then
|
||||||
#
|
#
|
||||||
# This is modified by the installer when ${SHAREDIR} != /usr/share
|
# This is modified by the installer when ${SHAREDIR} != /usr/share
|
||||||
#
|
#
|
||||||
. /usr/share/shorewall/shorewallrc
|
. /usr/share/shorewall/shorewallrc
|
||||||
|
|
||||||
g_basedir=${SHAREDIR}/shorewall
|
g_sharedir="$SHAREDIR"/$g_program
|
||||||
|
g_confdir="$CONFDIR"/$g_program
|
||||||
|
g_readrc=1
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -z "$SHOREWALL_LIBVERSION" ]; then
|
g_basedir=${SHAREDIR}/shorewall
|
||||||
. ${g_basedir}/lib.core
|
|
||||||
|
case $g_program in
|
||||||
|
shorewall)
|
||||||
|
g_product="Shorewall"
|
||||||
|
g_family=4
|
||||||
|
g_tool=iptables
|
||||||
|
g_lite=
|
||||||
|
;;
|
||||||
|
shorewall6)
|
||||||
|
g_product="Shorewall6"
|
||||||
|
g_family=6
|
||||||
|
g_tool=ip6tables
|
||||||
|
g_lite=
|
||||||
|
;;
|
||||||
|
shorewall-lite)
|
||||||
|
g_product="Shorewall Lite"
|
||||||
|
g_family=4
|
||||||
|
g_tool=iptables
|
||||||
|
g_lite=Yes
|
||||||
|
;;
|
||||||
|
shorewall6-lite)
|
||||||
|
g_product="Shorewall6 Lite"
|
||||||
|
g_family=6
|
||||||
|
g_tool=ip6tables
|
||||||
|
g_lite=Yes
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ -z "${VARLIB}" ]; then
|
||||||
|
VARLIB=${VARDIR}
|
||||||
|
VARDIR=${VARLIB}/$g_program
|
||||||
|
elif [ -z "${VARDIR}" ]; then
|
||||||
|
VARDIR="${VARLIB}/${PRODUCT}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# Fatal Error
|
||||||
|
#
|
||||||
|
fatal_error() # $@ = Message
|
||||||
|
{
|
||||||
|
echo " ERROR: $@" >&2
|
||||||
|
exit 2
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Not configured Error
|
||||||
|
#
|
||||||
|
not_configured_error() # $@ = Message
|
||||||
|
{
|
||||||
|
echo " ERROR: $@" >&2
|
||||||
|
exit 6
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Conditionally produce message
|
||||||
|
#
|
||||||
|
progress_message() # $* = Message
|
||||||
|
{
|
||||||
|
local timestamp
|
||||||
|
timestamp=
|
||||||
|
|
||||||
|
if [ $VERBOSITY -gt 1 ]; then
|
||||||
|
[ -n "$g_timestamp" ] && timestamp="$(date +%H:%M:%S) "
|
||||||
|
echo "${timestamp}$@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
progress_message2() # $* = Message
|
||||||
|
{
|
||||||
|
local timestamp
|
||||||
|
timestamp=
|
||||||
|
|
||||||
|
if [ $VERBOSITY -gt 0 ]; then
|
||||||
|
[ -n "$g_timestamp" ] && timestamp="$(date +%H:%M:%S) "
|
||||||
|
echo "${timestamp}$@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
progress_message3() # $* = Message
|
||||||
|
{
|
||||||
|
local timestamp
|
||||||
|
timestamp=
|
||||||
|
|
||||||
|
if [ $VERBOSITY -ge 0 ]; then
|
||||||
|
[ -n "$g_timestamp" ] && timestamp="$(date +%H:%M:%S) "
|
||||||
|
echo "${timestamp}$@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Undo the effect of 'separate_list()'
|
||||||
|
#
|
||||||
|
combine_list()
|
||||||
|
{
|
||||||
|
local f
|
||||||
|
local o
|
||||||
|
o=
|
||||||
|
|
||||||
|
for f in $* ; do
|
||||||
|
o="${o:+$o,}$f"
|
||||||
|
done
|
||||||
|
|
||||||
|
echo $o
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Validate an IP address
|
||||||
|
#
|
||||||
|
valid_address() {
|
||||||
|
local x
|
||||||
|
local y
|
||||||
|
local ifs
|
||||||
|
ifs=$IFS
|
||||||
|
|
||||||
|
IFS=.
|
||||||
|
|
||||||
|
for x in $1; do
|
||||||
|
case $x in
|
||||||
|
[0-9]|[0-9][0-9]|[1-2][0-9][0-9])
|
||||||
|
[ $x -lt 256 ] || { IFS=$ifs; return 2; }
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
IFS=$ifs
|
||||||
|
return 2
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
IFS=$ifs
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Miserable Hack to work around broken BusyBox ash in OpenWRT
|
||||||
|
#
|
||||||
|
addr_comp() {
|
||||||
|
test $(bc <<EOF
|
||||||
|
$1 > $2
|
||||||
|
EOF
|
||||||
|
) -eq 1
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Enumerate the members of an IP range -- When using a shell supporting only
|
||||||
|
# 32-bit signed arithmetic, the range cannot span 128.0.0.0.
|
||||||
|
#
|
||||||
|
# Comes in two flavors:
|
||||||
|
#
|
||||||
|
# ip_range() - produces a mimimal list of network/host addresses that spans
|
||||||
|
# the range.
|
||||||
|
#
|
||||||
|
# ip_range_explicit() - explicitly enumerates the range.
|
||||||
|
#
|
||||||
|
ip_range() {
|
||||||
|
local first
|
||||||
|
local last
|
||||||
|
local l
|
||||||
|
local x
|
||||||
|
local y
|
||||||
|
local z
|
||||||
|
local vlsm
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
!*)
|
||||||
|
#
|
||||||
|
# Let iptables complain if it's a range
|
||||||
|
#
|
||||||
|
echo $1
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
[0-9]*.*.*.*-*.*.*.*)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo $1
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
first=$(decodeaddr ${1%-*})
|
||||||
|
last=$(decodeaddr ${1#*-})
|
||||||
|
|
||||||
|
if addr_comp $first $last; then
|
||||||
|
fatal_error "Invalid IP address range: $1"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
set_default_product
|
l=$(( $last + 1 ))
|
||||||
|
|
||||||
setup_product_environment
|
while addr_comp $l $first; do
|
||||||
fi
|
vlsm=
|
||||||
|
x=31
|
||||||
|
y=2
|
||||||
|
z=1
|
||||||
|
|
||||||
|
while [ $(( $first % $y )) -eq 0 ] && ! addr_comp $(( $first + $y )) $l; do
|
||||||
|
vlsm=/$x
|
||||||
|
x=$(( $x - 1 ))
|
||||||
|
z=$y
|
||||||
|
y=$(( $y * 2 ))
|
||||||
|
done
|
||||||
|
|
||||||
|
echo $(encodeaddr $first)$vlsm
|
||||||
|
first=$(($first + $z))
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
ip_range_explicit() {
|
||||||
|
local first
|
||||||
|
local last
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
[0-9]*.*.*.*-*.*.*.*)
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo $1
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
first=$(decodeaddr ${1%-*})
|
||||||
|
last=$(decodeaddr ${1#*-})
|
||||||
|
|
||||||
|
if addr_comp $first $last; then
|
||||||
|
fatal_error "Invalid IP address range: $1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
while ! addr_comp $first $last; do
|
||||||
|
echo $(encodeaddr $first)
|
||||||
|
first=$(($first + 1))
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -z "$LEFTSHIFT" ] && . ${g_basedir}/lib.common
|
||||||
|
|
||||||
|
#
|
||||||
|
# Netmask to VLSM
|
||||||
|
#
|
||||||
|
ip_vlsm() {
|
||||||
|
local mask
|
||||||
|
mask=$(decodeaddr $1)
|
||||||
|
local vlsm
|
||||||
|
vlsm=0
|
||||||
|
local x
|
||||||
|
x=$(( 128 << 24 )) # 0x80000000
|
||||||
|
|
||||||
|
while [ $(( $x & $mask )) -ne 0 ]; do
|
||||||
|
[ $mask -eq $x ] && mask=0 || mask=$(( $mask $LEFTSHIFT 1 )) # Not all shells shift 0x80000000 left properly.
|
||||||
|
vlsm=$(($vlsm + 1))
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $(( $mask & 2147483647 )) -ne 0 ]; then # 2147483647 = 0x7fffffff
|
||||||
|
echo "Invalid net mask: $1" >&2
|
||||||
|
else
|
||||||
|
echo $vlsm
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Set default config path
|
||||||
|
#
|
||||||
|
ensure_config_path() {
|
||||||
|
local F
|
||||||
|
F=${g_sharedir}/configpath
|
||||||
|
if [ -z "$CONFIG_PATH" ]; then
|
||||||
|
[ -f $F ] || { echo " ERROR: $F does not exist"; exit 2; }
|
||||||
|
. $F
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$g_shorewalldir" ]; then
|
||||||
|
[ "${CONFIG_PATH%%:*}" = "$g_shorewalldir" ] || CONFIG_PATH=$g_shorewalldir:$CONFIG_PATH
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Get fully-qualified name of file
|
||||||
|
#
|
||||||
|
resolve_file() # $1 = file name
|
||||||
|
{
|
||||||
|
local pwd
|
||||||
|
pwd=$PWD
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
/*)
|
||||||
|
echo $1
|
||||||
|
;;
|
||||||
|
.)
|
||||||
|
echo $pwd
|
||||||
|
;;
|
||||||
|
./*)
|
||||||
|
echo ${pwd}${1#.}
|
||||||
|
;;
|
||||||
|
..)
|
||||||
|
cd ..
|
||||||
|
echo $PWD
|
||||||
|
cd $pwd
|
||||||
|
;;
|
||||||
|
../*)
|
||||||
|
cd ..
|
||||||
|
resolve_file ${1#../}
|
||||||
|
cd $pwd
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo $pwd/$1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Determine how to do "echo -e"
|
||||||
|
#
|
||||||
|
|
||||||
|
find_echo() {
|
||||||
|
local result
|
||||||
|
|
||||||
|
result=$(echo "a\tb")
|
||||||
|
[ ${#result} -eq 3 ] && { echo echo; return; }
|
||||||
|
|
||||||
|
result=$(echo -e "a\tb")
|
||||||
|
[ ${#result} -eq 3 ] && { echo "echo -e"; return; }
|
||||||
|
|
||||||
|
result=$(which echo)
|
||||||
|
[ -n "$result" ] && { echo "$result -e"; return; }
|
||||||
|
|
||||||
|
echo echo
|
||||||
|
}
|
||||||
|
|
||||||
|
# Determine which version of mktemp is present (if any) and set MKTEMP accortingly:
|
||||||
|
#
|
||||||
|
# None - No mktemp
|
||||||
|
# BSD - BSD mktemp (Mandrake)
|
||||||
|
# STD - mktemp.org mktemp
|
||||||
|
#
|
||||||
|
find_mktemp() {
|
||||||
|
local mktemp
|
||||||
|
mktemp=`mywhich mktemp 2> /dev/null`
|
||||||
|
|
||||||
|
if [ -n "$mktemp" ]; then
|
||||||
|
if qt mktemp -V ; then
|
||||||
|
MKTEMP=STD
|
||||||
|
else
|
||||||
|
MKTEMP=BSD
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
MKTEMP=None
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# create a temporary file. If a directory name is passed, the file will be created in
|
||||||
|
# that directory. Otherwise, it will be created in a temporary directory.
|
||||||
|
#
|
||||||
|
mktempfile() {
|
||||||
|
|
||||||
|
[ -z "$MKTEMP" ] && find_mktemp
|
||||||
|
|
||||||
|
if [ $# -gt 0 ]; then
|
||||||
|
case "$MKTEMP" in
|
||||||
|
BSD)
|
||||||
|
mktemp $1/shorewall.XXXXXX
|
||||||
|
;;
|
||||||
|
STD)
|
||||||
|
mktemp -p $1 shorewall.XXXXXX
|
||||||
|
;;
|
||||||
|
None)
|
||||||
|
> $1/shorewall-$$ && echo $1/shorewall-$$
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
error_message "ERROR:Internal error in mktempfile"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
case "$MKTEMP" in
|
||||||
|
BSD)
|
||||||
|
mktemp ${TMPDIR:-/tmp}/shorewall.XXXXXX
|
||||||
|
;;
|
||||||
|
STD)
|
||||||
|
mktemp -t shorewall.XXXXXX
|
||||||
|
;;
|
||||||
|
None)
|
||||||
|
rm -f ${TMPDIR:-/tmp}/shorewall-$$
|
||||||
|
> ${TMPDIR:-}/shorewall-$$ && echo ${TMPDIR:-/tmp}/shorewall-$$
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
error_message "ERROR:Internal error in mktempfile"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -25,22 +25,6 @@
|
|||||||
# scripts rather than loaded at run-time.
|
# scripts rather than loaded at run-time.
|
||||||
#
|
#
|
||||||
#########################################################################################
|
#########################################################################################
|
||||||
#
|
|
||||||
# Wrapper around logger that sets the tag according to $SW_LOGGERTAG
|
|
||||||
#
|
|
||||||
mylogger() {
|
|
||||||
local level
|
|
||||||
|
|
||||||
level=$1
|
|
||||||
shift
|
|
||||||
|
|
||||||
if [ -n "$SW_LOGGERTAG" ]; then
|
|
||||||
logger -p $level -t "$SW_LOGGERTAG" $*
|
|
||||||
else
|
|
||||||
logger -p $level $*
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Issue a message and stop
|
# Issue a message and stop
|
||||||
#
|
#
|
||||||
@@ -49,24 +33,24 @@ startup_error() # $* = Error Message
|
|||||||
echo " ERROR: $@: Firewall state not changed" >&2
|
echo " ERROR: $@: Firewall state not changed" >&2
|
||||||
|
|
||||||
if [ $LOG_VERBOSITY -ge 0 ]; then
|
if [ $LOG_VERBOSITY -ge 0 ]; then
|
||||||
timestamp="$(date +'%b %e %T') "
|
timestamp="$(date +'%b %d %T') "
|
||||||
echo "${timestamp} ERROR: $@" >> $STARTUP_LOG
|
echo "${timestamp} ERROR: $@" >> $STARTUP_LOG
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case $COMMAND in
|
case $COMMAND in
|
||||||
start)
|
start)
|
||||||
mylogger kern.err "ERROR:$g_product start failed:Firewall state not changed"
|
logger -p kern.err "ERROR:$g_product start failed:Firewall state not changed"
|
||||||
;;
|
;;
|
||||||
restart)
|
restart)
|
||||||
mylogger kern.err "ERROR:$g_product restart failed:Firewall state not changed"
|
logger -p kern.err "ERROR:$g_product restart failed:Firewall state not changed"
|
||||||
;;
|
;;
|
||||||
restore)
|
restore)
|
||||||
mylogger kern.err "ERROR:$g_product restore failed:Firewall state not changed"
|
logger -p kern.err "ERROR:$g_product restore failed:Firewall state not changed"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
if [ $LOG_VERBOSITY -ge 0 ]; then
|
if [ $LOG_VERBOSITY -ge 0 ]; then
|
||||||
timestamp="$(date +'%b %e %T') "
|
timestamp="$(date +'%b %d %T') "
|
||||||
|
|
||||||
case $COMMAND in
|
case $COMMAND in
|
||||||
start)
|
start)
|
||||||
@@ -712,9 +696,9 @@ find_file()
|
|||||||
set_state () # $1 = state
|
set_state () # $1 = state
|
||||||
{
|
{
|
||||||
if [ $# -gt 1 ]; then
|
if [ $# -gt 1 ]; then
|
||||||
echo "$1 $(date) from $2" > ${VARDIR}/state
|
echo "$1 ($(date)) from $2" > ${VARDIR}/state
|
||||||
else
|
else
|
||||||
echo "$1 $(date)" > ${VARDIR}/state
|
echo "$1 ($(date))" > ${VARDIR}/state
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -776,7 +760,7 @@ mutex_on()
|
|||||||
error_message "WARNING: Stale lockfile ${lockf} removed"
|
error_message "WARNING: Stale lockfile ${lockf} removed"
|
||||||
elif [ $lockpid -eq $$ ]; then
|
elif [ $lockpid -eq $$ ]; then
|
||||||
return 0
|
return 0
|
||||||
elif ! ps | grep -v grep | qt grep ${lockpid}; then
|
elif ! qt ps p ${lockpid}; then
|
||||||
rm -f ${lockf}
|
rm -f ${lockf}
|
||||||
error_message "WARNING: Stale lockfile ${lockf} from pid ${lockpid} removed"
|
error_message "WARNING: Stale lockfile ${lockf} from pid ${lockpid} removed"
|
||||||
fi
|
fi
|
||||||
@@ -788,8 +772,10 @@ mutex_on()
|
|||||||
echo $$ > ${lockf}
|
echo $$ > ${lockf}
|
||||||
chmod u-w ${lockf}
|
chmod u-w ${lockf}
|
||||||
elif qt mywhich lock; then
|
elif qt mywhich lock; then
|
||||||
lock ${lockf}
|
lock -${MUTEX_TIMEOUT} -r1 ${lockf}
|
||||||
chmod u=r ${lockf}
|
chmod u+w ${lockf}
|
||||||
|
echo $$ > ${lockf}
|
||||||
|
chmod u-w ${lockf}
|
||||||
else
|
else
|
||||||
while [ -f ${lockf} -a ${try} -lt ${MUTEX_TIMEOUT} ] ; do
|
while [ -f ${lockf} -a ${try} -lt ${MUTEX_TIMEOUT} ] ; do
|
||||||
sleep 1
|
sleep 1
|
||||||
@@ -811,7 +797,6 @@ mutex_on()
|
|||||||
#
|
#
|
||||||
mutex_off()
|
mutex_off()
|
||||||
{
|
{
|
||||||
[ -f ${CONFDIR}/rc.common ] && lock -u ${LOCKFILE:=${VARDIR}/lock}
|
|
||||||
rm -f ${LOCKFILE:=${VARDIR}/lock}
|
rm -f ${LOCKFILE:=${VARDIR}/lock}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,461 +0,0 @@
|
|||||||
#
|
|
||||||
# Shorewall 5.0 -- /usr/share/shorewall/lib.core
|
|
||||||
#
|
|
||||||
# (c) 1999-2015 - Tom Eastep (teastep@shorewall.net)
|
|
||||||
#
|
|
||||||
# Complete documentation is available at http://shorewall.net
|
|
||||||
#
|
|
||||||
# This program is part of Shorewall.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by the
|
|
||||||
# Free Software Foundation, either version 2 of the license or, at your
|
|
||||||
# option, any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
# This library contains the code common to all Shorewall components except the
|
|
||||||
# generated scripts.
|
|
||||||
#
|
|
||||||
|
|
||||||
SHOREWALL_LIBVERSION=50100
|
|
||||||
|
|
||||||
#
|
|
||||||
# Fatal Error
|
|
||||||
#
|
|
||||||
fatal_error() # $@ = Message
|
|
||||||
{
|
|
||||||
echo " ERROR: $@" >&2
|
|
||||||
exit 2
|
|
||||||
}
|
|
||||||
|
|
||||||
setup_product_environment() { # $1 = if non-empty, source shorewallrc again now that we have the correct product
|
|
||||||
g_basedir=${SHAREDIR}/shorewall
|
|
||||||
|
|
||||||
g_sharedir="$SHAREDIR"/$PRODUCT
|
|
||||||
g_confdir="$CONFDIR"/$PRODUCT
|
|
||||||
|
|
||||||
case $PRODUCT in
|
|
||||||
shorewall)
|
|
||||||
g_product="Shorewall"
|
|
||||||
g_family=4
|
|
||||||
g_tool=iptables
|
|
||||||
g_lite=
|
|
||||||
g_options=-l
|
|
||||||
;;
|
|
||||||
shorewall6)
|
|
||||||
g_product="Shorewall6"
|
|
||||||
g_family=6
|
|
||||||
g_tool=ip6tables
|
|
||||||
g_lite=
|
|
||||||
g_options=-6l
|
|
||||||
;;
|
|
||||||
shorewall-lite)
|
|
||||||
g_product="Shorewall Lite"
|
|
||||||
g_family=4
|
|
||||||
g_tool=iptables
|
|
||||||
g_lite=Yes
|
|
||||||
;;
|
|
||||||
shorewall6-lite)
|
|
||||||
g_product="Shorewall6 Lite"
|
|
||||||
g_family=6
|
|
||||||
g_tool=ip6tables
|
|
||||||
g_lite=Yes
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
fatal_error "Unknown PRODUCT ($PRODUCT)"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
[ -f ${SHAREDIR}/${PRODUCT}/version ] || fatal_error "$g_product does not appear to be installed on this system"
|
|
||||||
#
|
|
||||||
# We need to do this again, now that we have the correct product
|
|
||||||
#
|
|
||||||
[ -n "$1" ] && . ${g_basedir}/shorewallrc
|
|
||||||
|
|
||||||
if [ -z "${VARLIB}" ]; then
|
|
||||||
VARLIB=${VARDIR}
|
|
||||||
VARDIR=${VARLIB}/${PRODUCT}
|
|
||||||
elif [ -z "${VARDIR}" ]; then
|
|
||||||
VARDIR="${VARLIB}/${PRODUCT}"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
set_default_product() {
|
|
||||||
case $(basename $0) in
|
|
||||||
shorewall6)
|
|
||||||
PRODUCT=shorewall6
|
|
||||||
;;
|
|
||||||
shorewall4)
|
|
||||||
PRODUCT=shorewall
|
|
||||||
;;
|
|
||||||
shorewall-lite)
|
|
||||||
PRODUCT=shorewall-lite
|
|
||||||
;;
|
|
||||||
shorewall6-lite)
|
|
||||||
PRODUCT=shorewall6-lite
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
if [ -f ${g_basedir}/version ]; then
|
|
||||||
PRODUCT=shorewall
|
|
||||||
elif [ -f ${SHAREDIR}/shorewall-lite/version ]; then
|
|
||||||
PRODUCT=shorewall-lite
|
|
||||||
elif [ -f ${SHAREDIR}/shorewall6-lite/version ]; then
|
|
||||||
PRODUCT=shorewall6-lite
|
|
||||||
else
|
|
||||||
fatal_error "No Shorewall firewall product is installed"
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
# Not configured Error
|
|
||||||
#
|
|
||||||
not_configured_error() # $@ = Message
|
|
||||||
{
|
|
||||||
echo " ERROR: $@" >&2
|
|
||||||
exit 6
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Conditionally produce message
|
|
||||||
#
|
|
||||||
progress_message() # $* = Message
|
|
||||||
{
|
|
||||||
local timestamp
|
|
||||||
timestamp=
|
|
||||||
|
|
||||||
if [ $VERBOSITY -gt 1 ]; then
|
|
||||||
[ -n "$g_timestamp" ] && timestamp="$(date +%H:%M:%S) "
|
|
||||||
echo "${timestamp}$@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
progress_message2() # $* = Message
|
|
||||||
{
|
|
||||||
local timestamp
|
|
||||||
timestamp=
|
|
||||||
|
|
||||||
if [ $VERBOSITY -gt 0 ]; then
|
|
||||||
[ -n "$g_timestamp" ] && timestamp="$(date +%H:%M:%S) "
|
|
||||||
echo "${timestamp}$@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
progress_message3() # $* = Message
|
|
||||||
{
|
|
||||||
local timestamp
|
|
||||||
timestamp=
|
|
||||||
|
|
||||||
if [ $VERBOSITY -ge 0 ]; then
|
|
||||||
[ -n "$g_timestamp" ] && timestamp="$(date +%H:%M:%S) "
|
|
||||||
echo "${timestamp}$@"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Undo the effect of 'separate_list()'
|
|
||||||
#
|
|
||||||
combine_list()
|
|
||||||
{
|
|
||||||
local f
|
|
||||||
local o
|
|
||||||
o=
|
|
||||||
|
|
||||||
for f in $* ; do
|
|
||||||
o="${o:+$o,}$f"
|
|
||||||
done
|
|
||||||
|
|
||||||
echo $o
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Validate an IP address
|
|
||||||
#
|
|
||||||
valid_address() {
|
|
||||||
local x
|
|
||||||
local y
|
|
||||||
local ifs
|
|
||||||
ifs=$IFS
|
|
||||||
|
|
||||||
IFS=.
|
|
||||||
|
|
||||||
for x in $1; do
|
|
||||||
case $x in
|
|
||||||
[0-9]|[0-9][0-9]|[1-2][0-9][0-9])
|
|
||||||
[ $x -lt 256 ] || { IFS=$ifs; return 2; }
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
IFS=$ifs
|
|
||||||
return 2
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
IFS=$ifs
|
|
||||||
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Miserable Hack to work around broken BusyBox ash in OpenWRT
|
|
||||||
#
|
|
||||||
addr_comp() {
|
|
||||||
test $(bc <<EOF
|
|
||||||
$1 > $2
|
|
||||||
EOF
|
|
||||||
) -eq 1
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Enumerate the members of an IP range -- When using a shell supporting only
|
|
||||||
# 32-bit signed arithmetic, the range cannot span 128.0.0.0.
|
|
||||||
#
|
|
||||||
# Comes in two flavors:
|
|
||||||
#
|
|
||||||
# ip_range() - produces a mimimal list of network/host addresses that spans
|
|
||||||
# the range.
|
|
||||||
#
|
|
||||||
# ip_range_explicit() - explicitly enumerates the range.
|
|
||||||
#
|
|
||||||
ip_range() {
|
|
||||||
local first
|
|
||||||
local last
|
|
||||||
local l
|
|
||||||
local x
|
|
||||||
local y
|
|
||||||
local z
|
|
||||||
local vlsm
|
|
||||||
|
|
||||||
case $1 in
|
|
||||||
!*)
|
|
||||||
#
|
|
||||||
# Let iptables complain if it's a range
|
|
||||||
#
|
|
||||||
echo $1
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
[0-9]*.*.*.*-*.*.*.*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo $1
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
first=$(decodeaddr ${1%-*})
|
|
||||||
last=$(decodeaddr ${1#*-})
|
|
||||||
|
|
||||||
if addr_comp $first $last; then
|
|
||||||
fatal_error "Invalid IP address range: $1"
|
|
||||||
fi
|
|
||||||
|
|
||||||
l=$(( $last + 1 ))
|
|
||||||
|
|
||||||
while addr_comp $l $first; do
|
|
||||||
vlsm=
|
|
||||||
x=31
|
|
||||||
y=2
|
|
||||||
z=1
|
|
||||||
|
|
||||||
while [ $(( $first % $y )) -eq 0 ] && ! addr_comp $(( $first + $y )) $l; do
|
|
||||||
vlsm=/$x
|
|
||||||
x=$(( $x - 1 ))
|
|
||||||
z=$y
|
|
||||||
y=$(( $y * 2 ))
|
|
||||||
done
|
|
||||||
|
|
||||||
echo $(encodeaddr $first)$vlsm
|
|
||||||
first=$(($first + $z))
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
ip_range_explicit() {
|
|
||||||
local first
|
|
||||||
local last
|
|
||||||
|
|
||||||
case $1 in
|
|
||||||
[0-9]*.*.*.*-*.*.*.*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo $1
|
|
||||||
return
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
first=$(decodeaddr ${1%-*})
|
|
||||||
last=$(decodeaddr ${1#*-})
|
|
||||||
|
|
||||||
if addr_comp $first $last; then
|
|
||||||
fatal_error "Invalid IP address range: $1"
|
|
||||||
fi
|
|
||||||
|
|
||||||
while ! addr_comp $first $last; do
|
|
||||||
echo $(encodeaddr $first)
|
|
||||||
first=$(($first + 1))
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
[ -z "$LEFTSHIFT" ] && . ${g_basedir}/lib.common
|
|
||||||
|
|
||||||
#
|
|
||||||
# Netmask to VLSM
|
|
||||||
#
|
|
||||||
ip_vlsm() {
|
|
||||||
local mask
|
|
||||||
mask=$(decodeaddr $1)
|
|
||||||
local vlsm
|
|
||||||
vlsm=0
|
|
||||||
local x
|
|
||||||
x=$(( 128 << 24 )) # 0x80000000
|
|
||||||
|
|
||||||
while [ $(( $x & $mask )) -ne 0 ]; do
|
|
||||||
[ $mask -eq $x ] && mask=0 || mask=$(( $mask $LEFTSHIFT 1 )) # Not all shells shift 0x80000000 left properly.
|
|
||||||
vlsm=$(($vlsm + 1))
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ $(( $mask & 2147483647 )) -ne 0 ]; then # 2147483647 = 0x7fffffff
|
|
||||||
echo "Invalid net mask: $1" >&2
|
|
||||||
else
|
|
||||||
echo $vlsm
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Set default config path
|
|
||||||
#
|
|
||||||
ensure_config_path() {
|
|
||||||
local F
|
|
||||||
F=${g_sharedir}/configpath
|
|
||||||
if [ -z "$CONFIG_PATH" ]; then
|
|
||||||
[ -f $F ] || { echo " ERROR: $F does not exist"; exit 2; }
|
|
||||||
. $F
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$g_shorewalldir" ]; then
|
|
||||||
[ "${CONFIG_PATH%%:*}" = "$g_shorewalldir" ] || CONFIG_PATH=$g_shorewalldir:$CONFIG_PATH
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Get fully-qualified name of file
|
|
||||||
#
|
|
||||||
resolve_file() # $1 = file name
|
|
||||||
{
|
|
||||||
local pwd
|
|
||||||
pwd=$PWD
|
|
||||||
|
|
||||||
case $1 in
|
|
||||||
/*)
|
|
||||||
echo $1
|
|
||||||
;;
|
|
||||||
.)
|
|
||||||
echo $pwd
|
|
||||||
;;
|
|
||||||
./*)
|
|
||||||
echo ${pwd}${1#.}
|
|
||||||
;;
|
|
||||||
..)
|
|
||||||
cd ..
|
|
||||||
echo $PWD
|
|
||||||
cd $pwd
|
|
||||||
;;
|
|
||||||
../*)
|
|
||||||
cd ..
|
|
||||||
resolve_file ${1#../}
|
|
||||||
cd $pwd
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo $pwd/$1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Determine how to do "echo -e"
|
|
||||||
#
|
|
||||||
|
|
||||||
find_echo() {
|
|
||||||
local result
|
|
||||||
|
|
||||||
result=$(echo "a\tb")
|
|
||||||
[ ${#result} -eq 3 ] && { echo echo; return; }
|
|
||||||
|
|
||||||
result=$(echo -e "a\tb")
|
|
||||||
[ ${#result} -eq 3 ] && { echo "echo -e"; return; }
|
|
||||||
|
|
||||||
result=$(which echo)
|
|
||||||
[ -n "$result" ] && { echo "$result -e"; return; }
|
|
||||||
|
|
||||||
echo echo
|
|
||||||
}
|
|
||||||
|
|
||||||
# Determine which version of mktemp is present (if any) and set MKTEMP accortingly:
|
|
||||||
#
|
|
||||||
# None - No mktemp
|
|
||||||
# BSD - BSD mktemp (Mandrake)
|
|
||||||
# STD - mktemp.org mktemp
|
|
||||||
#
|
|
||||||
find_mktemp() {
|
|
||||||
local mktemp
|
|
||||||
mktemp=`mywhich mktemp 2> /dev/null`
|
|
||||||
|
|
||||||
if [ -n "$mktemp" ]; then
|
|
||||||
if qt mktemp -V ; then
|
|
||||||
MKTEMP=STD
|
|
||||||
else
|
|
||||||
MKTEMP=BSD
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
MKTEMP=None
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# create a temporary file. If a directory name is passed, the file will be created in
|
|
||||||
# that directory. Otherwise, it will be created in a temporary directory.
|
|
||||||
#
|
|
||||||
mktempfile() {
|
|
||||||
|
|
||||||
[ -z "$MKTEMP" ] && find_mktemp
|
|
||||||
|
|
||||||
if [ $# -gt 0 ]; then
|
|
||||||
case "$MKTEMP" in
|
|
||||||
BSD)
|
|
||||||
mktemp $1/shorewall.XXXXXX
|
|
||||||
;;
|
|
||||||
STD)
|
|
||||||
mktemp -p $1 shorewall.XXXXXX
|
|
||||||
;;
|
|
||||||
None)
|
|
||||||
> $1/shorewall-$$ && echo $1/shorewall-$$
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
error_message "ERROR:Internal error in mktempfile"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
else
|
|
||||||
case "$MKTEMP" in
|
|
||||||
BSD)
|
|
||||||
mktemp ${TMPDIR:-/tmp}/shorewall.XXXXXX
|
|
||||||
;;
|
|
||||||
STD)
|
|
||||||
mktemp -t shorewall.XXXXXX
|
|
||||||
;;
|
|
||||||
None)
|
|
||||||
rm -f ${TMPDIR:-/tmp}/shorewall-$$
|
|
||||||
> ${TMPDIR:-}/shorewall-$$ && echo ${TMPDIR:-/tmp}/shorewall-$$
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
error_message "ERROR:Internal error in mktempfile"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
}
|
|
@@ -19,4 +19,3 @@ SERVICEFILE= #Unused on OS X
|
|||||||
SYSCONFDIR= #Unused on OS X
|
SYSCONFDIR= #Unused on OS X
|
||||||
SPARSE=Yes #Only install $PRODUCT/$PRODUCT.conf in $CONFDIR.
|
SPARSE=Yes #Only install $PRODUCT/$PRODUCT.conf in $CONFDIR.
|
||||||
VARLIB=/var/lib #Unused on OS X
|
VARLIB=/var/lib #Unused on OS X
|
||||||
DEFAULT_PAGER= #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -20,4 +20,3 @@ SERVICEFILE= #Name of the file to install in $SYSTEMD.
|
|||||||
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
||||||
VARLIB=/var/lib #Directory where product variable data is stored.
|
VARLIB=/var/lib #Directory where product variable data is stored.
|
||||||
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
||||||
DEFAULT_PAGER= #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -19,4 +19,3 @@ SERVICEFILE= #Unused on Cygwin
|
|||||||
SYSCONFDIR= #Unused on Cygwin
|
SYSCONFDIR= #Unused on Cygwin
|
||||||
SPARSE=Yes #Only install $PRODUCT/$PRODUCT.conf in $CONFDIR.
|
SPARSE=Yes #Only install $PRODUCT/$PRODUCT.conf in $CONFDIR.
|
||||||
VARLIB=/var/lib #Unused on Cygwin
|
VARLIB=/var/lib #Unused on Cygwin
|
||||||
DEFAULT_PAGER= #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -21,4 +21,3 @@ SERVICEDIR=/lib/systemd/system #Directory where .service files are installed (s
|
|||||||
SPARSE=Yes #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
SPARSE=Yes #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
||||||
VARLIB=/var/lib #Directory where product variable data is stored.
|
VARLIB=/var/lib #Directory where product variable data is stored.
|
||||||
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
||||||
DEFAULT_PAGER=/usr/bin/less #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -21,4 +21,3 @@ SERVICEDIR= #Directory where .service files are installed (systems running sy
|
|||||||
SPARSE=Yes #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
SPARSE=Yes #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
||||||
VARLIB=/var/lib #Directory where product variable data is stored.
|
VARLIB=/var/lib #Directory where product variable data is stored.
|
||||||
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
||||||
DEFAULT_PAGER=/usr/bin/less #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -21,4 +21,3 @@ SYSCONFDIR= #Directory where SysV init parameter fil
|
|||||||
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
||||||
VARLIB=/var/lib #Directory where product variable data is stored.
|
VARLIB=/var/lib #Directory where product variable data is stored.
|
||||||
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
||||||
DEFAULT_PAGER= #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -3,22 +3,24 @@
|
|||||||
#
|
#
|
||||||
# Input: host=openwrt
|
# Input: host=openwrt
|
||||||
#
|
#
|
||||||
PREFIX=/usr #Top-level directory for shared files, libraries, etc.
|
HOST=openwrt
|
||||||
SHAREDIR=${PREFIX}/share #Directory for arch-neutral files.
|
PREFIX=/usr
|
||||||
LIBEXECDIR=${PREFIX}/share #Directory for executable scripts.
|
SHAREDIR=${PREFIX}/share
|
||||||
PERLLIBDIR=${PREFIX}/share/shorewall #Directory to install Shorewall Perl module directory
|
LIBEXECDIR=${PREFIX}/share
|
||||||
CONFDIR=/etc #Directory where subsystem configurations are installed
|
PERLLIBDIR=${PREFIX}/share/shorewall
|
||||||
SBINDIR=/sbin #Directory where system administration programs are installed
|
CONFDIR=/etc
|
||||||
MANDIR= #Directory where manpages are installed.
|
SBINDIR=/sbin
|
||||||
INITDIR=/etc/init.d #Directory where SysV init scripts are installed.
|
MANDIR=${PREFIX}/man
|
||||||
INITFILE=$PRODUCT #Name of the product's installed SysV init script
|
INITDIR=/etc/init.d
|
||||||
INITSOURCE=init.openwrt.sh #Name of the distributed file to be installed as the SysV init script
|
INITSOURCE=init.openwrt.sh
|
||||||
ANNOTATED= #If non-zero, annotated configuration files are installed
|
INITFILE=$PRODUCT
|
||||||
SYSCONFDIR=${CONFDIR}/sysconfig #Directory where SysV init parameter files are installed
|
AUXINITSOURCE=
|
||||||
SYSCONFFILE=sysconfig #Name of the distributed file to be installed in $SYSCONFDIR
|
AUXINITFILE=
|
||||||
SERVICEDIR= #Directory where .service files are installed (systems running systemd only)
|
SERVICEDIR=
|
||||||
SERVICEFILE= #Name of the file to install in $SYSTEMD. Default is $PRODUCT.service
|
SERVICEFILE=
|
||||||
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
SYSCONFFILE=default.openwrt
|
||||||
VARLIB=/lib #Directory where product variable data is stored.
|
SYSCONFDIR=${CONFDIR}/sysconfig
|
||||||
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
SPARSE=
|
||||||
DEFAULT_PAGER= #Pager to use if none specified in shorewall[6].conf
|
ANNOTATED=
|
||||||
|
VARLIB=/lib
|
||||||
|
VARDIR=${VARLIB}/$PRODUCT
|
||||||
|
@@ -21,4 +21,3 @@ SYSCONFDIR=/etc/sysconfig/ #Directory where SysV init parameter fil
|
|||||||
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
||||||
VARLIB=/var/lib #Directory where product variable data is stored.
|
VARLIB=/var/lib #Directory where product variable data is stored.
|
||||||
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
||||||
DEFAULT_PAGER= #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -22,4 +22,3 @@ SYSCONFDIR= #Name of the directory where SysV ini
|
|||||||
ANNOTATED= #If non-empty, install annotated configuration files
|
ANNOTATED= #If non-empty, install annotated configuration files
|
||||||
VARLIB=/var/lib #Directory where product variable data is stored.
|
VARLIB=/var/lib #Directory where product variable data is stored.
|
||||||
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
||||||
DEFAULT_PAGER= #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -7,18 +7,17 @@ PREFIX=/usr #Top-level directory for s
|
|||||||
CONFDIR=/etc #Directory where subsystem configurations are installed
|
CONFDIR=/etc #Directory where subsystem configurations are installed
|
||||||
SHAREDIR=${PREFIX}/share #Directory for arch-neutral files.
|
SHAREDIR=${PREFIX}/share #Directory for arch-neutral files.
|
||||||
LIBEXECDIR=${PREFIX}/lib #Directory for executable scripts.
|
LIBEXECDIR=${PREFIX}/lib #Directory for executable scripts.
|
||||||
PERLLIBDIR=${PREFIX}/lib/perl5/site-perl #Directory to install Shorewall Perl module directory
|
PERLLIBDIR=${PREFIX}/lib/perl5/vendor_perl/5.14.2 #Directory to install Shorewall Perl module directory
|
||||||
SBINDIR=/usr/sbin #Directory where system administration programs are installed
|
SBINDIR=/usr/sbin #Directory where system administration programs are installed
|
||||||
MANDIR=${SHAREDIR}/man/ #Directory where manpages are installed.
|
MANDIR=${SHAREDIR}/man/ #Directory where manpages are installed.
|
||||||
INITDIR=/etc/init.d #Directory where SysV init scripts are installed.
|
INITDIR=/etc/init.d #Directory where SysV init scripts are installed.
|
||||||
INITFILE= #Name of the product's SysV init script
|
INITFILE=$PRODUCT #Name of the product's SysV init script
|
||||||
INITSOURCE=init.suse.sh #Name of the distributed file to be installed as the SysV init script
|
INITSOURCE=init.suse.sh #Name of the distributed file to be installed as the SysV init script
|
||||||
ANNOTATED= #If non-zero, annotated configuration files are installed
|
ANNOTATED= #If non-zero, annotated configuration files are installed
|
||||||
SERVICEDIR=/usr/lib/systemd/system #Directory where .service files are installed (systems running systemd only)
|
SERVICEDIR= #Directory where .service files are installed (systems running systemd only)
|
||||||
SERVICEFILE=$PRODUCT.service #Name of the file to install in $SYSTEMD. Default is $PRODUCT.service
|
SERVICEFILE= #Name of the file to install in $SYSTEMD. Default is $PRODUCT.service
|
||||||
SYSCONFFILE=sysconfig #Name of the distributed file to be installed in $SYSCONFDIR
|
SYSCONFFILE=sysconfig #Name of the distributed file to be installed in $SYSCONFDIR
|
||||||
SYSCONFDIR=/etc/sysconfig/ #Directory where SysV init parameter files are installed
|
SYSCONFDIR=/etc/sysconfig/ #Directory where SysV init parameter files are installed
|
||||||
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR
|
||||||
VARLIB=/var/lib #Directory where persistent product data is stored.
|
VARLIB=/var/lib #Directory where persistent product data is stored.
|
||||||
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
VARDIR=${VARLIB}/$PRODUCT #Directory where product variable data is stored.
|
||||||
DEFAULT_PAGER= #Pager to use if none specified in shorewall[6].conf
|
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Script to back uninstall Shoreline Firewall
|
# Script to back uninstall Shoreline Firewall
|
||||||
#
|
#
|
||||||
# (c) 2000-2016 - Tom Eastep (teastep@shorewall.net)
|
# (c) 2000-2014 - Tom Eastep (teastep@shorewall.net)
|
||||||
#
|
#
|
||||||
# Shorewall documentation is available at http://www.shorewall.net
|
# Shorewall documentation is available at http://www.shorewall.net
|
||||||
#
|
#
|
||||||
@@ -27,8 +27,6 @@
|
|||||||
# shown below. Simply run this script to remove Shorewall Firewall
|
# shown below. Simply run this script to remove Shorewall Firewall
|
||||||
|
|
||||||
VERSION=xxx #The Build script inserts the actual version
|
VERSION=xxx #The Build script inserts the actual version
|
||||||
PRODUCT="shorewall-core"
|
|
||||||
Product="Shorewall Core"
|
|
||||||
|
|
||||||
usage() # $1 = exit status
|
usage() # $1 = exit status
|
||||||
{
|
{
|
||||||
@@ -68,11 +66,6 @@ remove_file() # $1 = file to restore
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
#
|
|
||||||
# Change to the directory containing this script
|
|
||||||
#
|
|
||||||
cd "$(dirname $0)"
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Read the RC file
|
# Read the RC file
|
||||||
#
|
#
|
||||||
@@ -81,6 +74,7 @@ if [ $# -eq 0 ]; then
|
|||||||
. ./shorewallrc
|
. ./shorewallrc
|
||||||
elif [ -f ~/.shorewallrc ]; then
|
elif [ -f ~/.shorewallrc ]; then
|
||||||
. ~/.shorewallrc || exit 1
|
. ~/.shorewallrc || exit 1
|
||||||
|
file=./.shorewallrc
|
||||||
elif [ -f /usr/share/shorewall/shorewallrc ]; then
|
elif [ -f /usr/share/shorewall/shorewallrc ]; then
|
||||||
. /usr/share/shorewall/shorewallrc
|
. /usr/share/shorewall/shorewallrc
|
||||||
else
|
else
|
||||||
@@ -116,7 +110,6 @@ fi
|
|||||||
echo "Uninstalling Shorewall Core $VERSION"
|
echo "Uninstalling Shorewall Core $VERSION"
|
||||||
|
|
||||||
rm -rf ${SHAREDIR}/shorewall
|
rm -rf ${SHAREDIR}/shorewall
|
||||||
rm -f ~/.shorewallrc
|
|
||||||
|
|
||||||
echo "Shorewall Core Uninstalled"
|
echo "Shorewall Core Uninstalled"
|
||||||
|
|
||||||
|
1
Shorewall-init/README.txt
Normal file
1
Shorewall-init/README.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
This is the Shorewall-init stable 4.4 branch of Git.
|
@@ -31,10 +31,8 @@ setstatedir() {
|
|||||||
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
||||||
|
|
||||||
if [ ! -x $STATEDIR/firewall ]; then
|
if [ ! -x $STATEDIR/firewall ]; then
|
||||||
if [ $PRODUCT = shorewall ]; then
|
if [ $PRODUCT = shorewall -o $PRODUCT = shorewall6 ]; then
|
||||||
${SBINDIR}/shorewall compile
|
${SBINDIR}/$PRODUCT compile
|
||||||
elif [ $PRODUCT = shorewall6 ]; then
|
|
||||||
${SBINDIR}/shorewall -6 compile
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -130,7 +128,7 @@ for PRODUCT in $PRODUCTS; do
|
|||||||
setstatedir
|
setstatedir
|
||||||
|
|
||||||
if [ -x $VARLIB/$PRODUCT/firewall ]; then
|
if [ -x $VARLIB/$PRODUCT/firewall ]; then
|
||||||
( ${VARLIB}/$PRODUCT/firewall -V0 $COMMAND $INTERFACE >> $LOGFILE 2>&1 ) || true
|
( ${VARLIB}/$PRODUCT/firewall -V0 $COMMAND $INTERFACE >> $LOGFILE 2>&1 ) || true
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
@@ -33,11 +33,9 @@ setstatedir() {
|
|||||||
|
|
||||||
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
||||||
|
|
||||||
if [ ! -x $STATEDIR/firewall ]; then
|
if [ ! -x "$STATEDIR/firewall" ]; then
|
||||||
if [ $PRODUCT = shorewall ]; then
|
if [ $PRODUCT == shorewall -o $PRODUCT == shorewall6 ]; then
|
||||||
${SBINDIR}/shorewall compile
|
${SBINDIR}/$PRODUCT $OPTIONS compile
|
||||||
elif [ $PRODUCT = shorewall6 ]; then
|
|
||||||
${SBINDIR}/shorewall -6 compile
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@@ -31,10 +31,8 @@ setstatedir() {
|
|||||||
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
||||||
|
|
||||||
if [ ! -x $STATEDIR/firewall ]; then
|
if [ ! -x $STATEDIR/firewall ]; then
|
||||||
if [ $PRODUCT = shorewall ]; then
|
if [ $PRODUCT = shorewall -o $PRODUCT = shorewall6 ]; then
|
||||||
${SBINDIR}/shorewall compile
|
${SBINDIR}/$PRODUCT compile
|
||||||
elif [ $PRODUCT = shorewall6 ]; then
|
|
||||||
${SBINDIR}/shorewall -6 compile
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@@ -30,7 +30,7 @@
|
|||||||
# Required-Stop: $local_fs
|
# Required-Stop: $local_fs
|
||||||
# X-Stop-After: $network
|
# X-Stop-After: $network
|
||||||
# Default-Start: S
|
# Default-Start: S
|
||||||
# Default-Stop: 0 1 6
|
# Default-Stop: 0 6
|
||||||
# Short-Description: Initialize the firewall at boot time
|
# Short-Description: Initialize the firewall at boot time
|
||||||
# Description: Place the firewall in a safe state at boot time prior to
|
# Description: Place the firewall in a safe state at boot time prior to
|
||||||
# bringing up the network
|
# bringing up the network
|
||||||
@@ -73,10 +73,8 @@ setstatedir() {
|
|||||||
|
|
||||||
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
||||||
|
|
||||||
if [ $PRODUCT = shorewall ]; then
|
if [ $PRODUCT = shorewall -o $PRODUCT = shorewall6 ]; then
|
||||||
${SBINDIR}/shorewall compile
|
${SBINDIR}/$PRODUCT ${OPTIONS} compile -c
|
||||||
elif [ $PRODUCT = shorewall6 ]; then
|
|
||||||
${SBINDIR}/shorewall -6 compile
|
|
||||||
else
|
else
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
@@ -44,10 +44,8 @@ setstatedir() {
|
|||||||
|
|
||||||
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
||||||
|
|
||||||
if [ $PRODUCT = shorewall ]; then
|
if [ $PRODUCT == shorewall -o $PRODUCT == shorewall6 ]; then
|
||||||
${SBINDIR}/shorewall compile
|
${SBINDIR}/$PRODUCT $OPTIONS compile -c
|
||||||
elif [ $PRODUCT = shorewall6 ]; then
|
|
||||||
${SBINDIR}/shorewall -6 compile
|
|
||||||
else
|
else
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
@@ -1,133 +0,0 @@
|
|||||||
#!/bin/sh /etc/rc.common
|
|
||||||
# The Shoreline Firewall (Shorewall) Packet Filtering Firewall - V5.0
|
|
||||||
#
|
|
||||||
# (c) 2010,2012-2014 - Tom Eastep (teastep@shorewall.net)
|
|
||||||
# (c) 2016 - Matt Darfeuille (matdarf@gmail.com)
|
|
||||||
#
|
|
||||||
# On most distributions, this file should be called /etc/init.d/shorewall-init.
|
|
||||||
#
|
|
||||||
# This program is part of Shorewall.
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by the
|
|
||||||
# Free Software Foundation, either version 2 of the license or, at your
|
|
||||||
# option, any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
||||||
#
|
|
||||||
#
|
|
||||||
|
|
||||||
# arg1 of init script is arg2 when rc.common is sourced
|
|
||||||
|
|
||||||
case "$action" in
|
|
||||||
start|stop|boot)
|
|
||||||
if [ "$(id -u)" != "0" ]
|
|
||||||
then
|
|
||||||
echo "You must be root to start, stop or restart \"Shorewall \"."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# check if shorewall-init is configured or not
|
|
||||||
if [ -f "/etc/sysconfig/shorewall-init" ]
|
|
||||||
then
|
|
||||||
. /etc/sysconfig/shorewall-init
|
|
||||||
if [ -z "$PRODUCTS" ]
|
|
||||||
then
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
;;
|
|
||||||
enable|disable|enabled)
|
|
||||||
# Openwrt related
|
|
||||||
# start and stop runlevel variable
|
|
||||||
START=19
|
|
||||||
STOP=91
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Usage: /etc/init.d/shorewall-init {start|stop}"
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
|
|
||||||
#
|
|
||||||
# The installer may alter this
|
|
||||||
#
|
|
||||||
. /usr/share/shorewall/shorewallrc
|
|
||||||
|
|
||||||
# Locate the current PRODUCT's statedir
|
|
||||||
setstatedir() {
|
|
||||||
local statedir
|
|
||||||
if [ -f ${CONFDIR}/${PRODUCT}/vardir ]; then
|
|
||||||
statedir=$( . ${CONFDIR}/${PRODUCT}/vardir && echo $VARDIR )
|
|
||||||
fi
|
|
||||||
|
|
||||||
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
|
||||||
|
|
||||||
if [ $PRODUCT = shorewall ]; then
|
|
||||||
${SBINDIR}/shorewall compile
|
|
||||||
elif [ $PRODUCT = shorewall6 ]; then
|
|
||||||
${SBINDIR}/shorewall -6 compile
|
|
||||||
else
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Initialize the firewall
|
|
||||||
start () {
|
|
||||||
local PRODUCT
|
|
||||||
local STATEDIR
|
|
||||||
|
|
||||||
echo -n "Initializing \"Shorewall-based firewalls\": "
|
|
||||||
for PRODUCT in $PRODUCTS; do
|
|
||||||
if setstatedir; then
|
|
||||||
if [ -x ${STATEDIR}/firewall ]; then
|
|
||||||
if ! ${SBIN}/$PRODUCT status > /dev/null 2>&1; then
|
|
||||||
${STATEDIR}/firewall ${OPTIONS} stop
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ -n "$SAVE_IPSETS" -a -f "$SAVE_IPSETS" ]; then
|
|
||||||
ipset -R < "$SAVE_IPSETS"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
boot () {
|
|
||||||
start
|
|
||||||
}
|
|
||||||
|
|
||||||
# Clear the firewall
|
|
||||||
stop () {
|
|
||||||
local PRODUCT
|
|
||||||
local STATEDIR
|
|
||||||
|
|
||||||
echo -n "Clearing \"Shorewall-based firewalls\": "
|
|
||||||
for PRODUCT in $PRODUCTS; do
|
|
||||||
if setstatedir; then
|
|
||||||
if [ -x ${STATEDIR}/firewall ]; then
|
|
||||||
${STATEDIR}/firewall ${OPTIONS} clear
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ -n "$SAVE_IPSETS" ]; then
|
|
||||||
mkdir -p $(dirname "$SAVE_IPSETS")
|
|
||||||
if ipset -S > "${SAVE_IPSETS}.tmp"; then
|
|
||||||
grep -qE -- '^(-N|create )' "${SAVE_IPSETS}.tmp" && mv -f "${SAVE_IPSETS}.tmp" "$SAVE_IPSETS"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
@@ -79,10 +79,8 @@ setstatedir() {
|
|||||||
|
|
||||||
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
||||||
|
|
||||||
if [ $PRODUCT = shorewall ]; then
|
if [ $PRODUCT = shorewall -o $PRODUCT = shorewall6 ]; then
|
||||||
${SBINDIR}/shorewall compile
|
${SBINDIR}/$PRODUCT ${OPTIONS} compile -c
|
||||||
elif [ $PRODUCT = shorewall6 ]; then
|
|
||||||
${SBINDIR}/shorewall -6 compile
|
|
||||||
else
|
else
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Script to install Shoreline Firewall Init
|
# Script to install Shoreline Firewall Init
|
||||||
#
|
#
|
||||||
# (c) 2000-2016 - Tom Eastep (teastep@shorewall.net)
|
# (c) 2000-20114 - Tom Eastep (teastep@shorewall.net)
|
||||||
# (c) 2010 - Roberto C. Sanchez (roberto@connexer.com)
|
# (c) 2010 - Roberto C. Sanchez (roberto@connexer.com)
|
||||||
#
|
#
|
||||||
# Shorewall documentation is available at http://shorewall.net
|
# Shorewall documentation is available at http://shorewall.net
|
||||||
@@ -28,8 +28,6 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
VERSION=xxx #The Build script inserts the actual version.
|
VERSION=xxx #The Build script inserts the actual version.
|
||||||
PRODUCT=shorewall-init
|
|
||||||
Product="Shorewall Init"
|
|
||||||
|
|
||||||
usage() # $1 = exit status
|
usage() # $1 = exit status
|
||||||
{
|
{
|
||||||
@@ -73,50 +71,39 @@ mywhich() {
|
|||||||
return 2
|
return 2
|
||||||
}
|
}
|
||||||
|
|
||||||
|
run_install()
|
||||||
|
{
|
||||||
|
if ! install $*; then
|
||||||
|
echo
|
||||||
|
echo "ERROR: Failed to install $*" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
cant_autostart()
|
cant_autostart()
|
||||||
{
|
{
|
||||||
echo
|
echo
|
||||||
echo "WARNING: Unable to configure shorewall init to start automatically at boot" >&2
|
echo "WARNING: Unable to configure shorewall init to start automatically at boot" >&2
|
||||||
}
|
}
|
||||||
|
|
||||||
install_file() # $1 = source $2 = target $3 = mode
|
|
||||||
{
|
|
||||||
if cp -f $1 $2; then
|
|
||||||
if chmod $3 $2; then
|
|
||||||
if [ -n "$OWNER" ]; then
|
|
||||||
if chown $OWNER:$GROUP $2; then
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "ERROR: Failed to install $2" >&2
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
make_directory() # $1 = directory , $2 = mode
|
|
||||||
{
|
|
||||||
mkdir -p $1
|
|
||||||
chmod 0755 $1
|
|
||||||
[ -n "$OWNERSHIP" ] && chown $OWNERSHIP $1
|
|
||||||
}
|
|
||||||
|
|
||||||
require()
|
require()
|
||||||
{
|
{
|
||||||
eval [ -n "\$$1" ] || fatal_error "Required option $1 not set"
|
eval [ -n "\$$1" ] || fatal_error "Required option $1 not set"
|
||||||
}
|
}
|
||||||
|
|
||||||
#
|
install_file() # $1 = source $2 = target $3 = mode
|
||||||
# Change to the directory containing this script
|
{
|
||||||
#
|
run_install $T $OWNERSHIP -m $3 $1 ${2}
|
||||||
|
}
|
||||||
|
|
||||||
cd "$(dirname $0)"
|
cd "$(dirname $0)"
|
||||||
|
|
||||||
|
PRODUCT=shorewall-init
|
||||||
|
|
||||||
#
|
#
|
||||||
# Parse the run line
|
# Parse the run line
|
||||||
#
|
#
|
||||||
|
T='-T'
|
||||||
|
|
||||||
finished=0
|
finished=0
|
||||||
configure=1
|
configure=1
|
||||||
@@ -164,10 +151,10 @@ if [ $# -eq 0 ]; then
|
|||||||
#
|
#
|
||||||
if [ -f ./shorewallrc ]; then
|
if [ -f ./shorewallrc ]; then
|
||||||
. ./shorewallrc || exit 1
|
. ./shorewallrc || exit 1
|
||||||
file=./shorewallrc
|
file=~/.shorewallrc
|
||||||
elif [ -f ~/.shorewallrc ]; then
|
elif [ -f ~/.shorewallrc ]; then
|
||||||
. ~/.shorewallrc || exit 1
|
. ~/.shorewallrc || exit 1
|
||||||
file=~/.shorewallrc
|
file=./.shorewallrc
|
||||||
else
|
else
|
||||||
fatal_error "No configuration file specified and ~/.shorewallrc not found"
|
fatal_error "No configuration file specified and ~/.shorewallrc not found"
|
||||||
fi
|
fi
|
||||||
@@ -243,8 +230,6 @@ if [ -z "$BUILD" ]; then
|
|||||||
BUILD=slackware
|
BUILD=slackware
|
||||||
elif [ -f /etc/arch-release ] ; then
|
elif [ -f /etc/arch-release ] ; then
|
||||||
BUILD=archlinux
|
BUILD=archlinux
|
||||||
elif [ -f ${CONFDIR}/openwrt_release ]; then
|
|
||||||
BUILD=openwrt
|
|
||||||
else
|
else
|
||||||
BUILD=linux
|
BUILD=linux
|
||||||
fi
|
fi
|
||||||
@@ -252,24 +237,22 @@ if [ -z "$BUILD" ]; then
|
|||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
[ -n "$OWNER" ] || OWNER=$(id -un)
|
||||||
|
[ -n "$GROUP" ] || GROUP=$(id -gn)
|
||||||
|
|
||||||
case $BUILD in
|
case $BUILD in
|
||||||
apple)
|
apple)
|
||||||
[ -z "$OWNER" ] && OWNER=root
|
T=
|
||||||
[ -z "$GROUP" ] && GROUP=wheel
|
;;
|
||||||
|
debian|gentoo|redhat|suse|slackware|archlinux)
|
||||||
;;
|
;;
|
||||||
cygwin*|CYGWIN*)
|
|
||||||
OWNER=$(id -un)
|
|
||||||
GROUP=$(id -gn)
|
|
||||||
;;
|
|
||||||
*)
|
*)
|
||||||
if [ $(id -u) -eq 0 ]; then
|
[ -n "$BUILD" ] && echo "ERROR: Unknown BUILD environment ($BUILD)" >&2 || echo "ERROR: Unknown BUILD environment"
|
||||||
[ -z "$OWNER" ] && OWNER=root
|
exit 1
|
||||||
[ -z "$GROUP" ] && GROUP=root
|
|
||||||
fi
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
[ -n "$OWNER" ] && OWNERSHIP="$OWNER:$GROUP"
|
OWNERSHIP="-o $OWNER -g $GROUP"
|
||||||
|
|
||||||
[ -n "$HOST" ] || HOST=$BUILD
|
[ -n "$HOST" ] || HOST=$BUILD
|
||||||
|
|
||||||
@@ -294,9 +277,6 @@ case "$HOST" in
|
|||||||
suse)
|
suse)
|
||||||
echo "Installing SuSE-specific configuration..."
|
echo "Installing SuSE-specific configuration..."
|
||||||
;;
|
;;
|
||||||
openwrt)
|
|
||||||
echo "Installing Openwrt-specific configuration..."
|
|
||||||
;;
|
|
||||||
linux)
|
linux)
|
||||||
echo "ERROR: Shorewall-init is not supported on this system" >&2
|
echo "ERROR: Shorewall-init is not supported on this system" >&2
|
||||||
exit 1
|
exit 1
|
||||||
@@ -310,12 +290,12 @@ esac
|
|||||||
[ -z "$TARGET" ] && TARGET=$HOST
|
[ -z "$TARGET" ] && TARGET=$HOST
|
||||||
|
|
||||||
if [ -n "$DESTDIR" ]; then
|
if [ -n "$DESTDIR" ]; then
|
||||||
if [ $(id -u) != 0 ] ; then
|
if [ `id -u` != 0 ] ; then
|
||||||
echo "Not setting file owner/group permissions, not running as root."
|
echo "Not setting file owner/group permissions, not running as root."
|
||||||
OWNERSHIP=""
|
OWNERSHIP=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
make_directory ${DESTDIR}${INITDIR} 0755
|
install -d $OWNERSHIP -m 755 ${DESTDIR}${INITDIR}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Installing Shorewall Init Version $VERSION"
|
echo "Installing Shorewall Init Version $VERSION"
|
||||||
@@ -331,7 +311,7 @@ fi
|
|||||||
|
|
||||||
if [ -n "$DESTDIR" ]; then
|
if [ -n "$DESTDIR" ]; then
|
||||||
mkdir -p ${DESTDIR}${CONFDIR}/logrotate.d
|
mkdir -p ${DESTDIR}${CONFDIR}/logrotate.d
|
||||||
chmod 0755 ${DESTDIR}${CONFDIR}/logrotate.d
|
chmod 755 ${DESTDIR}${CONFDIR}/logrotate.d
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -359,14 +339,14 @@ fi
|
|||||||
if [ -n "$SERVICEDIR" ]; then
|
if [ -n "$SERVICEDIR" ]; then
|
||||||
mkdir -p ${DESTDIR}${SERVICEDIR}
|
mkdir -p ${DESTDIR}${SERVICEDIR}
|
||||||
[ -z "$SERVICEFILE" ] && SERVICEFILE=$PRODUCT.service
|
[ -z "$SERVICEFILE" ] && SERVICEFILE=$PRODUCT.service
|
||||||
install_file $SERVICEFILE ${DESTDIR}${SERVICEDIR}/$PRODUCT.service 0644
|
run_install $OWNERSHIP -m 644 $SERVICEFILE ${DESTDIR}${SERVICEDIR}/$PRODUCT.service
|
||||||
[ ${SBINDIR} != /sbin ] && eval sed -i \'s\|/sbin/\|${SBINDIR}/\|\' ${DESTDIR}${SERVICEDIR}/$PRODUCT.service
|
[ ${SBINDIR} != /sbin ] && eval sed -i \'s\|/sbin/\|${SBINDIR}/\|\' ${DESTDIR}${SERVICEDIR}/$PRODUCT.service
|
||||||
echo "Service file $SERVICEFILE installed as ${DESTDIR}${SERVICEDIR}/$PRODUCT.service"
|
echo "Service file $SERVICEFILE installed as ${DESTDIR}${SERVICEDIR}/$PRODUCT.service"
|
||||||
if [ -n "$DESTDIR" -o $configure -eq 0 ]; then
|
if [ -n "$DESTDIR" -o $configure -eq 0 ]; then
|
||||||
mkdir -p ${DESTDIR}${SBINDIR}
|
mkdir -p ${DESTDIR}${SBINDIR}
|
||||||
chmod 0755 ${DESTDIR}${SBINDIR}
|
chmod 755 ${DESTDIR}${SBINDIR}
|
||||||
fi
|
fi
|
||||||
install_file shorewall-init ${DESTDIR}${SBINDIR}/shorewall-init 0700
|
run_install $OWNERSHIP -m 700 shorewall-init ${DESTDIR}${SBINDIR}/shorewall-init
|
||||||
[ "${SHAREDIR}" = /usr/share ] || eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SBINDIR}/shorewall-init
|
[ "${SHAREDIR}" = /usr/share ] || eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SBINDIR}/shorewall-init
|
||||||
echo "CLI installed as ${DESTDIR}${SBINDIR}/shorewall-init"
|
echo "CLI installed as ${DESTDIR}${SBINDIR}/shorewall-init"
|
||||||
fi
|
fi
|
||||||
@@ -375,13 +355,13 @@ fi
|
|||||||
# Create /usr/share/shorewall-init if needed
|
# Create /usr/share/shorewall-init if needed
|
||||||
#
|
#
|
||||||
mkdir -p ${DESTDIR}${SHAREDIR}/shorewall-init
|
mkdir -p ${DESTDIR}${SHAREDIR}/shorewall-init
|
||||||
chmod 0755 ${DESTDIR}${SHAREDIR}/shorewall-init
|
chmod 755 ${DESTDIR}${SHAREDIR}/shorewall-init
|
||||||
|
|
||||||
#
|
#
|
||||||
# Install logrotate file
|
# Install logrotate file
|
||||||
#
|
#
|
||||||
if [ -d ${DESTDIR}${CONFDIR}/logrotate.d ]; then
|
if [ -d ${DESTDIR}${CONFDIR}/logrotate.d ]; then
|
||||||
install_file logrotate ${DESTDIR}${CONFDIR}/logrotate.d/$PRODUCT 0644
|
run_install $OWNERSHIP -m 0644 logrotate ${DESTDIR}${CONFDIR}/logrotate.d/$PRODUCT
|
||||||
echo "Logrotate file installed as ${DESTDIR}${CONFDIR}/logrotate.d/$PRODUCT"
|
echo "Logrotate file installed as ${DESTDIR}${CONFDIR}/logrotate.d/$PRODUCT"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -389,7 +369,7 @@ fi
|
|||||||
# Create the version file
|
# Create the version file
|
||||||
#
|
#
|
||||||
echo "$VERSION" > ${DESTDIR}/${SHAREDIR}/shorewall-init/version
|
echo "$VERSION" > ${DESTDIR}/${SHAREDIR}/shorewall-init/version
|
||||||
chmod 0644 ${DESTDIR}${SHAREDIR}/shorewall-init/version
|
chmod 644 ${DESTDIR}${SHAREDIR}/shorewall-init/version
|
||||||
|
|
||||||
#
|
#
|
||||||
# Remove and create the symbolic link to the init script
|
# Remove and create the symbolic link to the init script
|
||||||
@@ -412,7 +392,7 @@ if [ $HOST = debian ]; then
|
|||||||
|
|
||||||
if [ ! -f ${DESTDIR}${CONFDIR}/default/shorewall-init ]; then
|
if [ ! -f ${DESTDIR}${CONFDIR}/default/shorewall-init ]; then
|
||||||
if [ -n "${DESTDIR}" ]; then
|
if [ -n "${DESTDIR}" ]; then
|
||||||
mkdir -p ${DESTDIR}${ETC}/default
|
mkdir ${DESTDIR}${ETC}/default
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ $configure -eq 1 ] || mkdir -p ${DESTDIR}${CONFDIR}/default
|
[ $configure -eq 1 ] || mkdir -p ${DESTDIR}${CONFDIR}/default
|
||||||
@@ -432,9 +412,6 @@ else
|
|||||||
elif [ $HOST = gentoo ]; then
|
elif [ $HOST = gentoo ]; then
|
||||||
# Gentoo does not support if-{up,down}.d
|
# Gentoo does not support if-{up,down}.d
|
||||||
/bin/true
|
/bin/true
|
||||||
elif [ $HOST = openwrt ]; then
|
|
||||||
# Not implemented on openwrt
|
|
||||||
/bin/true
|
|
||||||
else
|
else
|
||||||
mkdir -p ${DESTDIR}/${ETC}/NetworkManager/dispatcher.d
|
mkdir -p ${DESTDIR}/${ETC}/NetworkManager/dispatcher.d
|
||||||
fi
|
fi
|
||||||
@@ -442,8 +419,8 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$SYSCONFFILE" -a ! -f ${DESTDIR}${SYSCONFDIR}/${PRODUCT} ]; then
|
if [ -n "$SYSCONFFILE" -a ! -f ${DESTDIR}${SYSCONFDIR}/${PRODUCT} ]; then
|
||||||
install_file ${SYSCONFFILE} ${DESTDIR}${SYSCONFDIR}/$PRODUCT 0644
|
run_install $OWNERSHIP -m 0644 ${SYSCONFFILE} ${DESTDIR}${SYSCONFDIR}/$PRODUCT
|
||||||
echo "${SYSCONFFILE} file installed in ${DESTDIR}${SYSCONFDIR}/${PRODUCT}"
|
echo "$SYSCONFFILE installed in ${DESTDIR}${SYSCONFDIR}/${PRODUCT}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ $HOST = suse ] && IFUPDOWN=ifupdown.suse.sh || IFUPDOWN=ifupdown.fedora.sh
|
[ $HOST = suse ] && IFUPDOWN=ifupdown.suse.sh || IFUPDOWN=ifupdown.fedora.sh
|
||||||
@@ -453,15 +430,13 @@ fi
|
|||||||
# Install the ifupdown script
|
# Install the ifupdown script
|
||||||
#
|
#
|
||||||
|
|
||||||
if [ $HOST != openwrt ]; then
|
cp $IFUPDOWN ifupdown
|
||||||
cp $IFUPDOWN ifupdown
|
|
||||||
|
|
||||||
[ "${SHAREDIR}" = /usr/share ] || eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ifupdown
|
[ "${SHAREDIR}" = /usr/share ] || eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ifupdown
|
||||||
|
|
||||||
mkdir -p ${DESTDIR}${LIBEXECDIR}/shorewall-init
|
mkdir -p ${DESTDIR}${LIBEXECDIR}/shorewall-init
|
||||||
|
|
||||||
install_file ifupdown ${DESTDIR}${LIBEXECDIR}/shorewall-init/ifupdown 0544
|
install_file ifupdown ${DESTDIR}${LIBEXECDIR}/shorewall-init/ifupdown 0544
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -d ${DESTDIR}/etc/NetworkManager ]; then
|
if [ -d ${DESTDIR}/etc/NetworkManager ]; then
|
||||||
[ $configure -eq 1 ] || mkdir -p ${DESTDIR}${CONFDIR}/NetworkManager/dispatcher.d/
|
[ $configure -eq 1 ] || mkdir -p ${DESTDIR}${CONFDIR}/NetworkManager/dispatcher.d/
|
||||||
@@ -514,7 +489,7 @@ case $HOST in
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
if [ -z "$DESTDIR" ]; then
|
if [ -z "$DESTDIR" ]; then
|
||||||
if [ $configure -eq 1 -a -n "first_install" ]; then
|
if [ $configure -eq 1 -a -n "$first_install" ]; then
|
||||||
if [ $HOST = debian ]; then
|
if [ $HOST = debian ]; then
|
||||||
if [ -n "$SERVICEDIR" ]; then
|
if [ -n "$SERVICEDIR" ]; then
|
||||||
if systemctl enable ${PRODUCT}.service; then
|
if systemctl enable ${PRODUCT}.service; then
|
||||||
@@ -536,13 +511,6 @@ if [ -z "$DESTDIR" ]; then
|
|||||||
else
|
else
|
||||||
cant_autostart
|
cant_autostart
|
||||||
fi
|
fi
|
||||||
elif [ $HOST = openwrt -a -f ${CONFDIR}/rc.common ]; then
|
|
||||||
/etc/init.d/$PRODUCT enable
|
|
||||||
if /etc/init.d/$PRODUCT enabled; then
|
|
||||||
echo "$Product will start automatically at boot"
|
|
||||||
else
|
|
||||||
cant_autostart
|
|
||||||
fi
|
|
||||||
elif [ $HOST = gentoo ]; then
|
elif [ $HOST = gentoo ]; then
|
||||||
# On Gentoo, a service must be enabled manually by the user,
|
# On Gentoo, a service must be enabled manually by the user,
|
||||||
# not by the installer
|
# not by the installer
|
||||||
@@ -571,13 +539,6 @@ if [ -z "$DESTDIR" ]; then
|
|||||||
else
|
else
|
||||||
cant_autostart
|
cant_autostart
|
||||||
fi
|
fi
|
||||||
elif [ $HOST = openwrt -a -f ${CONFDIR}/rc.common ]; then
|
|
||||||
/etc/init.d/$PRODUCT enable
|
|
||||||
if /etc/init.d/shorewall-init enabled; then
|
|
||||||
echo "$Product will start automatically at boot"
|
|
||||||
else
|
|
||||||
cant_autostart
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
cant_autostart
|
cant_autostart
|
||||||
fi
|
fi
|
||||||
@@ -585,7 +546,7 @@ if [ -z "$DESTDIR" ]; then
|
|||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
if [ $configure -eq 1 -a -n "$first_install" ]; then
|
if [ $configure -eq 1 -a -n "$first_install" ]; then
|
||||||
if [ $HOST = debian -a -z "$SERVICEDIR" ]; then
|
if [ $HOST = debian ]; then
|
||||||
if [ -n "${DESTDIR}" ]; then
|
if [ -n "${DESTDIR}" ]; then
|
||||||
mkdir -p ${DESTDIR}/etc/rcS.d
|
mkdir -p ${DESTDIR}/etc/rcS.d
|
||||||
fi
|
fi
|
||||||
|
@@ -33,10 +33,8 @@ setstatedir() {
|
|||||||
|
|
||||||
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
[ -n "$statedir" ] && STATEDIR=${statedir} || STATEDIR=${VARLIB}/${PRODUCT}
|
||||||
|
|
||||||
if [ $PRODUCT = shorewall ]; then
|
if [ $PRODUCT = shorewall -o $PRODUCT = shorewall6 ]; then
|
||||||
${SBINDIR}/shorewall compile
|
${SBINDIR}/$PRODUCT ${OPTIONS} compile -c
|
||||||
elif [ $PRODUCT = shorewall6 ]; then
|
|
||||||
${SBINDIR}/shorewall -6 compile
|
|
||||||
else
|
else
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
@@ -5,8 +5,7 @@
|
|||||||
#
|
#
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Shorewall firewall (bootup security)
|
Description=Shorewall firewall (bootup security)
|
||||||
Before=network-pre.target
|
Before=network.target
|
||||||
Wants=network-pre.target
|
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=oneshot
|
Type=oneshot
|
||||||
|
20
Shorewall-init/shorewall-init.service.214
Normal file
20
Shorewall-init/shorewall-init.service.214
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
#
|
||||||
|
# The Shoreline Firewall (Shorewall) Packet Filtering Firewall
|
||||||
|
#
|
||||||
|
# Copyright 2011 Jonathan Underwood <jonathan.underwood@gmail.com>
|
||||||
|
#
|
||||||
|
[Unit]
|
||||||
|
Description=Shorewall firewall (bootup security)
|
||||||
|
Before=network-pre.target
|
||||||
|
Wants=network-pre.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
RemainAfterExit=yes
|
||||||
|
EnvironmentFile=-/etc/sysconfig/shorewall-init
|
||||||
|
StandardOutput=syslog
|
||||||
|
ExecStart=/sbin/shorewall-init start
|
||||||
|
ExecStop=/sbin/shorewall-init stop
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=basic.target
|
21
Shorewall-init/shorewall-init.service.214.debian
Normal file
21
Shorewall-init/shorewall-init.service.214.debian
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
#
|
||||||
|
# The Shoreline Firewall (Shorewall) Packet Filtering Firewall
|
||||||
|
#
|
||||||
|
# Copyright 2011 Jonathan Underwood <jonathan.underwood@gmail.com>
|
||||||
|
# Copyright 2015 Tom Eastep <teastep@shorewall.net>
|
||||||
|
#
|
||||||
|
[Unit]
|
||||||
|
Description=Shorewall firewall (bootup security)
|
||||||
|
Before=network-pre.target
|
||||||
|
Wants=network-pre.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
RemainAfterExit=yes
|
||||||
|
EnvironmentFile=-/etc/default/shorewall-init
|
||||||
|
StandardOutput=syslog
|
||||||
|
ExecStart=/sbin/shorewall-init start
|
||||||
|
ExecStop=/sbin/shorewall-init stop
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=basic.target
|
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Script to back uninstall Shoreline Firewall
|
# Script to back uninstall Shoreline Firewall
|
||||||
#
|
#
|
||||||
# (c) 2000-2016 - Tom Eastep (teastep@shorewall.net)
|
# (c) 2000-2014 - Tom Eastep (teastep@shorewall.net)
|
||||||
#
|
#
|
||||||
# Shorewall documentation is available at http://shorewall.sourceforge.net
|
# Shorewall documentation is available at http://shorewall.sourceforge.net
|
||||||
#
|
#
|
||||||
@@ -27,8 +27,6 @@
|
|||||||
# shown below. Simply run this script to remove Shorewall Firewall
|
# shown below. Simply run this script to remove Shorewall Firewall
|
||||||
|
|
||||||
VERSION=xxx #The Build script inserts the actual version
|
VERSION=xxx #The Build script inserts the actual version
|
||||||
PRODUCT=shorewall-init
|
|
||||||
Product="Shorewall Init"
|
|
||||||
|
|
||||||
usage() # $1 = exit status
|
usage() # $1 = exit status
|
||||||
{
|
{
|
||||||
@@ -77,11 +75,6 @@ remove_file() # $1 = file to restore
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
#
|
|
||||||
# Change to the directory containing this script
|
|
||||||
#
|
|
||||||
cd "$(dirname $0)"
|
|
||||||
|
|
||||||
finished=0
|
finished=0
|
||||||
configure=1
|
configure=1
|
||||||
|
|
||||||
@@ -126,6 +119,7 @@ if [ $# -eq 0 ]; then
|
|||||||
. ./shorewallrc
|
. ./shorewallrc
|
||||||
elif [ -f ~/.shorewallrc ]; then
|
elif [ -f ~/.shorewallrc ]; then
|
||||||
. ~/.shorewallrc || exit 1
|
. ~/.shorewallrc || exit 1
|
||||||
|
file=./.shorewallrc
|
||||||
elif [ -f /usr/share/shorewall/shorewallrc ]; then
|
elif [ -f /usr/share/shorewall/shorewallrc ]; then
|
||||||
. /usr/share/shorewall/shorewallrc
|
. /usr/share/shorewall/shorewallrc
|
||||||
else
|
else
|
||||||
@@ -168,11 +162,7 @@ INITSCRIPT=${CONFDIR}/init.d/shorewall-init
|
|||||||
|
|
||||||
if [ -f "$INITSCRIPT" ]; then
|
if [ -f "$INITSCRIPT" ]; then
|
||||||
if [ $configure -eq 1 ]; then
|
if [ $configure -eq 1 ]; then
|
||||||
if [ $HOST = openwrt ]; then
|
if mywhich updaterc.d ; then
|
||||||
if /etc/init.d/shorewall-init enabled; then
|
|
||||||
/etc/init.d/shorewall-init disable
|
|
||||||
fi
|
|
||||||
elif mywhich updaterc.d ; then
|
|
||||||
updaterc.d shorewall-init remove
|
updaterc.d shorewall-init remove
|
||||||
elif mywhich insserv ; then
|
elif mywhich insserv ; then
|
||||||
insserv -r $INITSCRIPT
|
insserv -r $INITSCRIPT
|
||||||
@@ -193,13 +183,8 @@ if [ -n "$SERVICEDIR" ]; then
|
|||||||
rm -f $SERVICEDIR/shorewall-init.service
|
rm -f $SERVICEDIR/shorewall-init.service
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ $HOST = openwrt ]; then
|
[ "$(readlink -m -q ${SBINDIR}/ifup-local)" = ${SHAREDIR}/shorewall-init ] && remove_file ${SBINDIR}/ifup-local
|
||||||
[ "$(readlink -q ${SBINDIR}/ifup-local)" = ${SHAREDIR}/shorewall-init ] && remove_file ${SBINDIR}/ifup-local
|
[ "$(readlink -m -q ${SBINDIR}/ifdown-local)" = ${SHAREDIR}/shorewall-init ] && remove_file ${SBINDIR}/ifdown-local
|
||||||
[ "$(readlink -q ${SBINDIR}/ifdown-local)" = ${SHAREDIR}/shorewall-init ] && remove_file ${SBINDIR}/ifdown-local
|
|
||||||
else
|
|
||||||
[ "$(readlink -m -q ${SBINDIR}/ifup-local)" = ${SHAREDIR}/shorewall-init ] && remove_file ${SBINDIR}/ifup-local
|
|
||||||
[ "$(readlink -m -q ${SBINDIR}/ifdown-local)" = ${SHAREDIR}/shorewall-init ] && remove_file ${SBINDIR}/ifdown-local
|
|
||||||
fi
|
|
||||||
|
|
||||||
remove_file ${CONFDIR}/default/shorewall-init
|
remove_file ${CONFDIR}/default/shorewall-init
|
||||||
remove_file ${CONFDIR}/sysconfig/shorewall-init
|
remove_file ${CONFDIR}/sysconfig/shorewall-init
|
||||||
@@ -213,6 +198,8 @@ remove_file ${CONFDIR}/network/if-post-down.d/shorewall
|
|||||||
remove_file ${CONFDIR}/sysconfig/network/if-up.d/shorewall
|
remove_file ${CONFDIR}/sysconfig/network/if-up.d/shorewall
|
||||||
remove_file ${CONFDIR}/sysconfig/network/if-down.d/shorewall
|
remove_file ${CONFDIR}/sysconfig/network/if-down.d/shorewall
|
||||||
|
|
||||||
|
[ -n "$SYSTEMD" ] && remove_file ${SYSTEMD}/shorewall.service
|
||||||
|
|
||||||
if [ -d ${CONFDIR}/ppp ]; then
|
if [ -d ${CONFDIR}/ppp ]; then
|
||||||
for directory in ip-up.d ip-down.d ipv6-up.d ipv6-down.d; do
|
for directory in ip-up.d ip-down.d ipv6-up.d ipv6-down.d; do
|
||||||
remove_file ${CONFDIR}/ppp/$directory/shorewall
|
remove_file ${CONFDIR}/ppp/$directory/shorewall
|
||||||
|
1
Shorewall-lite/README.txt
Normal file
1
Shorewall-lite/README.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
This is the Shorewall-lite stable 4.4 branch of Git.
|
25
Shorewall-lite/default.openwrt
Normal file
25
Shorewall-lite/default.openwrt
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# sysV init file script configuration(/etc/sysconfdir/shorewall-lite)
|
||||||
|
|
||||||
|
# startup option(default "-vvv")
|
||||||
|
OPTIONS=
|
||||||
|
|
||||||
|
# change default start run level(if none empty; /etc/init.d/shorewall-lite enable)
|
||||||
|
START=50
|
||||||
|
|
||||||
|
# change default stop run level(if none empty; /etc/init.d/shorewall-lite enable)
|
||||||
|
STOP=
|
||||||
|
|
||||||
|
# option to pass when shorewall start is executed
|
||||||
|
STARTOPTIONS=
|
||||||
|
|
||||||
|
# option to pass when shorewall restart is executed
|
||||||
|
RESTARTOPTIONS=
|
||||||
|
|
||||||
|
# option to pass when shorewall reload is executed
|
||||||
|
RELOADOPTIONS=
|
||||||
|
|
||||||
|
# option to pass when shorewall stop is executed
|
||||||
|
STOPOPTIONS=
|
||||||
|
|
||||||
|
# option to pass when shorewall status is executed
|
||||||
|
STATUSOPTIONS=
|
@@ -5,7 +5,7 @@
|
|||||||
# Required-Start: $network $remote_fs
|
# Required-Start: $network $remote_fs
|
||||||
# Required-Stop: $network $remote_fs
|
# Required-Stop: $network $remote_fs
|
||||||
# Default-Start: S
|
# Default-Start: S
|
||||||
# Default-Stop: 0 1 6
|
# Default-Stop: 0 6
|
||||||
# Short-Description: Configure the firewall at boot time
|
# Short-Description: Configure the firewall at boot time
|
||||||
# Description: Configure the firewall according to the rules specified in
|
# Description: Configure the firewall according to the rules specified in
|
||||||
# /etc/shorewall-lite
|
# /etc/shorewall-lite
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
. /lib/lsb/init-functions
|
. /lib/lsb/init-functions
|
||||||
|
|
||||||
SRWL='/sbin/shorewall -l'
|
SRWL=/sbin/shorewall-lite
|
||||||
SRWL_OPTS="-tvv"
|
SRWL_OPTS="-tvv"
|
||||||
test -n ${INITLOG:=/var/log/shorewall-lite-init.log}
|
test -n ${INITLOG:=/var/log/shorewall-lite-init.log}
|
||||||
|
|
||||||
@@ -92,11 +92,10 @@ shorewall_start () {
|
|||||||
|
|
||||||
# stop the firewall
|
# stop the firewall
|
||||||
shorewall_stop () {
|
shorewall_stop () {
|
||||||
|
echo -n "Stopping \"Shorewall firewall\": "
|
||||||
if [ "$SAFESTOP" = 1 ]; then
|
if [ "$SAFESTOP" = 1 ]; then
|
||||||
echo -n "Stopping \"Shorewall Lite firewall\": "
|
|
||||||
$SRWL $SRWL_OPTS stop >> $INITLOG 2>&1 && echo "done." || echo_notdone
|
$SRWL $SRWL_OPTS stop >> $INITLOG 2>&1 && echo "done." || echo_notdone
|
||||||
else
|
else
|
||||||
echo -n "Clearing all \"Shorewall Lite firewall\" rules: "
|
|
||||||
$SRWL $SRWL_OPTS clear >> $INITLOG 2>&1 && echo "done." || echo_notdone
|
$SRWL $SRWL_OPTS clear >> $INITLOG 2>&1 && echo "done." || echo_notdone
|
||||||
fi
|
fi
|
||||||
return 0
|
return 0
|
||||||
|
@@ -25,7 +25,7 @@
|
|||||||
#
|
#
|
||||||
. /usr/share/shorewall/shorewallrc
|
. /usr/share/shorewall/shorewallrc
|
||||||
|
|
||||||
prog="shorewall -l"
|
prog="shorewall-lite"
|
||||||
shorewall="${SBINDIR}/$prog"
|
shorewall="${SBINDIR}/$prog"
|
||||||
logger="logger -i -t $prog"
|
logger="logger -i -t $prog"
|
||||||
lockfile="/var/lock/subsys/$prog"
|
lockfile="/var/lock/subsys/$prog"
|
||||||
|
@@ -32,24 +32,25 @@
|
|||||||
# shorewall-lite start Starts the firewall
|
# shorewall-lite start Starts the firewall
|
||||||
# shorewall-lite restart Restarts the firewall
|
# shorewall-lite restart Restarts the firewall
|
||||||
# shorewall-lite reload Reload the firewall
|
# shorewall-lite reload Reload the firewall
|
||||||
|
# (same as restart)
|
||||||
# shorewall-lite stop Stops the firewall
|
# shorewall-lite stop Stops the firewall
|
||||||
# shorewall-lite status Displays firewall status
|
# shorewall-lite status Displays firewall status
|
||||||
#
|
#
|
||||||
|
|
||||||
# description: Packet filtering firewall
|
# description: Packet filtering firewall
|
||||||
|
|
||||||
# Openwrt related
|
# openwrt stuph
|
||||||
# Start and stop runlevel variable
|
# start and stop runlevel variable
|
||||||
START=50
|
#START=21
|
||||||
STOP=89
|
#STOP=91
|
||||||
# Displays the status command
|
# variable to display what the status command do when /etc/init.d/shorewall-lite is invoke without argument
|
||||||
EXTRA_COMMANDS="status"
|
EXTRA_COMMANDS="status"
|
||||||
EXTRA_HELP=" status Displays firewall status"
|
EXTRA_HELP="Displays shorewall status"
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# Get startup options (override default)
|
# Get startup options (override default)
|
||||||
################################################################################
|
################################################################################
|
||||||
OPTIONS=
|
OPTIONS="-vvv"
|
||||||
|
|
||||||
#
|
#
|
||||||
# The installer may alter this
|
# The installer may alter this
|
||||||
@@ -60,35 +61,38 @@ if [ -f ${SYSCONFDIR}/shorewall-lite ]; then
|
|||||||
. ${SYSCONFDIR}/shorewall-lite
|
. ${SYSCONFDIR}/shorewall-lite
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
START=${START:-21}
|
||||||
|
STOP=${STOP:-91}
|
||||||
|
|
||||||
SHOREWALL_INIT_SCRIPT=1
|
SHOREWALL_INIT_SCRIPT=1
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# E X E C U T I O N B E G I N S H E R E #
|
# E X E C U T I O N B E G I N S H E R E #
|
||||||
################################################################################
|
################################################################################
|
||||||
# Arg1 of init script is arg2 when rc.common is sourced; set to action variable
|
# arg1 of init script is arg2 when rc.common is sourced; set to action variable
|
||||||
command="$action"
|
command="$action"
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
exec ${SBINDIR}/shorewall -l $OPTIONS $command $STARTOPTIONS
|
exec ${SBINDIR}/shorewall-lite $OPTIONS $command ${STARTOPTIONS:-$@}
|
||||||
}
|
}
|
||||||
|
|
||||||
boot() {
|
boot() {
|
||||||
local command="start"
|
local command="start"
|
||||||
start
|
start
|
||||||
}
|
}
|
||||||
|
|
||||||
restart() {
|
restart() {
|
||||||
exec ${SBINDIR}/shorewall -l $OPTIONS $command $RESTARTOPTIONS
|
exec ${SBINDIR}/shorewall-lite $OPTIONS $command ${RESTARTOPTIONS:-$@}
|
||||||
}
|
}
|
||||||
|
|
||||||
reload() {
|
reload() {
|
||||||
exec ${SBINDIR}/shorewall -l $OPTIONS $command $RELOADOPTION
|
exec ${SBINDIR}/shorewall-lite $OPTIONS $command ${RELOADOPTION:-$@}
|
||||||
}
|
}
|
||||||
|
|
||||||
stop() {
|
stop() {
|
||||||
exec ${SBINDIR}/shorewall -l $OPTIONS $command $STOPOPTIONS
|
exec ${SBINDIR}/shorewall-lite $OPTIONS $command ${STOPOPTIONS:-$@}
|
||||||
}
|
}
|
||||||
|
|
||||||
status() {
|
status() {
|
||||||
exec ${SBINDIR}/shorewall -l $OPTIONS $command $@
|
exec ${SBINDIR}/shorewall-lite $OPTIONS $command ${STATUSOPTIONS:-$@}
|
||||||
}
|
}
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Script to install Shoreline Firewall Lite
|
# Script to install Shoreline Firewall Lite
|
||||||
#
|
#
|
||||||
# (c) 2000-2016 - Tom Eastep (teastep@shorewall.net)
|
# (c) 2000-2011,2014 - Tom Eastep (teastep@shorewall.net)
|
||||||
#
|
#
|
||||||
# Shorewall documentation is available at http://shorewall.net
|
# Shorewall documentation is available at http://shorewall.net
|
||||||
#
|
#
|
||||||
@@ -114,7 +114,7 @@ require()
|
|||||||
#
|
#
|
||||||
cd "$(dirname $0)"
|
cd "$(dirname $0)"
|
||||||
|
|
||||||
if [ -f shorewall-lite.service ]; then
|
if [ -f shorewall-lite ]; then
|
||||||
PRODUCT=shorewall-lite
|
PRODUCT=shorewall-lite
|
||||||
Product="Shorewall Lite"
|
Product="Shorewall Lite"
|
||||||
else
|
else
|
||||||
@@ -331,6 +331,7 @@ if [ -n "$DESTDIR" ]; then
|
|||||||
OWNERSHIP=""
|
OWNERSHIP=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
make_directory ${DESTDIR}${SBINDIR} 755
|
||||||
make_directory ${DESTDIR}${INITDIR} 755
|
make_directory ${DESTDIR}${INITDIR} 755
|
||||||
|
|
||||||
else
|
else
|
||||||
@@ -361,9 +362,9 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
#
|
||||||
# Check for ${SHAREDIR}/$PRODUCT/version
|
# Check for ${SBINDIR}/$PRODUCT
|
||||||
#
|
#
|
||||||
if [ -f ${DESTDIR}${SHAREDIR}/$PRODUCT/version ]; then
|
if [ -f ${DESTDIR}${SBINDIR}/$PRODUCT ]; then
|
||||||
first_install=""
|
first_install=""
|
||||||
else
|
else
|
||||||
first_install="Yes"
|
first_install="Yes"
|
||||||
@@ -371,15 +372,17 @@ fi
|
|||||||
|
|
||||||
delete_file ${DESTDIR}/usr/share/$PRODUCT/xmodules
|
delete_file ${DESTDIR}/usr/share/$PRODUCT/xmodules
|
||||||
|
|
||||||
|
install_file $PRODUCT ${DESTDIR}${SBINDIR}/$PRODUCT 0544
|
||||||
[ -n "${INITFILE}" ] && make_directory ${DESTDIR}${INITDIR} 755
|
[ -n "${INITFILE}" ] && make_directory ${DESTDIR}${INITDIR} 755
|
||||||
|
|
||||||
|
echo "$Product control program installed in ${DESTDIR}${SBINDIR}/$PRODUCT"
|
||||||
|
|
||||||
#
|
#
|
||||||
# Create ${CONFDIR}/$PRODUCT, /usr/share/$PRODUCT and /var/lib/$PRODUCT if needed
|
# Create ${CONFDIR}/$PRODUCT, /usr/share/$PRODUCT and /var/lib/$PRODUCT if needed
|
||||||
#
|
#
|
||||||
mkdir -p ${DESTDIR}${CONFDIR}/$PRODUCT
|
mkdir -p ${DESTDIR}${CONFDIR}/$PRODUCT
|
||||||
mkdir -p ${DESTDIR}${SHAREDIR}/$PRODUCT
|
mkdir -p ${DESTDIR}${SHAREDIR}/$PRODUCT
|
||||||
mkdir -p ${DESTDIR}${LIBEXECDIR}/$PRODUCT
|
mkdir -p ${DESTDIR}${LIBEXECDIR}/$PRODUCT
|
||||||
mkdir -p ${DESTDIR}${SBINDIR}
|
|
||||||
mkdir -p ${DESTDIR}${VARDIR}
|
mkdir -p ${DESTDIR}${VARDIR}
|
||||||
|
|
||||||
chmod 755 ${DESTDIR}${CONFDIR}/$PRODUCT
|
chmod 755 ${DESTDIR}${CONFDIR}/$PRODUCT
|
||||||
@@ -492,10 +495,10 @@ done
|
|||||||
# Install the Man Pages
|
# Install the Man Pages
|
||||||
#
|
#
|
||||||
|
|
||||||
if [ -d manpages -a -n "$MANDIR" ]; then
|
if [ -d manpages ]; then
|
||||||
cd manpages
|
cd manpages
|
||||||
|
|
||||||
mkdir -p ${DESTDIR}${MANDIR}/man5/
|
mkdir -p ${DESTDIR}${MANDIR}/man5/ ${DESTDIR}${MANDIR}/man8/
|
||||||
|
|
||||||
for f in *.5; do
|
for f in *.5; do
|
||||||
gzip -c $f > $f.gz
|
gzip -c $f > $f.gz
|
||||||
@@ -503,8 +506,6 @@ if [ -d manpages -a -n "$MANDIR" ]; then
|
|||||||
echo "Man page $f.gz installed to ${DESTDIR}${MANDIR}/man5/$f.gz"
|
echo "Man page $f.gz installed to ${DESTDIR}${MANDIR}/man5/$f.gz"
|
||||||
done
|
done
|
||||||
|
|
||||||
mkdir -p ${DESTDIR}${MANDIR}/man8/
|
|
||||||
|
|
||||||
for f in *.8; do
|
for f in *.8; do
|
||||||
gzip -c $f > $f.gz
|
gzip -c $f > $f.gz
|
||||||
install_file $f.gz ${DESTDIR}${MANDIR}/man8/$f.gz 644
|
install_file $f.gz ${DESTDIR}${MANDIR}/man8/$f.gz 644
|
||||||
@@ -539,11 +540,6 @@ delete_file ${DESTDIR}${SHAREDIR}/$PRODUCT/lib.common
|
|||||||
delete_file ${DESTDIR}${SHAREDIR}/$PRODUCT/lib.cli
|
delete_file ${DESTDIR}${SHAREDIR}/$PRODUCT/lib.cli
|
||||||
delete_file ${DESTDIR}${SHAREDIR}/$PRODUCT/wait4ifup
|
delete_file ${DESTDIR}${SHAREDIR}/$PRODUCT/wait4ifup
|
||||||
|
|
||||||
#
|
|
||||||
# Creatae the symbolic link for the CLI
|
|
||||||
#
|
|
||||||
ln -sf shorewall ${DESTDIR}${SBINDIR}/${PRODUCT}
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Note -- not all packages will have the SYSCONFFILE so we need to check for its existance here
|
# Note -- not all packages will have the SYSCONFFILE so we need to check for its existance here
|
||||||
#
|
#
|
||||||
@@ -554,11 +550,12 @@ if [ -n "$SYSCONFFILE" -a -f "$SYSCONFFILE" -a ! -f ${DESTDIR}${SYSCONFDIR}/${PR
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
install_file ${SYSCONFFILE} ${DESTDIR}${SYSCONFDIR}/${PRODUCT} 0640
|
install_file ${SYSCONFFILE} ${DESTDIR}${SYSCONFDIR}/${PRODUCT} 0640
|
||||||
echo "$SYSCONFFILE file installed in ${DESTDIR}${SYSCONFDIR}/${PRODUCT}"
|
echo "$SYSCONFFILE installed in ${DESTDIR}${SYSCONFDIR}/${PRODUCT}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ${SHAREDIR} != /usr/share ]; then
|
if [ ${SHAREDIR} != /usr/share ]; then
|
||||||
eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SHAREDIR}/${PRODUCT}/lib.base
|
eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SHAREDIR}/${PRODUCT}/lib.base
|
||||||
|
eval sed -i \'s\|/usr/share/\|${SHAREDIR}/\|\' ${DESTDIR}${SBINDIR}/$PRODUCT
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ $configure -eq 1 -a -z "$DESTDIR" -a -n "$first_install" -a -z "${cygwin}${mac}" ]; then
|
if [ $configure -eq 1 -a -z "$DESTDIR" -a -n "$first_install" -a -z "${cygwin}${mac}" ]; then
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -45,20 +45,19 @@
|
|||||||
# require Shorewall to be installed.
|
# require Shorewall to be installed.
|
||||||
|
|
||||||
|
|
||||||
PRODUCT=shorewall-lite
|
g_program=shorewall-lite
|
||||||
|
|
||||||
#
|
#
|
||||||
# This is modified by the installer when ${SHAREDIR} != /usr/share
|
# This is modified by the installer when ${SHAREDIR} != /usr/share
|
||||||
#
|
#
|
||||||
. /usr/share/shorewall/shorewallrc
|
. /usr/share/shorewall/shorewallrc
|
||||||
|
|
||||||
g_basedir=${SHAREDIR}/shorewall
|
g_sharedir="$SHAREDIR"/shorewall-lite
|
||||||
|
g_confdir="$CONFDIR"/shorewall-lite
|
||||||
|
g_readrc=1
|
||||||
|
|
||||||
. ${SHAREDIR}/shorewall/lib.cli
|
. ${SHAREDIR}/shorewall/lib.cli
|
||||||
|
. /usr/share/shorewall-lite/configpath
|
||||||
setup_product_environment
|
|
||||||
|
|
||||||
. ${SHAREDIR}/shorewall-lite/configpath
|
|
||||||
|
|
||||||
[ -n "$PATH" ] || PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
|
[ -n "$PATH" ] || PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
|
||||||
|
|
||||||
|
42
Shorewall-lite/shorewall-lite
Executable file
42
Shorewall-lite/shorewall-lite
Executable file
@@ -0,0 +1,42 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Shorewall Lite Packet Filtering Firewall Control Program - V4.5
|
||||||
|
#
|
||||||
|
# (c) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2014 -
|
||||||
|
# Tom Eastep (teastep@shorewall.net)
|
||||||
|
#
|
||||||
|
# Shorewall documentation is available at http://www.shorewall.net
|
||||||
|
#
|
||||||
|
# This program is part of Shorewall.
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by the
|
||||||
|
# Free Software Foundation, either version 2 of the license or, at your
|
||||||
|
# option, any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
# For a list of supported commands, type 'shorewall help' or 'shorewall6 help'
|
||||||
|
#
|
||||||
|
################################################################################################
|
||||||
|
PRODUCT=shorewall-lite
|
||||||
|
|
||||||
|
#
|
||||||
|
# This is modified by the installer when ${SHAREDIR} != /usr/share
|
||||||
|
#
|
||||||
|
. /usr/share/shorewall/shorewallrc
|
||||||
|
|
||||||
|
g_program=$PRODUCT
|
||||||
|
g_sharedir="$SHAREDIR"/shorewall-lite
|
||||||
|
g_confdir="$CONFDIR"/shorewall-lite
|
||||||
|
g_readrc=1
|
||||||
|
|
||||||
|
. ${SHAREDIR}/shorewall/lib.cli
|
||||||
|
|
||||||
|
shorewall_cli $@
|
21
Shorewall-lite/shorewall-lite.service.214
Normal file
21
Shorewall-lite/shorewall-lite.service.214
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
#
|
||||||
|
# The Shoreline Firewall (Shorewall) Packet Filtering Firewall
|
||||||
|
#
|
||||||
|
# Copyright 2011 Jonathan Underwood <jonathan.underwood@gmail.com>
|
||||||
|
#
|
||||||
|
[Unit]
|
||||||
|
Description=Shorewall IPv4 firewall (lite)
|
||||||
|
Wants=network-online.target
|
||||||
|
After=network-online.target
|
||||||
|
Conflicts=iptables.service firewalld.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
RemainAfterExit=yes
|
||||||
|
EnvironmentFile=-/etc/sysconfig/shorewall-lite
|
||||||
|
StandardOutput=syslog
|
||||||
|
ExecStart=/sbin/shorewall-lite $OPTIONS start $STARTOPTIONS
|
||||||
|
ExecStop=/sbin/shorewall-lite $OPTIONS stop
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=basic.target
|
@@ -1,26 +0,0 @@
|
|||||||
#
|
|
||||||
# Global start/restart/reload/stop options
|
|
||||||
#
|
|
||||||
OPTIONS=""
|
|
||||||
|
|
||||||
#
|
|
||||||
# Start options
|
|
||||||
#
|
|
||||||
STARTOPTIONS=""
|
|
||||||
|
|
||||||
#
|
|
||||||
# Restart options
|
|
||||||
#
|
|
||||||
RESTARTOPTIONS=""
|
|
||||||
|
|
||||||
#
|
|
||||||
# Reload options
|
|
||||||
#
|
|
||||||
RELOADOPTIONS=""
|
|
||||||
|
|
||||||
#
|
|
||||||
# Stop options
|
|
||||||
#
|
|
||||||
STOPOPTIONS=""
|
|
||||||
|
|
||||||
# EOF
|
|
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Script to back uninstall Shoreline Firewall
|
# Script to back uninstall Shoreline Firewall
|
||||||
#
|
#
|
||||||
# (c) 2000-2016 - Tom Eastep (teastep@shorewall.net)
|
# (c) 2000-2011,2014 - Tom Eastep (teastep@shorewall.net)
|
||||||
#
|
#
|
||||||
# Shorewall documentation is available at http://shorewall.sourceforge.net
|
# Shorewall documentation is available at http://shorewall.sourceforge.net
|
||||||
#
|
#
|
||||||
@@ -28,7 +28,6 @@
|
|||||||
|
|
||||||
VERSION=xxx #The Build script inserts the actual version
|
VERSION=xxx #The Build script inserts the actual version
|
||||||
PRODUCT=shorewall-lite
|
PRODUCT=shorewall-lite
|
||||||
Product="Shorewall Lite"
|
|
||||||
|
|
||||||
usage() # $1 = exit status
|
usage() # $1 = exit status
|
||||||
{
|
{
|
||||||
@@ -125,6 +124,7 @@ if [ $# -eq 0 ]; then
|
|||||||
. ./shorewallrc
|
. ./shorewallrc
|
||||||
elif [ -f ~/.shorewallrc ]; then
|
elif [ -f ~/.shorewallrc ]; then
|
||||||
. ~/.shorewallrc || exit 1
|
. ~/.shorewallrc || exit 1
|
||||||
|
file=./.shorewallrc
|
||||||
elif [ -f /usr/share/shorewall/shorewallrc ]; then
|
elif [ -f /usr/share/shorewall/shorewallrc ]; then
|
||||||
. /usr/share/shorewall/shorewallrc
|
. /usr/share/shorewall/shorewallrc
|
||||||
else
|
else
|
||||||
@@ -205,16 +205,14 @@ fi
|
|||||||
rm -f ${SBINDIR}/shorewall-lite
|
rm -f ${SBINDIR}/shorewall-lite
|
||||||
|
|
||||||
rm -rf ${CONFDIR}/shorewall-lite
|
rm -rf ${CONFDIR}/shorewall-lite
|
||||||
rm -rf ${VARDIR}
|
rm -rf ${VARDIR}/shorewall-lite
|
||||||
rm -rf ${SHAREDIR}/shorewall-lite
|
rm -rf ${SHAREDIR}/shorewall-lite
|
||||||
rm -rf ${LIBEXECDIR}/shorewall-lite
|
rm -rf ${LIBEXECDIR}/shorewall-lite
|
||||||
rm -f ${CONFDIR}/logrotate.d/shorewall-lite
|
rm -f ${CONFDIR}/logrotate.d/shorewall-lite
|
||||||
rm -f ${SYSCONFDIR}/shorewall-lite
|
rm -f ${SYSCONFDIR}/shorewall-lite
|
||||||
|
|
||||||
if [ -n "${MANDIR}" ]; then
|
rm -f ${MANDIR}/man5/shorewall-lite*
|
||||||
rm -f ${MANDIR}/man5/shorewall-lite*
|
rm -f ${MANDIR}/man8/shorewall-lite*
|
||||||
rm -f ${MANDIR}/man8/shorewall-lite*
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Shorewall Lite Uninstalled"
|
echo "Shorewall Lite Uninstalled"
|
||||||
|
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.AMQP
|
# Shorewall - AMQP Macro
|
||||||
#
|
#
|
||||||
# This macro handles AMQP traffic.
|
# /usr/share/shorewall/macro.AMQP
|
||||||
|
#
|
||||||
|
# This macro handles AMQP traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 5672
|
PARAM - - tcp 5672
|
||||||
PARAM - - udp 5672
|
PARAM - - udp 5672
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.A_AllowICMPs
|
# Shorewall - Audited AllowICMPs Macro
|
||||||
#
|
#
|
||||||
# This macro audits and accepts needed ICMP types.
|
# /usr/share/shorewall/macro.A_AllowICMPs
|
||||||
|
#
|
||||||
|
# This macro A_ACCEPTs needed ICMP types
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
|
||||||
?COMMENT Needed ICMP types
|
?COMMENT Needed ICMP types
|
||||||
|
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.A_DropDNSrep
|
# Shorewall - Audited DropDNSrep Macro
|
||||||
#
|
#
|
||||||
# This macro audits and drops DNS UDP replies.
|
# /usr/share/shorewall/macro.A_DropDNSrep
|
||||||
|
#
|
||||||
|
# This macro silently audites and drops DNS UDP replies
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
|
||||||
?COMMENT Late DNS Replies
|
?COMMENT Late DNS Replies
|
||||||
|
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.A_DropUPnP
|
# Shorewall - ADropUPnP Macro
|
||||||
#
|
#
|
||||||
# This macro audits and drops UPnP probes on UDP port 1900.
|
# /usr/share/shorewall/macro.A_DropUPnP
|
||||||
|
#
|
||||||
|
# This macro silently drops UPnP probes on UDP port 1900
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
|
||||||
?COMMENT UPnP
|
?COMMENT UPnP
|
||||||
|
|
||||||
|
@@ -1,13 +1,16 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.ActiveDir
|
# Shorewall - Samba 4 Macro
|
||||||
|
#
|
||||||
|
# /usr/share/shorewall/macro.ActiveDir
|
||||||
|
#
|
||||||
|
# This macro handles ports for Samba 4 Active Directory Service
|
||||||
|
#
|
||||||
|
# You can comment out the ports you do not want open
|
||||||
#
|
#
|
||||||
# This macro handles ports for Samba 4 Active Directory Service.
|
|
||||||
# You can copy this file to /etc/shorewall[6]/ and comment out the ports you
|
|
||||||
# do not want open.
|
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 389 #LDAP services
|
PARAM - - tcp 389 #LDAP services
|
||||||
PARAM - - udp 389
|
PARAM - - udp 389
|
||||||
PARAM - - tcp 636 #LDAP SSL
|
PARAM - - tcp 636 #LDAP SSL
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.AllowICMPs
|
# Shorewall - AllowICMPs Macro
|
||||||
#
|
#
|
||||||
# This macro ACCEPTs needed ICMP types.
|
# /usr/share/shorewall/macro.AllowICMPs
|
||||||
|
#
|
||||||
|
# This macro ACCEPTs needed ICMP types
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
|
||||||
?COMMENT Needed ICMP types
|
?COMMENT Needed ICMP types
|
||||||
|
|
||||||
|
@@ -1,12 +1,15 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Amanda
|
# Shorewall - Amanda Macro
|
||||||
#
|
#
|
||||||
# This macro handles connections required by the AMANDA backup system
|
# /usr/share/shorewall/macro.Amanda
|
||||||
# to back up remote nodes. It does not provide the ability to restore
|
#
|
||||||
# files from those nodes.
|
# This macro handles connections required by the AMANDA backup system
|
||||||
|
# to back up remote nodes. It does not provide the ability to restore
|
||||||
|
# files from those nodes.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
|
||||||
?if ( __CT_TARGET && ! $AUTOHELPERS && __AMANDA_HELPER )
|
?if ( __CT_TARGET && ! $AUTOHELPERS && __AMANDA_HELPER )
|
||||||
PARAM - - udp 10080 { helper=amanda }
|
PARAM - - udp 10080 { helper=amanda }
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Auth
|
# Shorewall - Auth Macro
|
||||||
#
|
#
|
||||||
# This macro handles Auth (identd) traffic.
|
# /usr/share/shorewall/macro.Auth
|
||||||
|
#
|
||||||
|
# This macro handles Auth (identd) traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 113
|
PARAM - - tcp 113
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.BGP
|
# Shorewall - BGP Macro
|
||||||
#
|
#
|
||||||
# This macro handles BGP4 traffic.
|
# /usr/share/shorewall/macro.BGP
|
||||||
|
#
|
||||||
|
# This macro handles BGP4 traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 179 # BGP4
|
PARAM - - tcp 179 # BGP4
|
||||||
|
@@ -1,11 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.blacklist
|
# Shorewall - blacklist Macro
|
||||||
#
|
#
|
||||||
# This macro handles blacklisting using BLACKLIST_DISPOSITION and BLACKLIST_LOGLEVEL.
|
# /usr/share/shorewall/macro.blacklist
|
||||||
|
#
|
||||||
|
# This macro handles blacklisting using BLACKLIST_DISPOSITION and BLACKLIST_LOGLEVEL
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
?if $BLACKLIST_LOGLEVEL
|
?if $BLACKLIST_LOGLEVEL
|
||||||
blacklog
|
blacklog
|
||||||
?else
|
?else
|
||||||
|
@@ -1,16 +1,19 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.BitTorrent
|
# Shorewall - BitTorrent Macro
|
||||||
#
|
#
|
||||||
# This macro handles BitTorrent traffic for BitTorrent 3.1 and earlier.
|
# /usr/share/shorewall/macro.BitTorrent
|
||||||
#
|
#
|
||||||
# If you are running BitTorrent 3.2 or later, you should use the
|
# This macro handles BitTorrent traffic for BitTorrent 3.1 and earlier.
|
||||||
# BitTorrent32 macro.
|
#
|
||||||
|
# If you are running BitTorrent 3.2 or later, you should use the
|
||||||
|
# BitTorrent32 macro.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 6881:6889
|
PARAM - - tcp 6881:6889
|
||||||
#
|
#
|
||||||
# It may also be necessary to allow UDP traffic:
|
# It may also be necessary to allow UDP traffic:
|
||||||
#
|
#
|
||||||
PARAM - - udp 6881
|
PARAM - - udp 6881
|
||||||
|
#
|
||||||
|
@@ -1,13 +1,16 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.BitTorrent32
|
# Shorewall - BitTorrent 3.2 Macro
|
||||||
#
|
#
|
||||||
# This macro handles BitTorrent traffic for BitTorrent 3.2 and later.
|
# /usr/share/shorewall/macro.BitTorrent32
|
||||||
|
#
|
||||||
|
# This macro handles BitTorrent traffic for BitTorrent 3.2 and later.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 6881:6999
|
PARAM - - tcp 6881:6999
|
||||||
#
|
#
|
||||||
# It may also be necessary to allow UDP traffic:
|
# It may also be necessary to allow UDP traffic:
|
||||||
#
|
#
|
||||||
PARAM - - udp 6881
|
PARAM - - udp 6881
|
||||||
|
#
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.CVS
|
# Shorewall - CVS Macro
|
||||||
#
|
#
|
||||||
# This macro handles connections to the CVS pserver.
|
# /usr/share/shorewall/macro.CVS
|
||||||
|
#
|
||||||
|
# This macro handles connections to the CVS pserver.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 2401
|
PARAM - - tcp 2401
|
||||||
|
@@ -1,12 +1,14 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Citrix
|
# Shorewall - Citrix/ICA Macro
|
||||||
#
|
#
|
||||||
# This macro handles Citrix/ICA traffic (ICA, ICA Browser, CGP a.k.a.
|
# /usr/share/shorewall/macro.Citrix
|
||||||
# ICA Session Reliability)
|
#
|
||||||
|
# This macro handles Citrix/ICA traffic (ICA, ICA Browser, CGP a.k.a.
|
||||||
|
# ICA Session Reliability)
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 1494 # ICA
|
PARAM - - tcp 1494 # ICA
|
||||||
PARAM - - udp 1604 # ICA Browser
|
PARAM - - udp 1604 # ICA Browser
|
||||||
PARAM - - tcp 2598 # CGP Session Reliabilty
|
PARAM - - tcp 2598 # CGP Session Reliabilty
|
||||||
|
@@ -1,11 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.DAAP
|
# Shorewall - DAAP Macro
|
||||||
#
|
#
|
||||||
# This macro handles DAAP (Digital Audio Access Protocol) traffic.
|
# /usr/share/shorewall/macro.DAAP
|
||||||
# The protocol is used by iTunes, Rythmbox and other similar daemons.
|
#
|
||||||
|
# This macro handles DAAP (Digital Audio Access Protocol) traffic.
|
||||||
|
# The protocol is used by iTunes, Rythmbox and other similar daemons.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 3689
|
PARAM - - tcp 3689
|
||||||
PARAM - - udp 3689
|
PARAM - - udp 3689
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.DCC
|
# Shorewall - DCC Macro
|
||||||
#
|
#
|
||||||
# This macro handles DCC (Distributed Checksum Clearinghouse) traffic.
|
# /usr/share/shorewall/macro.DCC
|
||||||
# DCC is a distributed spam filtering mechanism.
|
#
|
||||||
|
# This macro handles DCC (Distributed Checksum Clearinghouse) traffic.
|
||||||
|
# DCC is a distributed spam filtering mechanism.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 6277
|
PARAM - - udp 6277
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.DHCPfwd
|
# Shorewall - DHCPfwd Macro
|
||||||
#
|
#
|
||||||
# This macro (bidirectional) handles forwarded DHCP traffic
|
# /usr/share/shorewall/macro.DHCPfwd
|
||||||
|
#
|
||||||
|
# This macro (bidirectional) handles forwarded DHCP traffic
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 67:68 67:68 # DHCP
|
PARAM - - udp 67:68 67:68 # DHCP
|
||||||
PARAM DEST SOURCE udp 67:68 67:68 # DHCP
|
PARAM DEST SOURCE udp 67:68 67:68 # DHCP
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.DNS
|
# Shorewall - DNS Macro
|
||||||
#
|
#
|
||||||
# This macro handles DNS traffic.
|
# /usr/share/shorewall/macro.DNS
|
||||||
|
#
|
||||||
|
# This macro handles DNS traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 53
|
PARAM - - udp 53
|
||||||
PARAM - - tcp 53
|
PARAM - - tcp 53
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Distcc
|
# Shorewall - Distcc Macro
|
||||||
#
|
#
|
||||||
# This macro handles connections to the Distributed Compiler service.
|
# /usr/share/shorewall/macro.Distcc
|
||||||
|
#
|
||||||
|
# This macro handles connections to the Distributed Compiler service.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 3632
|
PARAM - - tcp 3632
|
||||||
|
@@ -1,15 +1,18 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Drop
|
# Shorewall - Drop Macro
|
||||||
#
|
#
|
||||||
# This macro generates the same rules as the Drop default action
|
# /usr/share/shorewall/macro.Drop
|
||||||
# It is used in place of action.Drop when USE_ACTIONS=No.
|
|
||||||
#
|
#
|
||||||
# Example:
|
# This macro generates the same rules as the Drop default action
|
||||||
|
# It is used in place of action.Drop when USE_ACTIONS=No.
|
||||||
#
|
#
|
||||||
# Drop net all
|
# Example:
|
||||||
|
#
|
||||||
|
# Drop net all
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
#
|
#
|
||||||
# Don't log 'auth' DROP
|
# Don't log 'auth' DROP
|
||||||
#
|
#
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.DropDNSrep
|
# Shorewall - DropDNSrep Macro
|
||||||
#
|
#
|
||||||
# This macro silently drops DNS UDP replies
|
# /usr/share/shorewall/macro.DropDNSrep
|
||||||
|
#
|
||||||
|
# This macro silently drops DNS UDP replies
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
|
||||||
?COMMENT Late DNS Replies
|
?COMMENT Late DNS Replies
|
||||||
|
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.DropUPnP
|
# Shorewall - DropUPnP Macro
|
||||||
#
|
#
|
||||||
# This macro silently drops UPnP probes on UDP port 1900
|
# /usr/share/shorewall/macro.DropUPnP
|
||||||
|
#
|
||||||
|
# This macro silently drops UPnP probes on UDP port 1900
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
|
||||||
?COMMENT UPnP
|
?COMMENT UPnP
|
||||||
|
|
||||||
|
@@ -1,31 +1,34 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Edonkey
|
# Shorewall - Edonkey Macro
|
||||||
#
|
#
|
||||||
# This macro handles Edonkey traffic.
|
# /usr/share/shorewall/macro.Edonkey
|
||||||
#
|
#
|
||||||
# http://www.portforward.com/english/routers/port_forwarding/2wire/1000s/eDonkey.htm
|
# This macro handles Edonkey traffic.
|
||||||
# says to use udp 5737 rather than 4665.
|
|
||||||
#
|
#
|
||||||
# http://www.amule.org/wiki/index.php/FAQ_ed2k says this:
|
|
||||||
#
|
#
|
||||||
# 4661 TCP (outgoing) Port, on which a server listens for connection
|
# http://www.portforward.com/english/routers/port_forwarding/2wire/1000s/eDonkey.htm
|
||||||
# (defined by server).
|
# says to use udp 5737 rather than 4665.
|
||||||
#
|
#
|
||||||
# 4665 UDP (outgoing) used for global server searches and global source
|
# http://www.amule.org/wiki/index.php/FAQ_ed2k says this:
|
||||||
# queries. This is always Server TCP port (in this case 4661) + 4.
|
|
||||||
#
|
#
|
||||||
# 4662 TCP (outgoing and incoming) Client to client transfers.
|
# 4661 TCP (outgoing) Port, on which a server listens for connection
|
||||||
|
# (defined by server).
|
||||||
#
|
#
|
||||||
# 4672 UDP (outgoing and incoming) Extended eMule protocol, Queue
|
# 4665 UDP (outgoing) used for global server searches and global source
|
||||||
# Rating, File Reask Ping
|
# queries. This is always Server TCP port (in this case 4661) + 4.
|
||||||
#
|
#
|
||||||
# 4711 TCP WebServer listening port.
|
# 4662 TCP (outgoing and incoming) Client to client transfers.
|
||||||
#
|
#
|
||||||
# 4712 TCP External Connection port. Used to communicate aMule with other
|
# 4672 UDP (outgoing and incoming) Extended eMule protocol, Queue
|
||||||
# applications such as aMule WebServer or aMuleCMD.
|
# Rating, File Reask Ping
|
||||||
|
#
|
||||||
|
# 4711 TCP WebServer listening port.
|
||||||
|
#
|
||||||
|
# 4712 TCP External Connection port. Used to communicate aMule with other
|
||||||
|
# applications such as aMule WebServer or aMuleCMD.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 4662
|
PARAM - - tcp 4662
|
||||||
PARAM - - udp 4665
|
PARAM - - udp 4665
|
||||||
|
@@ -1,11 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.FTP
|
# Shorewall - FTP Macro
|
||||||
#
|
#
|
||||||
# This macro handles FTP traffic.
|
# /usr/share/shorewall/macro.FTP
|
||||||
|
#
|
||||||
|
# This macro handles FTP traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
?if ( __CT_TARGET && ! $AUTOHELPERS && __FTP_HELPER )
|
?if ( __CT_TARGET && ! $AUTOHELPERS && __FTP_HELPER )
|
||||||
PARAM - - tcp 21 { helper=ftp }
|
PARAM - - tcp 21 { helper=ftp }
|
||||||
?else
|
?else
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Finger
|
# Shorewall - Finger Macro
|
||||||
#
|
#
|
||||||
# This macro handles Finger protocol.
|
# /usr/share/shorewall/macro.Finger
|
||||||
# You should not generally open your finger information to internet.
|
#
|
||||||
|
# This macro handles Finger protocol. You should not generally open
|
||||||
|
# your finger information to internet.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 79
|
PARAM - - tcp 79
|
||||||
|
@@ -1,11 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.GNUnet
|
# Shorewall - GNUnet Macro
|
||||||
#
|
#
|
||||||
# This macro handles GNUnet (secure peer-to-peer networking) traffic.
|
# /usr/share/shorewall/macro.GNUnet
|
||||||
|
#
|
||||||
|
# This macro handles GNUnet (secure peer-to-peer networking) traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 2086
|
PARAM - - tcp 2086
|
||||||
PARAM - - udp 2086
|
PARAM - - udp 2086
|
||||||
PARAM - - tcp 1080
|
PARAM - - tcp 1080
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.GRE
|
# Shorewall - GRE Macro
|
||||||
#
|
#
|
||||||
# This macro (bidirectional) handles Generic Routing Encapsulation (GRE).
|
# /usr/share/shorewall/macro.GRE
|
||||||
|
#
|
||||||
|
# This macro (bi-directional) handles Generic Routing Encapsulation
|
||||||
|
# traffic (RFC 1701)
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - 47 # GRE
|
PARAM - - 47 # GRE
|
||||||
PARAM DEST SOURCE 47 # GRE
|
PARAM DEST SOURCE 47 # GRE
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Git
|
# Shorewall - Git Macro
|
||||||
#
|
#
|
||||||
# This macro handles Git traffic.
|
# /usr/share/shorewall/macro.Git
|
||||||
|
#
|
||||||
|
# This macro handles Git traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 9418
|
PARAM - - tcp 9418
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Gnutella
|
# Shorewall - Gnutella Macro
|
||||||
#
|
#
|
||||||
# This macro handles Gnutella traffic.
|
# /usr/share/shorewall/macro.Gnutella
|
||||||
|
#
|
||||||
|
# This macro handles Gnutella traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 6346
|
PARAM - - tcp 6346
|
||||||
PARAM - - udp 6346
|
PARAM - - udp 6346
|
||||||
|
@@ -1,11 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Goto-Meeting
|
# Shorewall - Citrix/Goto Meeting macro
|
||||||
#
|
#
|
||||||
# This macro handles Citrix/Goto Meeting.
|
# /usr/share/shorewall/macro.Goto-Meeting
|
||||||
#
|
# by Eric Teeter
|
||||||
###############################################################################
|
# This macro handles Citrix/Goto Meeting
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
# Assumes that ports 80 and 443 are already open
|
||||||
|
# If needed, use the macros that open Http and Https to reduce redundancy
|
||||||
PARAM - - tcp 8200 # Goto Meeting only needed outbound
|
####################################################################################
|
||||||
HTTP
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
HTTPS
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
PARAM - - tcp 8200 # Goto Meeting only needed (TCP outbound)
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.HKP
|
# Shorewall - HKP Macro
|
||||||
#
|
#
|
||||||
# This macro handles OpenPGP HTTP keyserver protocol traffic.
|
# /usr/share/shorewall/macro.HKP
|
||||||
|
#
|
||||||
|
# This macro handles OpenPGP HTTP keyserver protocol traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 11371
|
PARAM - - tcp 11371
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.HTTP
|
# Shorewall - HTTP Macro
|
||||||
#
|
#
|
||||||
# This macro handles plaintext HTTP (WWW) traffic.
|
# /usr/share/shorewall/macro.HTTP
|
||||||
|
#
|
||||||
|
# This macro handles plaintext HTTP (WWW) traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 80
|
PARAM - - tcp 80
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.HTTPS
|
# Shorewall - HTTPS Macro
|
||||||
#
|
#
|
||||||
# This macro handles HTTPS (WWW over TLS) traffic.
|
# /usr/share/shorewall/macro.HTTPS
|
||||||
|
#
|
||||||
|
# This macro handles HTTPS (WWW over SSL) traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 443
|
PARAM - - tcp 443
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall - /usr/share/shorewall/macro.ICPV2
|
# Shorewall - ICPV2 Macro
|
||||||
#
|
#
|
||||||
# This macro handles Internet Cache Protocol V2 (Squid) traffic.
|
# /usr/share/shorewall/macro.ICPV2
|
||||||
|
#
|
||||||
|
# This macro handles Internet Cache Protocol V2 (Squid) traffic
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 3130
|
PARAM - - udp 3130
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.ICQ
|
# Shorewall - ICQ Macro
|
||||||
#
|
#
|
||||||
# This macro handles ICQ, now called AOL Instant Messenger (or AIM).
|
# /usr/share/shorewall/macro.ICQ
|
||||||
|
#
|
||||||
|
# This macro handles ICQ, now called AOL Instant Messenger (or AIM).
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 5190
|
PARAM - - tcp 5190
|
||||||
|
@@ -1,13 +1,15 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.ILO
|
# Shorewall - ILO Macro
|
||||||
#
|
#
|
||||||
# This macro handles console redirection with HP ILO 2+,
|
# /usr/share/shorewall/macro.ILO
|
||||||
# Use this macro to open access to your ILO interface from management
|
#
|
||||||
# workstations.
|
# This macro handles console redirection with HP ILO 2+,
|
||||||
|
# Use this macro to open access to your ILO interface from management
|
||||||
|
# workstations.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 3002 # Raw serial data
|
PARAM - - tcp 3002 # Raw serial data
|
||||||
PARAM - - tcp 9300 # Shared Remote Console
|
PARAM - - tcp 9300 # Shared Remote Console
|
||||||
PARAM - - tcp 17988 # Virtual Media
|
PARAM - - tcp 17988 # Virtual Media
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IMAP
|
# Shorewall - IMAP Macro
|
||||||
#
|
#
|
||||||
# This macro handles plaintext and STARTTLS IMAP traffic.
|
# /usr/share/shorewall/macro.IMAP
|
||||||
# For SSL (TLS) IMAP, see macro.IMAPS.
|
#
|
||||||
|
# This macro handles plaintext IMAP traffic. For encrypted IMAP,
|
||||||
|
# see macro.IMAPS.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 143
|
PARAM - - tcp 143
|
||||||
|
@@ -1,11 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IMAPS
|
# Shorewall - IMAPS Macro
|
||||||
#
|
#
|
||||||
# This macro handles SSL (TLS) IMAP traffic.
|
# /usr/share/shorewall/macro.IMAPS
|
||||||
# For plaintext (not recommended) and STARTLS (recommended) IMAP see
|
#
|
||||||
# macro.IMAP.
|
# This macro handles encrypted IMAP traffic. For plaintext IMAP
|
||||||
|
# (not recommended), see macro.IMAP.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 993
|
PARAM - - tcp 993
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IPIP
|
# Shorewall - IPIP Macro
|
||||||
#
|
#
|
||||||
# This macro (bidirectional) handles IPIP capsulation traffic
|
# /usr/share/shorewall/macro.IPIP
|
||||||
|
#
|
||||||
|
# This macro (bidirectional) handles IPIP capsulation traffic
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - 94 # IPIP
|
PARAM - - 94 # IPIP
|
||||||
PARAM DEST SOURCE 94 # IPIP
|
PARAM DEST SOURCE 94 # IPIP
|
||||||
|
@@ -1,15 +1,16 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IPMI
|
# Shorewall - IPMI Macro
|
||||||
#
|
#
|
||||||
# This macro handles IPMI console redirection with RMCP protocol.
|
# /usr/share/shorewall/macro.IPMI
|
||||||
# Tested to work with with Asus (AMI),
|
#
|
||||||
# Dell DRAC5+ (Avocent), and Supermicro (Aten or AMI).
|
# This macro handles IPMI console redirection with Asus (AMI),
|
||||||
# Use this macro to open access to your IPMI interface from management
|
# Dell DRAC5+ (Avocent), and Supermicro (Aten or AMI).
|
||||||
# workstations.
|
# Use this macro to open access to your IPMI interface from management
|
||||||
|
# workstations.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 623 # RMCP
|
PARAM - - tcp 623 # RMCP
|
||||||
PARAM - - tcp 3668,3669 # Virtual Media, Secure (Dell)
|
PARAM - - tcp 3668,3669 # Virtual Media, Secure (Dell)
|
||||||
PARAM - - tcp 5120,5123 # CD, floppy (Asus, Aten)
|
PARAM - - tcp 5120,5123 # CD, floppy (Asus, Aten)
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IPP
|
# Shorewall - IPP Macro
|
||||||
#
|
#
|
||||||
# This macro handles Internet Printing Protocol (IPP).
|
# /usr/share/shorewall/macro.IPP
|
||||||
|
#
|
||||||
|
# This macro handles Internet Printing Protocol (IPP).
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 631
|
PARAM - - tcp 631
|
||||||
|
@@ -1,11 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IPPbrd
|
# Shorewall - IPP Broadcast Macro
|
||||||
#
|
#
|
||||||
# This macro handles Internet Printing Protocol (IPP) broadcasts.
|
# /usr/share/shorewall/macro.IPPbrd
|
||||||
# If you also need to handle TCP 631 connections in the opposite
|
#
|
||||||
# direction, use the IPPserver Macro
|
# This macro handles Internet Printing Protocol (IPP) broadcasts.
|
||||||
|
# If you also need to handle TCP 631 connections in the opposite
|
||||||
|
# direction, use the IPPserver Macro
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 631
|
PARAM - - udp 631
|
||||||
|
@@ -1,28 +1,29 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IPPserver
|
# Shorewall - IPPserver Macro
|
||||||
#
|
#
|
||||||
# This macro handles Internet Printing Protocol (IPP), indicating
|
# /usr/share/shorewall/macro.IPPserver
|
||||||
# that DEST is a printing server for SOURCE. The macro allows
|
|
||||||
# print queue broadcasts from the server to the client, and
|
|
||||||
# printing connections from the client to the server.
|
|
||||||
#
|
#
|
||||||
# Example usage on a single-interface firewall which is a print client:
|
# This macro handles Internet Printing Protocol (IPP), indicating
|
||||||
|
# that DEST is a printing server for SOURCE. The macro allows
|
||||||
|
# print queue broadcasts from the server to the client, and
|
||||||
|
# printing connections from the client to the server.
|
||||||
#
|
#
|
||||||
# IPPserver(ACCEPT) $FW net
|
# Example usage on a single-interface firewall which is a print
|
||||||
|
# client:
|
||||||
|
# IPPserver/ACCEPT $FW net
|
||||||
#
|
#
|
||||||
# Example for a two-interface firewall which acts as a print server for loc:
|
# Example for a two-interface firewall which acts as a print
|
||||||
|
# server for loc:
|
||||||
|
# IPPserver/ACCEPT loc $FW
|
||||||
#
|
#
|
||||||
# IPPserver(ACCEPT) loc $FW
|
# NOTE: If you want both to serve requests for local printers and
|
||||||
#
|
# listen to requests for remote printers (i.e. your CUPS server is
|
||||||
# NOTE: If you want both to serve requests for local printers and listen to
|
# also a client), you need to apply the rule twice, e.g.
|
||||||
# requests for remote printers (i.e. your CUPS server is also a client),
|
# IPPserver/ACCEPT loc $FW
|
||||||
# you need to apply the rule twice, e.g.
|
# IPPserver/ACCEPT $FW loc
|
||||||
#
|
|
||||||
# IPPserver(ACCEPT) loc $FW
|
|
||||||
# IPPserver(ACCEPT) $FW loc
|
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM SOURCE DEST tcp 631
|
PARAM SOURCE DEST tcp 631
|
||||||
PARAM DEST SOURCE udp 631
|
PARAM DEST SOURCE udp 631
|
||||||
|
@@ -1,11 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IPsec
|
# Shorewall - IPsec Macro
|
||||||
#
|
#
|
||||||
# This macro (bidirectional) handles IPsec traffic
|
# /usr/share/shorewall/macro.IPsec
|
||||||
|
#
|
||||||
|
# This macro (bidirectional) handles IPsec traffic
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 500 500 # IKE
|
PARAM - - udp 500 500 # IKE
|
||||||
PARAM - - 50 # ESP
|
PARAM - - 50 # ESP
|
||||||
PARAM DEST SOURCE udp 500 500 # IKE
|
PARAM DEST SOURCE udp 500 500 # IKE
|
||||||
|
@@ -1,12 +1,14 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IPsecah
|
# Shorewall - IPsecah Macro
|
||||||
#
|
#
|
||||||
# This macro (bidirectional) handles IPsec authentication (AH) traffic.
|
# /usr/share/shorewall/macro.IPsecah
|
||||||
# This is insecure. You should use ESP with encryption for security.
|
#
|
||||||
|
# This macro (bidirectional) handles IPsec authentication (AH) traffic.
|
||||||
|
# This is insecure. You should use ESP with encryption for security.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 500 500 # IKE
|
PARAM - - udp 500 500 # IKE
|
||||||
PARAM - - 51 # AH
|
PARAM - - 51 # AH
|
||||||
PARAM DEST SOURCE udp 500 500 # IKE
|
PARAM DEST SOURCE udp 500 500 # IKE
|
||||||
|
@@ -1,11 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IPsecnat
|
# Shorewall - IPsecnat Macro
|
||||||
#
|
#
|
||||||
# This macro (bidirectional) handles IPsec traffic and Nat-Traversal
|
# /usr/share/shorewall/macro.IPsecnat
|
||||||
|
#
|
||||||
|
# This macro (bidirectional) handles IPsec traffic and Nat-Traversal
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 500 # IKE
|
PARAM - - udp 500 # IKE
|
||||||
PARAM - - udp 4500 # NAT-T
|
PARAM - - udp 4500 # NAT-T
|
||||||
PARAM - - 50 # ESP
|
PARAM - - 50 # ESP
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.IRC
|
# Shorewall IRC Macro
|
||||||
#
|
#
|
||||||
# This macro handles IRC traffic (Internet Relay Chat).
|
# /usr/share/shorewall/macro.IRC
|
||||||
|
#
|
||||||
|
# This macro handles IRC traffic (Internet Relay Chat).
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
|
|
||||||
?if ( __CT_TARGET && ! $AUTOHELPERS && __IRC_HELPER )
|
?if ( __CT_TARGET && ! $AUTOHELPERS && __IRC_HELPER )
|
||||||
PARAM - - tcp 6667 { helper=irc }
|
PARAM - - tcp 6667 { helper=irc }
|
||||||
|
@@ -1,14 +1,17 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.JAP
|
# Shorewall - JAP Macro
|
||||||
#
|
#
|
||||||
# This macro handles JAP Anon Proxy Mix server traffic.
|
# /usr/share/shorewall/macro.JAP
|
||||||
# It is NOT for people trying to browse anonymously!
|
#
|
||||||
|
# This macro handles JAP Anon Proxy traffic. This macro is for
|
||||||
|
# administrators running a Mix server. It is NOT for people trying
|
||||||
|
# to browse anonymously!
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 8080 # HTTP port
|
PARAM - - tcp 8080 # HTTP port
|
||||||
PARAM - - tcp 6544 # HTTP port
|
PARAM - - tcp 6544 # HTTP port
|
||||||
PARAM - - tcp 6543 # InfoService port
|
PARAM - - tcp 6543 # InfoService port
|
||||||
HTTPS
|
HTTPS(PARAM)
|
||||||
SSH
|
SSH(PARAM)
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Jabber
|
# Shorewall - Jabber Macro
|
||||||
#
|
#
|
||||||
# This macro handles Jabber traffic.
|
# /usr/share/shorewall/macro.Jabber
|
||||||
|
#
|
||||||
|
# This macro accepts Jabber traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 5222
|
PARAM - - tcp 5222
|
||||||
|
@@ -1,9 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.JabberPlain
|
# Shorewall - JabberPlain Macro
|
||||||
#
|
#
|
||||||
# This macro is deprecated - use of macro.Jabber instead is recommended.
|
# /usr/share/shorewall/macro.JabberPlain
|
||||||
|
#
|
||||||
|
# This macro accepts Jabber traffic (plaintext). This macro is
|
||||||
|
# deprecated - use of macro.Jabber instead is recommended.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
Jabber
|
Jabber
|
||||||
|
@@ -1,9 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.JabberSecure
|
# Shorewall - JabberSecure (SSL) Macro
|
||||||
#
|
#
|
||||||
# This macro handles deprecated Jabber (SSL) traffic. Use STARTTLS instead.
|
# /usr/share/shorewall/macro.JabberSecure
|
||||||
|
#
|
||||||
|
# This macro accepts Jabber traffic (SSL). Use of Jabber with SSL
|
||||||
|
# is deprecated, please configure Jabber with STARTTLS and use
|
||||||
|
# Jabber macro instead.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 5223
|
PARAM - - tcp 5223
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Jabberd
|
# Shorewall - Jabberd (server intercommunication)
|
||||||
#
|
#
|
||||||
# This macro handles Jabberd intercommunication traffic
|
# /usr/share/shorewall/macro.Jabberd
|
||||||
|
#
|
||||||
|
# This macro accepts Jabberd intercommunication traffic
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 5269
|
PARAM - - tcp 5269
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Jetdirect
|
# Shorewall - Jetdirect Macro
|
||||||
#
|
#
|
||||||
# This macro handles HP Jetdirect printing.
|
# /usr/share/shorewall/macro.Jetdirect
|
||||||
|
#
|
||||||
|
# This macro handles HP Jetdirect printing.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 9100
|
PARAM - - tcp 9100
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.Kerberos
|
# Shorewall - Kerberos Macro
|
||||||
#
|
#
|
||||||
# This macro handles Kerberos traffic.
|
# /usr/share/shorewall/macro.Kerberos
|
||||||
|
#
|
||||||
|
# This macro handles Kerberos traffic.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 88
|
PARAM - - tcp 88
|
||||||
PARAM - - udp 88
|
PARAM - - udp 88
|
||||||
|
@@ -1,11 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.L2TP
|
# Shorewall - L2TP Macro
|
||||||
#
|
#
|
||||||
# This macro (bidirectional) handles Layer 2 Tunneling Protocol traffic.
|
# /usr/share/shorewall/macro.L2TP
|
||||||
# (RFC 2661)
|
#
|
||||||
|
# This macro (bidirectional) handles Layer 2 Tunneling Protocol traffic
|
||||||
|
# (RFC 2661)
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - udp 1701 # L2TP
|
PARAM - - udp 1701 # L2TP
|
||||||
PARAM DEST SOURCE udp 1701 # L2TP
|
PARAM DEST SOURCE udp 1701 # L2TP
|
||||||
|
@@ -1,14 +1,16 @@
|
|||||||
#
|
#
|
||||||
# Shorewall -- /usr/share/shorewall/macro.LDAP
|
# Shorewall - LDAP Macro
|
||||||
#
|
#
|
||||||
# This macro handles plaintext LDAP traffic. For encrypted LDAP
|
# /usr/share/shorewall/macro.LDAP
|
||||||
# traffic, see macro.LDAPS. Use of LDAPS is recommended (and is
|
#
|
||||||
# required by some directory services) if you want to do user
|
# This macro handles plaintext LDAP traffic. For encrypted LDAP
|
||||||
# authentication over LDAP. Note that some LDAP implementations
|
# traffic, see macro.LDAPS. Use of LDAPS is recommended (and is
|
||||||
# support initiating TLS connections via the plaintext LDAP port.
|
# required by some directory services) if you want to do user
|
||||||
# Consult your LDAP server documentation for details.
|
# authentication over LDAP. Note that some LDAP implementations
|
||||||
|
# support initiating TLS connections via the plaintext LDAP port.
|
||||||
|
# Consult your LDAP server documentation for details.
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
#ACTION SOURCE DEST PROTO DPORT SPORT ORIGDEST RATE USER
|
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGIN RATE USER/
|
||||||
|
# PORT(S) PORT(S) DEST LIMIT GROUP
|
||||||
PARAM - - tcp 389
|
PARAM - - tcp 389
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user