Configurazione Shorewall per il Dom0 di Comodino.

Prima di tutto si definiscono nel file /etc/shorewall/zones le zone controllate dal nostro firewall. FW è il firewall stesso, NET è internet, loc è la rete locale (backup) e dmz è la rete delle macchine virtuali.

###############################################################################
#ZONE   TYPE            OPTIONS         IN                      OUT
#                                       OPTIONS                 OPTIONS
fw      firewall
net     ipv4
loc     ipv4
dmz     ipv4

Sii definiscono le variabili associate alle schede di rete nel file /etc/shorewall/params.

###############################################################################
LOG=info
EXT_IF=eth0
DMZ_IF=eth3
DMZ2_IF=eth2
LOC_IF=eth4

Si associano le zone alle interfaccie nel file /etc/shorewall/interfaces.

###############################################################################
#ZONE   INTERFACE       BROADCAST       OPTIONS
net     ${EXT_IF}       detect          logmartians=1,blacklist
dmz     ${DMZ_IF}       detect          logmartians=1
dmz     ${DMZ2_IF}      detect          logmartians=1
loc     ${INT_IF}       detect          logmartians=1

Si settano le policy di default in /etc/shorewall/policy. Rispettivamente, una per riga, sono:

###############################################################################
#SOURCE         DEST            POLICY          LOG             LIMIT:BURST
#                                               LEVEL
$FW             $FW             ACCEPT
$FW             net             ACCEPT
loc             net             ACCEPT
$FW             loc             ACCEPT
loc             $FW             ACCEPT
net             $FW             DROP            $LOG            1/sec:2
net             loc             DROP            $LOG            2/sec:4
net             dmz             DROP            $LOG            8/sec:30
all             all             REJECT          $LOG

Nel file /etc/shorewall/rules si inseriscono le regole che definiscono il firewall. Si possono usare le macro in /usr/share/shorewall/macro.*

#############################################################################################################
#ACTION SOURCE          DEST            PROTO   DEST    SOURCE          ORIGINAL        RATE            USER/
#                                               PORT(S) PORT(S)         DEST            LIMIT           GROUP
#SECTION ESTABLISHED
#SECTION RELATED
SECTION NEW
SSH/ACCEPT      net     $FW
HTTP/ACCEPT     net     $FW
HTTPS/ACCEPT    net     $FW
DNAT            net     dmz:10.0.0.1    tcp     http,https

Si attiva il NAT per le interfacce dei DOMU (eth2 e eth3) in /etc/shorewall/masq.

###############################################################################
#INTERFACE              SUBNET          ADDRESS         PROTO   PORT(S) IPSEC
eth0    eth2
eth0    eth3

Infine questi i parametri significativi di /etc/shorewall/shorewall.conf.

STARTUP_ENABLED=Yes
VERBOSITY=1
LOGFILE=/var/log/messages
LOGFORMAT="Shorewall:%s:%s:"
LOGTAGONLY=No
LOGRATE=
LOGBURST=
LOGALLNEW=
BLACKLIST_LOGLEVEL=
MACLIST_LOG_LEVEL=info
TCP_FLAGS_LOG_LEVEL=info
RFC1918_LOG_LEVEL=info
SMURF_LOG_LEVEL=info
LOG_MARTIANS=No
IPTABLES=
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
SHOREWALL_SHELL=/bin/sh
SUBSYSLOCK=""
MODULESDIR=
CONFIG_PATH=/etc/shorewall:/usr/share/shorewall
RESTOREFILE=
IPSECFILE=zones
IP_FORWARDING=Keep
ADD_IP_ALIASES=No
ADD_SNAT_ALIASES=No
RETAIN_ALIASES=No
TC_ENABLED=Internal
TC_EXPERT=No
CLEAR_TC=Yes
MARK_IN_FORWARD_CHAIN=YES
CLAMPMSS=No
ROUTE_FILTER=Yes
DETECT_DNAT_IPADDRS=No
MUTEX_TIMEOUT=60
ADMINISABSENTMINDED=Yes
BLACKLISTNEWONLY=Yes
DELAYBLACKLISTLOAD=No
MODULE_SUFFIX=
DISABLE_IPV6=Yes
BRIDGING=No
DYNAMIC_ZONES=No
PKTTYPE=Yes
RFC1918_STRICT=No
MACLIST_TABLE=filter
MACLIST_TTL=
SAVE_IPSETS=No
MAPOLDACTIONS=No
FASTACCEPT=No
IMPLICIT_CONTINUE=Yes
HIGH_ROUTE_MARKS=No
BLACKLIST_DISPOSITION=DROP
MACLIST_DISPOSITION=REJECT
TCP_FLAGS_DISPOSITION=DROP

Il firewall è configurato come esposto ma non parte se non si abilita startup=1 in /etc/default/shorewall.

ComoDino: ShoreWall (last edited 2008-07-08 00:21:57 by 213)