bookends.m4: Open up tables we clobbered at exit.
[firewall] / jem.m4
CommitLineData
775bd287 1### -*-sh-*-
bfdc045d 2###
a3972fea 3### Firewall configuration for jem
bfdc045d
MW
4###
5### (c) 2008 Mark Wooding
6###
7
8###----- Licensing notice ---------------------------------------------------
9###
10### This program is free software; you can redistribute it and/or modify
11### it under the terms of the GNU General Public License as published by
12### the Free Software Foundation; either version 2 of the License, or
13### (at your option) any later version.
14###
15### This program is distributed in the hope that it will be useful,
16### but WITHOUT ANY WARRANTY; without even the implied warranty of
17### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18### GNU General Public License for more details.
19###
20### You should have received a copy of the GNU General Public License
21### along with this program; if not, write to the Free Software Foundation,
22### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
23
24###--------------------------------------------------------------------------
a3972fea
MW
25### Config settings.
26
27## This host isn't a router.
28setconf(forward, 0)
29
08926d25
MW
30## This host is involved in a routing asymmetry.
31setconf(rp_filter, 0)
32setconf(log_martians, 0)
33
a3972fea 34###--------------------------------------------------------------------------
bfdc045d
MW
35### Network interfaces.
36
37m4_divert(44)m4_dnl
38## Interface definitions.
08926d25
MW
39if_dmz=eth0
40if_trusted=eth1
41if_safe=$if_dmz,$if_trusted
42if_untrusted=$if_dmz,$if_trusted
43if_vpn=$if_dmz,$if_trusted
44if_iodine=$if_dmz,$if_trusted
45if_its_mz=$if_dmz,$if_trusted
46if_its_pi=$if_dmz,$if_trusted
bfdc045d
MW
47
48m4_divert(-1)
49###--------------------------------------------------------------------------
a3972fea 50### jem-specific rules.
bfdc045d
MW
51
52m4_divert(82)m4_dnl
302fff40
MW
53## Set up the SAUCE sinbin. Unfortunately, ipset is a bit brittle. This
54## isn't a completely critical part of the firewall security, so don't make
55## this fail the entire script.
56errorchain sauce REJECT
57makeset sauce iphash || :
58iptables -A inbound -g sauce -m set --match-set sauce src || :
59
bfdc045d
MW
60## Externally visible services.
61allowservices inbound tcp \
bfdc045d 62 ssh \
6f74cc82 63 ident \
77e84a02 64 smtp submission \
bfdc045d 65 http https \
a3972fea 66 imaps
bfdc045d
MW
67
68## Provide DNS resolution to local untrusted hosts.
69for p in tcp udp; do
70 run iptables -A inbound -j ACCEPT \
71 -s 172.29.198.0/24 \
72 -p $p --destination-port $port_dns
73done
74
bfdc045d
MW
75m4_divert(-1)
76###----- That's all, folks --------------------------------------------------