Shorewall6 installatie

In deze how-to maak ik een voorbeeld voor een installatie van shorewall op een systeem. Shorewall is een veelzijdige oplossing voor het maken van firewall (iptables) regels.

BRON:

De installatie bestanden voor Shorewall6 zijn hier te vinden. Ik gebruik in dit voorbeeld de oude versie omdat deze ook alle voorbeeld bestanden aanmaakt in /etc/shorewall en /etc/shorewall6

Shorewall (Dit is de standaard shorewall versie)
Shorewall6 (Deze versie van shorewall is voor ipv6)

De installatie

De installatie van shorewall6


cd /home/beheer/software
apt-get update
apt-get install bzip2
apt-get install iproute
apt-get install perl
wget http://www.shorewall.net/pub/shorewall/4.4/shorewall-4.4.4/shorewall6-4.4.4.2.tar.bz2
tar -xjvf shorewall6-4.4.4.2.tar.bz2
cd shorewall6-4.4.4.2
./install.sh
cd /etc/shorewall6

De configuratie

Interfaces
In de interface file worden alle netwerk interfaces opgegeven en gekoppeld aan de zones waarmee shorewall later zal bepalen welke zone bij welke interface hoort. Daarnaast is het ook mogelijk om per interface op te geven welke opties er voor de interface actief moeten zijn.

vim /etc/shorewall6/interfaces

#
# Shorewall6 version 4 - Interfaces File
#
# For information about entries in this file, type "man shorewall6-interfaces"
#
# The manpage is also online at
# http://www.shorewall.net/manpages6/shorewall6-interfaces.html
#
###############################################################################
#ZONE   INTERFACE       ANYCAST         OPTIONS
net     eth0            detect  nosmurfs,tcpflags,blacklist
net     ppp0            detect  nosmurfs,tcpflags,blacklist
net     wlan0           detect  nosmurfs,tcpflags,blacklist

Zones
In dit bestand wordt aangegeven wat de eigenschappen zijn van de zones welke we in de interfaces file hebben aangemaakt.

vim /etc/shorewall6/zones

#
# Shorewall6 version 4 - Zones File
#
# For information about this file, type "man shorewall6-zones"
#
# The manpage is also online at
# http://www.shorewall.net/manpages6/shorewall6-zones.html
#
###############################################################################
#ZONE   TYPE            OPTIONS         IN                      OUT
#                                       OPTIONS                 OPTIONS
fw      firewall
net     ipv6

Policy

In de policy file geven we aan wat de standaard actie is welke shorewall moet hanteren voor het verkeer wat over de interfaces gaat. In dit voorbeeld staat shorewall standaard het verkeer vanaf de machine (fw) naar het internet (net) toe toestaat. Verkeer vanaf internet (net) naar de machine (fw) toe wordt standaard geblokkeerd.

vim /etc/shorewall6/policy

#
# Shorewall6 version 4 - Policy File
#
# For information about entries in this file, type "man shorewall6-policy"
#
# The manpage is also online at
# http://www.shorewall.net/manpages6/shorewall6-policy.html
#
###############################################################################
#SOURCE DEST    POLICY          LOG     LIMIT:          CONNLIMIT:
#                               LEVEL   BURST           MASK
fw      net     ACCEPT
net     all     DROP
all     all     REJECT

Rules

In de rules file worden alle regels geplaatst welke het verkeer vanaf internet naar de machine toelaten.

/etc/shorewall6/rules

#
# Shorewall6 version 4 - Rules File
#
# For information on the settings in this file, type "man shorewall6-rules"
#
# The manpage is also online at
# http://www.shorewall.net/manpages6/shorewall6-rules.html
#
####################################################################################################################################################
#ACTION         SOURCE          DEST            PROTO   DEST    SOURCE          ORIGINAL        RATE            USER/   MARK    CONNLIMIT       TIME
#                                                       PORT    PORT(S)         DEST            LIMIT           GROUP
#SECTION ESTABLISHED
#SECTION RELATED
SECTION NEW
ACCEPT          net                            fw      ipv6-icmp
ACCEPT          net                     fw      tcp     80,443
ACCEPT          net                     fw      udp     33434:33465  (Zorgt ervoor dat unix traceroute werkt)

Shorewall

In shorewall staan veel configuratie opties. Een van deze opties is DisableIPv6=Yes deze is goed voor machines waar geen ipv6 gewenst is. Maar moet op No gezet worden op machines die wel een ipv6 adres hebben.

LET OP: Als je gebruik maakt van ipv6 is het ook raadzaam om shorewall6 te installeren

Opstarten bij het starten van de machine

Shorewall start standaard niet op waardoor je machine bij het opstarten niet beveiligd is. Om dit op te lossen kun je de volgende file aanpassen vim /etc/default/shorewall6 zet hierin de startup=1

De machine is nu klaar en shorewall zal bij de volgende herstart actief worden

Shorewall commando`s

De volgende commando`s gebruik zelf vaak voor shorewall

shorewall6 status
shorewall6 check
shorewall6 restart

status laat ziet of shorewall acties is
check controleerd de wijzigingen in de configuratie
restart herlaad de configuratie

Upgraden van Shorewall

Inmiddels is er een nieuwe versie van shorewall. Het upgraden gaat als volgt

cd /home/beheer/software
wget http://www.shorewall.net/pub/shorewall/4.4/shorewall-4.4.17/shorewall6-4.4.17.tar.bz2
tar -xjvf shorewall6-4.4.17.tar.bz2
cd shorewall6-4.4.17
./install.sh

shorewall6 restart