diff --git a/docs/Actions.xml b/docs/Actions.xml
index 51f5a2e24..ba6f369ce 100644
--- a/docs/Actions.xml
+++ b/docs/Actions.xml
@@ -113,8 +113,8 @@ ACCEPT - - tcp 135,139,445
/etc/shorewall/actions and are defined in
action.* files in /etc/shorewall or in another directory
- listed in your CONFIG_PATH (defined in /etc/shorewall/shorewall.conf).
+ listed in your CONFIG_PATH (defined in /etc/shorewall/shorewall.conf).
@@ -164,8 +164,8 @@ ACCEPT - - tcp 135,139,445
In addition, the default specified in
/etc/shorewall/shorewall.conf may be overridden by
- specifying a different default in the POLICY column of /etc/shorewall/policy.
+ specifying a different default in the POLICY column of /etc/shorewall/policy.
Entries in the DROP and REJECT default actions Shorewall-lite. Shorewall
allows for central administration of multiple firewalls through use of
- Shorewall lite. The full Shorewall product (along with Shorewall-shell
- and/or Shorewall-perl) are installed on a central administrative
- system where compiled Shorewall scripts are generated. These scripts
- are copied to the firewall systems where they run under the control of
- Shorewall-lite.
+ Shorewall lite. The full Shorewall product (including Shorewall-common
+ with Shorewall-shell and/or Shorewall-perl) is installed on a central
+ administrative system where compiled Shorewall scripts are generated.
+ These scripts are copied to the firewall systems where they run under
+ the control of Shorewall-lite.
@@ -77,7 +77,7 @@
Shorewall-commonThe Shorewall-common package includes a large number of files which
- are installed in /sbin, /sbin, /usr/share/shorewall, /etc/shorewall,
/etc/init.d and /sbin
- The /sbin/shorewall shell program is use to
+ The /sbin/shorewall shell program is used to
interact with Shorewall. See shorewall(8).
@@ -208,7 +208,7 @@
- .iptables-restore-input - The file passed
+ .iptables-restore-input - The file passed
as input to the iptables-restore program to initialize the firewall
during the last start or
restart command (see .modulesdir - The MODULESDIR setting
(shorewall.conf(5)) at the
- last start or restart.
+ last start or restart.
@@ -358,10 +358,10 @@
Shorewall-lite
- The Shorewall-lite product includes files installed in /sbin, /usr/share/shorewall-lite, /etc/shorewall-lite,
+ The Shorewall-lite product includes files installed in /sbin, /usr/share/shorewall-lite, /etc/shorewall-lite,
/etc/init.d and /var/lib/shorewall/. These are described in
the sub-sections that follow.
@@ -463,7 +463,7 @@
- .iptables-restore-input - The file passed
+ .iptables-restore-input - The file passed
as input to the iptables-restore program to initialize the firewall
during the last start or
restart command (see All extension scripts used are copied into the program (with
the exception of those
- executed a compile-time by Shorewall-perl). The
+ executed at compile-time by Shorewall-perl). The
ramifications of this are:
@@ -152,8 +152,8 @@
Specifies the compiler to use. Overrides the
- SHOREWALL_COMPILER setting in shorewall.conf.
+ SHOREWALL_COMPILER setting in shorewall.conf.
@@ -206,15 +206,15 @@
/etc/shorewall/shorewall.conf must be readable
by all users on the administrative system. Not all packages secure
the files that way and you may have to change the file permissions
- yourself. /sbin/shorewall uses the SHOREWALL_COMPILER setting to
- determine which compiler to launch. If the compiler is
- shorewall-shell, then the SHOREWALL_SHELL setting from
- /etc/shorewall/shorewall.conf determines the
- shell to use. /sbin/shorewall also uses the VERBOSITY setting for
- determining how much output the compiler generates. All other
- settings are taken from the shorewall.conf file
- in the remote systems export directory (see
- below).
+ yourself. /sbin/shorewall uses the
+ SHOREWALL_COMPILER setting to determine which compiler to launch. If
+ the compiler is shorewall-shell, then the SHOREWALL_SHELL setting
+ from /etc/shorewall/shorewall.conf determines
+ the shell to use. /sbin/shorewall also uses the
+ VERBOSITY setting for determining how much output the compiler
+ generates. All other settings are taken from the
+ shorewall.conf file in the remote systems
+ export directory (see below).
@@ -234,12 +234,14 @@
On the administrative system you create a separate 'export
directory' for each firewall system. You copy the contents of
- /usr/share/shorewall/configfiles into each export directory.
+ /usr/share/shorewall/configfiles
+ into each export directory.If you are running Debian or one of its derivatives like Ubuntu
- then edit /etc/default/shorewall-lite and set startup=1.
+ then edit /etc/default/shorewall-lite and set
+ startup=1.
@@ -268,7 +270,7 @@
The value of CONFIG_PATH in
- /etc/shorewall/shorewall.conf is ignored
+ /etc/shorewall/shorewall.conf is ignored
when compiling for export (the -e option in given) and when
the load or reload
command is being executed (see below).
@@ -535,8 +537,8 @@ clean:
Install Shorewall Lite on the firewall system.If you are running Debian or one of its derivatives like
- Ubuntu then edit /etc/default/shorewall-lite and set
- startup=1.
+ Ubuntu then edit /etc/default/shorewall-lite and
+ set startup=1.
@@ -546,12 +548,12 @@ clean:
administrative system in the firewall system's
routestopped file.
- Also, edit the shorewall.conf file in the firewall's export
- directory and change the CONFIG_PATH setting to remove /etc/shorewall. You can replace it with
- /usr/share/shorewall/configfiles if you
- like.
+ Also, edit the shorewall.conf file in the
+ firewall's export directory and change the CONFIG_PATH setting to
+ remove /etc/shorewall. You can
+ replace it with /usr/share/shorewall/configfiles if
+ you like.Example:
@@ -605,8 +607,9 @@ clean:
url="starting_and_stopping_shorewall.htm#Load">load
command compiles a firewall script from the configuration files in
the current working directory (using shorewall compile
- -e), copies that file to the remote system via scp and
- starts Shorewall Lite on the remote system via ssh.
+ -e), copies that file to the remote system via
+ scp and starts Shorewall Lite on the remote system
+ via ssh.
@@ -621,14 +624,15 @@ clean:
url="starting_and_stopping_shorewall.htm#Reload">reload
command compiles a firewall script from the configuration files in
the current working directory (using shorewall compile
- -e), copies that file to the remote system via scp and
- restarts Shorewall Lite on the remote system via ssh.
+ -e), copies that file to the remote system via
+ scp and restarts Shorewall Lite on the remote
+ system via ssh.
If the kernel/iptables configuration on the firewall later
- changes and you need to create a new capabilities file, do the
- following:
+ changes and you need to create a new
+ capabilities file, do the following:
/usr/share/shorewall-lite/shorecap > capabilitiesscp capabilities <admin system>:<this system's config dir>
@@ -645,8 +649,9 @@ clean:
The /etc/shorewall/capabilities file and the shorecap
program
- As mentioned above, the /etc/shorewall/capabilities file specifies
- that kernel/iptables capabilities of the target system. Here is a sample
+ As mentioned above, the
+ /etc/shorewall/capabilities file specifies that
+ kernel/iptables capabilities of the target system. Here is a sample
file:
@@ -690,8 +695,8 @@ CAPVERSION=30405
To aid in creating this file, Shorewall Lite includes a
shorecap program. The program is installed in the
- /usr/share/shorewall-lite/ directory and may be run
- as follows:
+ /usr/share/shorewall-lite/ directory
+ and may be run as follows:
[ IPTABLES=<iptables binary> ] [
@@ -707,23 +712,23 @@ CAPVERSION=30405
system with Shorewall installed and used when compiling firewall programs
to run on the remote system.
- Beginning with Shorewall Lite version 3.2.2, the capabilities file
- may also be creating using
- /sbin/shorewall-lite:
+ Beginning with Shorewall Lite version 3.2.2, the
+ capabilities file may also be creating using
+ /sbin/shorewall-lite:
shorewall-lite show -f capabilities >
capabilities
- Note that unlike the shorecap program, the show
- capabilities command shows the kernel's current capabilities; it
- does not attempt to load additional kernel modules.
+ Note that unlike the shorecap program, the
+ show capabilities command shows the kernel's current
+ capabilities; it does not attempt to load additional kernel modules.Running compiled programs directlyCompiled firewall programs are complete programs that support the
- following run-line commands:
+ following command line forms:
@@ -753,9 +758,9 @@ CAPVERSION=30405
- The options have their same meaning is when they are passed to
+ The options have the same meanings as when they are passed to
/sbin/shorewall itself. The default VERBOSITY level
- is the level specified in the shorewall.conf file used when then program
- was compiled.
+ is the level specified in the shorewall.conf file used
+ when the program was compiled.
diff --git a/docs/FAQ.xml b/docs/FAQ.xml
index 876609286..6fb2e858e 100644
--- a/docs/FAQ.xml
+++ b/docs/FAQ.xml
@@ -58,7 +58,7 @@
(FAQ 37) I just installed Shorewall on Debian and the
/etc/shorewall directory is almost empty!!!
- Answer:
+ Answer:Once you have installed the .deb package and before you attempt
@@ -83,7 +83,7 @@
(FAQ 37a) I just installed Shorewall on Debian and I can't find
the sample configurations.
- Answer: With Shorewall 3.x, the
+ Answer: With Shorewall 3.x, the
samples are included in the shorewall package and are installed in
/usr/share/doc/shorewall/examples/.
@@ -97,7 +97,7 @@
(FAQ 75) I can't find the Shorewall 4.x shorewall-common RPM.
Where is it?
- Answer: If you use Simon Matter's
+ Answer: If you use Simon Matter's
Redhat/Fedora/CentOS rpms, be aware that Simon calls the
shorewall-common RPM
shorewall. So you should download and install the
@@ -113,14 +113,14 @@
(FAQ 66) I'm trying to upgrade to Shorewall 4.0; where is the
'shorewall' package?
- Answer: Please see the Answer: Please see the upgrade issues.(FAQ 66a) I'm trying to upgrade to Shorewall 4.0; do I have to
uninstall the 'shorewall' package?
- Answer: Please see the Answer: Please see the upgrade issues.
@@ -128,7 +128,7 @@
(FAQ 66b) I'm trying to upgrade to Shorewall 4.0: which of
these packages do I need to install?
- Answer: Please see the Answer: Please see the upgrade issues.
@@ -142,9 +142,9 @@
allow the installer to replace their working
/etc/shorewall/shorewall.conf with one that has
default settings. Failure to forward traffic (such as during masqueraded
- net access from a local network) usually means that /etc/shorewall/shorewall.conf contains the Debian
- default setting IP_FORWARDING=Keep; it should be
+ net access from a local network) usually means that /etc/shorewall/shorewall.conf
+ contains the Debian default setting IP_FORWARDING=Keep; it should be
IP_FORWARDING=On.
@@ -339,7 +339,7 @@ DNAT net:address loc:local-IP-address
- Answer:In
+ Answer:In
/etc/shorewall/rules:#ACTION SOURCE DEST PROTO DEST PORT
@@ -352,7 +352,7 @@ DNAT net loc:192.168.1.3:22 tcp 1022
works fine but when my local users try to connect to the server using
the Firewall's external IP address, it doesn't work.
- Answer: See Answer: See FAQ 2b.
@@ -378,13 +378,13 @@ DNAT net fw:192.168.1.1:22 tcp 4104
(FAQ 1f) Why must the server that I port forward to have it's
default gateway set to my Shorewall system's IP address?
- Answer: Let's take an example.
+ Answer: Let's take an example.
Suppose thatYour Shorewall firewall's external IP address is
- 206.124.146.176 (eth0) and internal IP address 192.168.1.1
+ 206.124.146.176 (eth0) and its internal IP address is 192.168.1.1
(eth1).
@@ -419,7 +419,7 @@ DNAT net loc:192.168.1.4 tcp 21 - 206.1
- 16.105.221.4 sends a TCP syn packet to 206.124.146.176
+ 16.105.221.4 sends a TCP SYN packet to 206.124.146.176
specifying destination port 21.
@@ -465,7 +465,7 @@ eth1:192.168.1.4 0.0.0.0/0 192.168.1.1 tcp 21
address (206.124.146.176) to port 993 on Internet host
66.249.93.111
- Answer: This requires a vile
+ Answer: This requires a vile
hack similar to the one in FAQ 2. Assuming
that your Internet zone is named net and connects
on interface eth0:
@@ -492,7 +492,7 @@ eth0:66.249.93.111 0.0.0.0/0 206.124.146.176 tcp 993(FAQ 30) I'm confused about when to use DNAT rules and when to
use ACCEPT rules.
- Answer:It would be a good idea to
+ Answer: It would be a good idea to
review the QuickStart
Guide appropriate for your setup; the guides cover this topic in
a tutorial fashion. DNAT rules should be used for connections that need
@@ -509,7 +509,7 @@ eth0:66.249.93.111 0.0.0.0/0 206.124.146.176 tcp 993
(FAQ 38) Where can I find more information about DNAT?
- Answer: Ian Allen has written a
+ Answer: Ian Allen has written a
Paper about DNAT and
Linux.
@@ -518,7 +518,7 @@ eth0:66.249.93.111 0.0.0.0/0 206.124.146.176 tcp 993(FAQ 48) How do I Set up Transparent HTTP Proxy with
Shorewall?
- Answer: See Answer: See Shorewall_Squid_Usage.html.
@@ -624,8 +624,10 @@ DNAT loc loc:192.168.1.5 tcp www - If you are running Shorewall 3.2.6 on a Debian-based
- system, the call to find_first_interface_address in
- /etc/shorewall/params must be preceded with a load of the
+ system, the call to
+ find_first_interface_address in
+ /etc/shorewall/params must be preceded with
+ a load of the
Shorewall function library:. /usr/share/shorewall/functionsETH0_IP=`find_first_interface_address eth0`
@@ -704,7 +706,7 @@ dmz eth2 192.168.2.255 routeback
www.mydomain.com. That works fine but when my local users try to
connect to www.mydomain.com, it doesn't work.
- Answer: Let's assume the
+ Answer: Let's assume the
following:
@@ -728,9 +730,9 @@ dmz eth2 192.168.2.255 routebackIf your external IP address is dynamic, then you must do the
following:
- In /etc/shorewall/params (or in your
- export-directory/init file if you are using
- Shorewall Lite on the firewall system):
+ In /etc/shorewall/params (or in your
+ <export directory>/init file if you are using
+ Shorewall Lite on the firewall system):ETH0_IP=`find_first_interface_address eth0`
@@ -751,7 +753,8 @@ DNAT loc dmz:192.168.2.4 tcp 80 - If you are running Shorewall 3.2.6 on a Debian-based system,
- the call to find_first_interface_address in /etc/shorewall/params
+ the call to find_first_interface_address in
+ /etc/shorewall/params
must be preceded with a load of the Shorewall function
library:. /usr/share/shorewall/functionsETH0_IP=`find_first_interface_address eth0`
@@ -762,7 +765,7 @@ DNAT loc dmz:192.168.2.4 tcp 80 - (FAQ 2c) I tried to apply the answer to FAQ 2 to my external
interface and the net zone and it didn't work. Why?
- Answer: Did you set Answer: Did you set IP_FORWARDING=On in
shorewall.conf?
@@ -776,13 +779,14 @@ DNAT loc dmz:192.168.2.4 tcp 80 - (FAQ 63) I just blacklisted IP address 206.124.146.176 and I can
still ping it. What did I do wrong?
- Answer: Nothing.
+ Answer: Nothing.Blacklisting an IP address blocks incoming traffic from that IP
- address. And if you set BLACKLISTNEWONLY=Yes in shorewall.conf, then
- only new connections from that address
- are disallowed; traffic from that address that is part of an established
- connection (such as ping replies) is allowed.
+ address. And if you set BLACKLISTNEWONLY=Yes in
+ shorewall.conf, then only new connections
+ from that address are disallowed;
+ traffic from that address that is part of an established connection
+ (such as ping replies) is allowed.
@@ -794,7 +798,7 @@ DNAT loc dmz:192.168.2.4 tcp 80 - Answer: There is an H.323
+ url="http://www.kfki.hu/~kadlec/sw/netfilter/newnat-suite/">H.323
connection tracking/NAT module that helps with Netmeeting. Note
however that one of the Netfilter developers recently posted the
following:
@@ -965,8 +969,9 @@ to debug/develop the newnat interface.
- The entry for the local network in the /etc/shorewall/masq
- file is wrong or missing.
+ The entry for the local network in the
+ /etc/shorewall/masq file is wrong or
+ missing.
@@ -993,7 +998,7 @@ to debug/develop the newnat interface.
(FAQ 29) FTP Doesn't Work
- Answer:See the Answer: See the Shorewall and FTP page.
@@ -1002,23 +1007,23 @@ to debug/develop the newnat interface.
sites fail. Connections to the same sites from the firewall itself work
fine. What's wrong.
- Answer: Most likely, you need to
- set CLAMPMSS=Yes in /etc/shorewall/shorewall.conf.
+ Answer: Most likely, you need to
+ set CLAMPMSS=Yes in /etc/shorewall/shorewall.conf.(FAQ 35) I have two Ethernet interfaces to my local network which
I have bridged. When Shorewall is started, I'm unable to pass traffic
through the bridge. I have defined the bridge interface (br0) as the
- local interface in /etc/shorewall/interfaces; the bridged Ethernet
- interfaces are not defined to Shorewall. How do I tell Shorewall to
- allow traffic through the bridge?
+ local interface in /etc/shorewall/interfaces; the
+ bridged Ethernet interfaces are not defined to Shorewall. How do I tell
+ Shorewall to allow traffic through the bridge?
- Answer: Add the
+ Answer: Add the
routeback option to br0 in /etc/shorewall/interfaces.
+ class="devicefile">br0 in /etc/shorewall/interfaces.For more information on this type of configuration, see the Shorewall Simple Bridge
@@ -1063,14 +1068,14 @@ to debug/develop the newnat interface.
kernel's equivalent of syslog (see man syslog) to log
messages. It always uses the LOG_KERN (kern) facility (see man
openlog) and you get to choose the log level (again, see
- man syslog) in your policies and rules. The destination for
- messages logged by syslog is controlled by
+ man syslog) in your policies and
+ rules.
+ The destination for messages logged by syslog is controlled by
/etc/syslog.conf (see man
- syslog.conf). When you have changed /etc/syslog.conf, be sure to
- restart syslogd (on a RedHat system, service syslog
- restart).
+ syslog.conf). When you have changed
+ /etc/syslog.conf, be sure to restart syslogd (on a
+ RedHat system, service syslog restart).
By default, older versions of Shorewall rate-limited log messages
through settings in
@@ -1092,11 +1097,9 @@ LOGBURST=""
http://www.shorewall.net/pub/shorewall/parsefw/
- http://www.fireparse.com
+ http://aaron.marasco.com/linux.htmlhttp://cert.uni-stuttgart.de/projects/fwlogwatchhttp://www.logwatch.org
- http://gege.org/iptables
- http://home.regit.org/ulogd-php.htmlI personally use (FAQ 6b) DROP messages on port 10619 are flooding the logs with
- their connect requests. Can i exclude these error messages for this
+ their connect requests. Can I exclude these error messages for this
port temporarily from logging in Shorewall?
- Answer:Temporarily add the
+ Answer: Temporarily add the
following rule:#ACTION SOURCE DEST PROTO DEST PORT(S)
@@ -1153,7 +1156,7 @@ DROP net fw udp 10619(FAQ 6d) Why is the MAC address in Shorewall log messages so
long? I thought MAC addresses were only 6 bytes in length.
- Answer:What is labeled as the
+ Answer: What is labeled as the
MAC address in a Netfilter (Shorewall) log message is actually the
Ethernet frame header. It contains:
@@ -1228,7 +1231,8 @@ teastep@ursa:~$ The first number determines the maximum log
If, on your system, the first number is 7 or greater, then the
default Shorewall configurations will cause messages to be written to
your console. The simplest solution is to add this to your
- /etc/sysctl.conf file:kernel.printk = 4 4 1 7
+ /etc/sysctl.conf
+ file:kernel.printk = 4 4 1 7thensysctl -p /etc/sysctl.conf
@@ -1319,10 +1323,10 @@ teastep@ursa:~$ The first number determines the maximum log
or all2all
- You have a policy that specifies
- a log level and this packet is being logged under that policy. If
- you intend to ACCEPT this traffic then you need a You have a policy that
+ specifies a log level and this packet is being logged under that
+ policy. If you intend to ACCEPT this traffic then you need a rule to that
effect.
@@ -1340,7 +1344,7 @@ teastep@ursa:~$ The first number determines the maximum log
Either you have a policy for
- zone1 to zone2 that
+ zone1 to zone2 that
specifies a log level and this packet is being logged under that
policy or this packet matches a rule that includes a
@@ -1399,7 +1403,7 @@ teastep@ursa:~$ The first number determines the maximum log
role="bold">routeback option on that interface in
/etc/shorewall/interfaces
- , you need the , you need the routeback option in the relevant entry in
/etc/shorewall/hosts
@@ -1528,9 +1532,6 @@ teastep@ursa:~$ The first number determines the maximum log
- For additional information about the log message, see http://logi.cc/linux/netfilter-log-format.php3.
-
In this case, 192.168.2.2 was in the dmz zone and
192.168.1.3 is in the loc zone. I was missing the
rule:
@@ -1564,7 +1565,7 @@ teastep@ursa:~$ The first number determines the maximum log
(ICMP) with ping, ICMP is a key piece of IP. ICMP is used
to report problems back to the sender of a packet; this is what is
happening here. Unfortunately, where NAT is involved (including SNAT,
- DNAT and Masquerade), there are a lot of broken implementations. That is
+ DNAT and Masquerade), there are many broken implementations. That is
what you are seeing with these messages. When Netfilter displays these
messages, the part before the "[" describes the ICMP packet and the part
between the "[" and "]" describes the packet for which the ICMP is a
@@ -1607,7 +1608,7 @@ teastep@ursa:~$ The first number determines the maximum log
SRC=130.252.100.59 DST=206.124.146.176 LEN=64 TOS=0x00 PREC=0x00 TTL=43 ID=42444 DF
PROTO=TCP SPT=2215 DPT=139 WINDOW=53760 RES=0x00 SYN URGP=0
- Answer: Please refer to the
+ Answer: Please refer to the
Shorewall Netfilter
Documentation. Logging of REDIRECT and DNAT rules occurs in the
nat table's PREROUTING chain where the original destination IP address
@@ -1637,7 +1638,7 @@ modprobe: Can't locate module iptable_raw
(FAQ 32) My firewall has two connections to the Internet from two
different ISPs. How do I set this up in Shorewall?
- Answer: See Answer: See this article on Shorewall and Multiple
ISPs.
@@ -1646,7 +1647,7 @@ modprobe: Can't locate module iptable_raw
(FAQ 49) When I start Shorewall, my routing table gets blown
away. Why does Shorewall do that?
- Answer: This is usually the
+ Answer: This is usually the
consequence of a one-to-one nat configuration blunder:
@@ -1679,10 +1680,10 @@ modprobe: Can't locate module iptable_raw
stop, I can't connect to anything. Why doesn't that command
work?
- Answer:The
+ Answer: The stop command is intended to place your
firewall into a safe state whereby only those hosts listed in
- /etc/shorewall/routestopped' are activated. If you
+ /etc/shorewall/routestopped are activated. If you
want to totally open up your firewall, you must use the shorewall[-lite] clear command.
@@ -1723,8 +1724,8 @@ rmmod ipchains
(FAQ 9) Why can't Shorewall detect my interfaces properly at
startup?
- I just installed Shorewall and when I issue the start command, I
- see the following:
+ I just installed Shorewall and when I issue the
+ start command, I see the following:Processing /etc/shorewall/params ...
Processing /etc/shorewall/shorewall.conf ...
@@ -1745,38 +1746,38 @@ Creating input Chains...
Why can't Shorewall detect my interfaces properly?Answer: The above output is
- perfectly normal. The Net zone is defined as all hosts that are
- connected through eth0 and the local zone is defined as all hosts
- connected through eth1. You can
- set the routefilter option on an
- internal interface if you wish to guard against
- 'Martians' (a Martian is a packet with a source
- IP address that is not routed out of the interface on which the packet
- was received). If you do that, it is a good idea to also set the
- logmartians option.
+ perfectly normal. The Net zone is defined as all hosts that are connected
+ through eth0 and the local zone
+ is defined as all hosts connected through eth1. You can set the routefilter option on an internal interface if
+ you wish to guard against 'Martians' (a Martian is
+ a packet with a source IP address that is not routed out of the interface
+ on which the packet was received). If you do that, it is a good idea to
+ also set the logmartians option.
(FAQ 22) I have some iptables commands that I want to run when
Shorewall starts. Which file do I put them in?
- Answer:You can place these
+ Answer:You can place these
commands in one of the Shorewall Extension
Scripts. Be sure that you look at the contents of the chain(s)
- that you will be modifying with your commands to be sure that the
- commands will do what they are intended. Many iptables commands
- published in HOWTOs and other instructional material use the -A command
- which adds the rules to the end of the chain. Most chains that Shorewall
- constructs end with an unconditional DROP, ACCEPT or REJECT rule and any
- rules that you add after that will be ignored. Check man
- iptables and look at the -I (--insert) command.
+ that you will be modifying with your commands so that the commands will
+ do what is intended. Many iptables commands published in HOWTOs and other
+ instructional material use the -A command which adds the rules to the end
+ of the chain. Most chains that Shorewall constructs end with an
+ unconditional DROP, ACCEPT or REJECT rule and any rules that you add
+ after that will be ignored. Check man iptables and look at
+ the -I (--insert) command.(FAQ 34) How can I speed up Shorewall start (restart)?
- Answer: Switch to using Answer: Switch to using Shorewall-perl.
@@ -1784,7 +1785,7 @@ Creating input Chains...
(FAQ 69) When I restart Shorewall, new connections are blocked
for a long time. Is there a way to avoid that?
- Answer: Switch to using Answer: Switch to using Shorewall-perl.
@@ -1792,11 +1793,11 @@ Creating input Chains...
(FAQ 43) I just installed the Shorewall RPM and Shorewall doesn't
start at boot time.
- Answer: When you install using
+ Answer: When you install using
the "rpm -U" command, Shorewall doesn't run your distribution's tool for
configuring Shorewall startup. You will need to run that tool (insserv,
chkconfig, run-level editor, …) to configure Shorewall to start in the
- run-levels that you run your firewall system at.
+ the default run-levels of your firewall system.
@@ -1816,7 +1817,7 @@ Masqueraded Networks and Hosts:
iptables: Invalid argument
ERROR: Command "/sbin/iptables -t nat -A …" Failed
- Answer: 99.999% of the time, this
+ Answer: 99.999% of the time, this
error is caused by a mismatch between your iptables and kernel.
@@ -1839,7 +1840,7 @@ iptables: Invalid argument
(FAQ 59) After I start Shorewall, there are lots of unused
Netfilter modules loaded. How do I avoid that?
- Answer: Copy
+ Answer: Copy
/usr/share/shorewall[-lite]/modules to
/etc/shorewall/modules and modify the copy to
include only the modules that you need.
@@ -1893,7 +1894,7 @@ iptables: Invalid argument
ERROR: Command "/sbin/iptables -A FORWARD -m state --state
ESTABLISHED,RELATED -j ACCEPT" failed.
- Answer: At a root shell prompt,
+ Answer: At a root shell prompt,
type the iptables command shown in the error message. If the command
fails, you OpenVZ Netfilter/iptables configuration is incorrect. Until
that command can run without error, no stateful iptables firewall will
@@ -1939,11 +1940,11 @@ iptables: Invalid argument
- (FAQ 74) When I "shorewall start" or "shorewall check" on my SuSE
- 10.0 system, I get FATAL ERROR messages and/or the system
- crashes"
+ (FAQ 74) When I "shorewall start" or
+ "shorewall check" on my SuSE 10.0 system, I get FATAL
+ ERROR messages and/or the system crashes"
- Answer: These failures result
+ Answer: These failures result
from trying to load a particular combination of kernel modules. To work
around the problem:
@@ -1984,7 +1985,7 @@ iptables: Invalid argument
(FAQ 58) But if I specify 'balance' then won't Shorewall balance
the traffic between the interfaces? I don't want that!
- Answer: Suppose that you want all
+ Answer: Suppose that you want all
traffic to go out through ISP1 (mark 1) unless you specify otherwise.
Then simply add these two rules as the first marking rules in your
/etc/shorewall/tcrules file:
@@ -2012,7 +2013,7 @@ We have an error talking to the kernel
ERROR: Command "tc filter add dev eth2 parent ffff: protocol ip prio
50 u32 match ip src 0.0.0.0/0 police rate 500kbit burst 10k drop flowid
:1" FailedAnswer: This message indicates that your kernel
+ role="bold">Answer: This message indicates that your kernel
doesn't have 'traffic policing' support. If your kernel is modularized,
you may be able to resolve the problem by loading the act_police kernel module. Other kernel modules
@@ -2034,7 +2035,7 @@ We have an error talking to the kernel
(FAQ 10) What Distributions does Shorewall work with?
- Answer: Shorewall works with any
+ Answer: Shorewall works with any
GNU/Linux distribution that includes the proper prerequisites.
@@ -2068,7 +2069,7 @@ We have an error talking to the kernel
(FAQ 23) Why do you use such ugly fonts on your web site?
- Answer: The Shorewall web site is
+ Answer: The Shorewall web site is
almost font neutral (it doesn't explicitly specify fonts except on a few
pages) so the fonts you see are largely the default fonts configured in
your browser. If you don't like them then reconfigure your
@@ -2079,7 +2080,7 @@ We have an error talking to the kernel
(FAQ 25) How do I tell which version of Shorewall or Shorewall
Lite I am running?
- Answer: At the shell prompt,
+ Answer: At the shell prompt,
type:/sbin/shorewall[-lite] version
@@ -2088,7 +2089,7 @@ We have an error talking to the kernel
(FAQ 25a) How do I tell which version of Shorewall-perl and
Shorewall-shell that I have installed?
- Answer: At the shell prompt,
+ Answer: At the shell prompt,
type:/sbin/shorewall version -a
@@ -2104,7 +2105,7 @@ We have an error talking to the kernel
internal LAP IP address as the source address?
- Answer: Yes.
+ Answer: Yes.
@@ -2113,7 +2114,7 @@ We have an error talking to the kernel
fragments?
- Answer: This is the
+ Answer: This is the
responsibility of the IP stack, not the Netfilter-based firewall
since fragment reassembly occurs before the stateful packet filter
ever touches each packet.
@@ -2125,7 +2126,7 @@ We have an error talking to the kernel
broadcast address as the source address?
- Answer: Shorewall can be
+ Answer: Shorewall can be
configured to do that using the blacklisting facility.
Shorewall versions 2.0.0 and later filter these packets under the
@@ -2139,7 +2140,7 @@ We have an error talking to the kernel
source and destination address?
- Answer: Yes, if the Answer: Yes, if the routefilter interface
option is selected.
@@ -2149,7 +2150,7 @@ We have an error talking to the kernel
DOS: - SYN Dos - ICMP Dos - Per-host Dos protection
- Answer: Shorewall has
+ Answer: Shorewall has
facilities for limiting SYN and ICMP packets. Netfilter as
included in standard Linux kernels doesn't support per-remote-host
limiting except by explicit rule that specifies the host IP
@@ -2162,7 +2163,7 @@ We have an error talking to the kernel
(FAQ 65) How do I accomplish failover with Shorewall?
- Answer: Answer:This article
by Paul Gear should help you get started.
@@ -2182,8 +2183,8 @@ We have an error talking to the kernel
modem in/out but still block all other rfc1918 addresses?Answer: Add the following to
- /etc/shorewall/rfc1918
+ /etc/shorewall/rfc1918
(Note: If you are running Shorewall 2.0.0 or later, you may need to
first copy /usr/share/shorewall/rfc1918 to
/etc/shorewall/rfc1918):
@@ -2197,9 +2198,10 @@ We have an error talking to the kernel
If you add a second IP address to your external firewall
interface to correspond to the modem address, you must also make an
- entry in /etc/shorewall/rfc1918 for that address. For example, if you
- configure the address 192.168.100.2 on your firewall, then you would
- add two entries to /etc/shorewall/rfc1918:
+ entry in /etc/shorewall/rfc1918 for that address.
+ For example, if you configure the address 192.168.100.2 on your
+ firewall, then you would add two entries to
+ /etc/shorewall/rfc1918:#SUBNET TARGET
192.168.100.1 RETURN
@@ -2211,7 +2213,7 @@ We have an error talking to the kernel
DHCP server has an RFC 1918 address. If I enable RFC 1918 filtering on
my external interface, my DHCP client cannot renew its lease.
- Answer: The solution is the
+ Answer: The solution is the
same as above. Simply substitute the IP
address of your ISPs DHCP server.
@@ -2226,7 +2228,7 @@ We have an error talking to the kernel
Mar 1 18:20:07 Mail kernel: Shorewall:OUTPUT:REJECT:IN= OUT=eth0 SRC=192.168.1.2 DST=192.168.1.1 LEN=60
TOS=0x00 PREC=0x00 TTL=64 ID=26774 DF PROTO=TCP SPT=32797 DPT=80 WINDOW=5840 RES=0x00 SYN URGP=0
- Answer: The fact that the
+ Answer: The fact that the
message is being logged from the OUTPUT chain means that the
destination IP address is not in any defined zone (see FAQ 17). You need to:
@@ -2299,7 +2301,7 @@ eth0 eth1 # eth1 = interface to local netwo
(FAQ 53) What is Shorewall Lite?
- Answer: Shorewall Lite is a
+ Answer: Shorewall Lite is a
companion product to Shorewall and is designed to allow you to maintain
all Shorewall configuration information on a single system within your
network. See the Compiled
@@ -2310,7 +2312,7 @@ eth0 eth1 # eth1 = interface to local netwo
(FAQ 54) If I want to use Shorewall Lite, do I also need to
install Shorewall on the same system?
- Answer: No. In fact, we recommend
+ Answer: No. In fact, we recommend
that you do NOT install Shorewall on
systems where you wish to use Shorewall Lite. You must have Shorewall
installed on at least one system within your network in order to use
@@ -2321,7 +2323,7 @@ eth0 eth1 # eth1 = interface to local netwo
(FAQ 55) How do I decide which product to use - Shorewall or
Shorewall Lite?
- Answer: If you plan to have only
+ Answer: If you plan to have only
a single firewall system, then Shorewall is the logical choice. I also
think that Shorewall is the appropriate choice for laptop systems that
may need to have their firewall configuration changed while on the road.
@@ -2336,7 +2338,7 @@ eth0 eth1 # eth1 = interface to local netwo
(FAQ 60) What are the compatibility restrictions between
Shorewall and Shorewall Lite
- Answer: Beginning with version
+ Answer: Beginning with version
3.2.3, there are no compatibility constraints between Shorewall and
Shorewall-lite.
@@ -2348,7 +2350,7 @@ eth0 eth1 # eth1 = interface to local netwo
(FAQ 70) What is Shorewall-Perl?
- Answer: Shorewall-perl is a
+ Answer: Shorewall-perl is a
re-implementation of the Shorewall configuration compiler written in
Perl.
@@ -2356,7 +2358,7 @@ eth0 eth1 # eth1 = interface to local netwo
(FAQ 71) What are the advantages of using Shorewall-perl?
- Answer:
+ Answer:
@@ -2395,7 +2397,7 @@ eth0 eth1 # eth1 = interface to local netwo
(FAQ 72) Can I switch to using Shorewall-perl without changing my
Shorewall configuration?
- Answer: Maybe yes, maybe no. See
+ Answer: Maybe yes, maybe no. See
the Shorewall Perl article for
a list of the incompatibilities between Shorewall-shell and
Shorewall-perl.
@@ -2434,17 +2436,17 @@ rmmod nf_conntrack_sipThen change the DONT_LOAD specification
(FAQ 20) I have just set up a server. Do I have to change
Shorewall to allow access to my server from the Internet?
- Answer: Yes. Consult the Answer: Yes. Consult the QuickStart guide that you
used during your initial setup for information about how to set up rules
for your server.
- (FAQ 24) How can I allow connections to let's say the ssh port
+ (FAQ 24) How can I allow connections to, let's say, the ssh port
only from specific IP Addresses on the Internet?
- Answer: In the SOURCE column of
+ Answer: In the SOURCE column of
the rule, follow net by a colon and a list of the
host/subnet addresses as a comma-separated list.
@@ -2462,7 +2464,7 @@ rmmod nf_conntrack_sipThen change the DONT_LOAD specification
behind the firewall, I get operation not permitted. How
can I use nmap with Shorewall?"
- Answer: Temporarily remove and
+ Answer: Temporarily remove and
rejNotSyn, dropNotSyn and dropInvalid rules from
/etc/shorewall/rules and restart Shorewall.
@@ -2471,7 +2473,7 @@ rmmod nf_conntrack_sipThen change the DONT_LOAD specification
(FAQ 27) I'm compiling a new kernel for my firewall. What should
I look out for?
- Answer: First take a look at the
+ Answer: First take a look at the
Shorewall kernel configuration page. You
probably also want to be sure that you have selected the NAT of local connections (READ HELP)
@@ -2510,7 +2512,7 @@ iptables: Invalid argument
(FAQ 28) How do I use Shorewall as a Bridging Firewall?
- Answer: Shorewall Bridging
+ Answer: Shorewall Bridging
Firewall support is available — check here for details.
@@ -2576,7 +2578,7 @@ REJECT fw net:216.239.39.99 allGiven that
(FAQ 42) How can I tell which features my kernel and iptables
support?
- Answer: Use the
+ Answer: Use the
shorewall[-lite] show capabilities command at a root
prompt.