Shorewall
Autor: Ragnar Kolga - AK32
Sissejuhatus
Shorewall (alias Shoreline Firewall) on tarkvaraline vahend netfiltri konfigureerimiseks Linuxis (operatsioonisüsteem linux kernelil). Netfilter koos kasutajaliidesega iptables on paketifilter. Shorewall konfigureerib Netfiltri kasutades konfiguratsioonifaile ja seda iptables utiliidi vahendusel. Shorewalli on võimalik kasutada tulemüürina väga erinevatel seadmetel (ruuteritel, serveritel, ...).
Oluline oleks veel teada, et netfilter lubab defineerida reegleid kuidas käsitletakse võrgupakette.
Netfilter koosneb erinevatest ahelast :
INPUT - sissetulevad paketid OUTPUT - väljuvad paketid FORWARD - edastatavad paketid PREROUTING ja POSTROUTING - põhiliselt NAT tegemiseks.
Siinkohal tooks veel välja, et iptables on vahend netfilter tabelite konfigureerimiseks (reeglitest koosnevad tabelid).
Shorewall teeb lihtsamaks tulemüürireeglite manageerimise (iptables kasutajaliides + netfilter). Reeglid defineeritakse tekstifailides ja on lihtsasti muudetavad.
Uuele kasutajale selles valdkonnas on kindlasti lihtsamaid tulemüüri reeglite haldamise vahendeid, millel on olemas ka graafiline liides.
Viimane stabiilne versioon on 4.4.7 (05.2010 seisuga). Shorewalli tarkvara on saadaval ingliskeelsena. Litsents on GPLv2 ja üks arendajatest on Thomas M.Eastep.
Võrgud jagatakse tsoonideks ja ...
Alustuseks tuleks luua üldine võrgu skeem ( Skeem Veel erinevaid skeeme).
Järgnevalt tooksin välja tegevused shorewalli konfiguratsioonifailidega (abiks edaspidistel tegevustel ja tekib parem ettekujutus toimuvast).
Fail Tegevus Zones Võrgu jagamine tsoonideks Hosts, Interfaces Defineeritakse tsoonid tulemüüri liideste ja ip aadressitega Defineeritakse erinevate tsoonide võrguliikluse piirangud Policy Tsoonide vaheline ligipääs Rules Määratakse teenuste kaupa ligipääsu reeglid Määratakse destination NAT (D-NAT) reeglid Masq Määratakse Source NAT (S-NAT) reeglid Shorewall.conf Üldise konfiguratsioonifaili määrangud ... Muud piirangud
Installeerimine
Debian, Fedora, RedHat, Suse, Centos, Ubuntu, ...
apt-get install shorewall
yum install shorewall
up2date -i shorewall
Lae alla shorewall
wget http://slovakia.shorewall.net/pub/shorewall/4.4/shorewall-4.4.8/shorewall-4.4.8-2.noarch.rpm
RPM ( Lae alla 4.4.8 versioon Vaata teine versioon)
rpm -ivh <shorewall rpm paketi nimi>
rpm -ivh shorewall-x.x.x-0base.noarch.rpm
rpm -ivh --nodeps < rpms >
TAR installeerimine
tar -jxf shorewall-x.x.x.tar.bz2
Kopeerime näidis konfiguratsioonifailid /etc/shorewall kausta (Debian)
cp /usr/share/doc/shorewall/default-config/* /etc/shorewall/
Konfigureerimine
Zones (tsoonid)konfiguratsioonifail
Ühe tsooni piires kehtivad ühensugused tulemüüri reeglid. Kõigepealt tuleb konfigureerida erinevad võrgu tsoonid. Kirjeldada tuleb tsoonidele nimed. Näiteks välisvõrk net (interNET) ja sisevõrk loc (LOCal või private).
Lisaks kaks tsooni: fw - liiklus tulemüürist välja ja edasi tulemüüri teenustele dmz -Demilitarized zone (avalikud serverid)
--- konfiguratsioonifailist ---
- ZONE TYPE OPTIONS IN OUT
- OPTIONS OPTIONS
# ZONE Short name of the zone (5 Characters or less in length). # DISPLAY Display name of the zone # COMMENTS Comments about the zone # #ZONE DISPLAY COMMENTS net Net Internet(Valisvork) loc Local Local LAN(Sisevork, privaatne_vork)
Interfaces ( ) konfiguratsioonifail
Võrguliideste defineerimine. Siin määrame milline võrguliides vastab tsoonifailis oleva kirjeldusega.
--- konfiguratsioonifailist ---
#ZONE INTERFACE BROADCAST OPTIONS net eth1 193.xxx.xxx.xxx routefilter loc eth0 172.xxx.xxx.255 dhcp,routeback
Zone - tsoon mis on defineeritud zones failis. Interfaces - võrguliidese nimi. Broadcast - Options -
Policy () konfiguratsioonifail (General plan of action - tegevusplaan)
#SOURCE ZONE DESTINATION ZONE POLICY LOG LEVEL LIMIT:BURST
Rules (reeglid) konfiguratsioonifail
Kõige tähtsam konfiguratsioonifail.
Reeglite failis määratakse mis on lubatud ja keelatud. Kõikide uute ühenduste loomisel kontrollitakse tulemüüri reegleid.
#ACTION SOURCE DEST PROTO DEST # PORT(S)
shorewall.conf
Kui tulemüüri reeglid on paigas võiks proovida teenust käivitada teatud perioodiks, vältimaks ligipääsu probleeme ...
shorewall try /etc/shorewall 120
Shorewall käivitatakse 120 sekundiks.
Teenus (start/stop/restart/status)
service shorewall start - teenuse käivitamine
service shorewall stop - teenuse seiskamine
service shorewall restart - teenuse taaskäivitamine
service shorewall status - teenuse oleku kuvamine (iptables reeglid, loodud ja loomisel ühendused, ...)
Probleemid
Ära installeeri shorewalli kaughaldusena (muidu lõikad näppu ja ei pääse kaugelt süsteemile ligi).
Kui shorewalli konfiguratsioonifailides on probleem, siis peaks vaatama logifaili
less /var/log/shorewall-init.log
Logimine
shorewall show log - näitab viimast 20 logitud rida shorewall logwatch - näitab logi teatud intervalliga shorewall dump - shorewall probleemide tuvastamiseks
(erinevad võimalused: add, allow, check, clear, help, forget, hits, ipcalc, iprange, refresh, reject, show, try, )
Varundamine
Varundada on vaja konfiguratsioonifailid (näiteks asuvad konfiguratsioonifailid /etc/shorewall/ kaustas).
ls -la /etc/shorewall/ - kuvatakse kausta shorewall sisu
tar -zcp /etc/shorewall > /root/shorewall_reeglite_varu.tar.gz - pakime konfiguratsioonifailid kokku. cp -r /etc/shorewall > /root/varundamisekaust/shorewall - kopeerime failid varundamise kausta.
Eemaldamine
Debian, Fedora, RedHat, Suse, Centos, Ubuntu, ...
apt-get remove shorewall
yum remove shorewall
up2date -***** shorewall
Kokkuvõte
Shorewall tarkvara on lihtne paigaldada ja hallata. Shorewall projektiga tegeletakse aktiivselt edasi ja soovitan huvilistel olla kursis uudistega, mille leiad järgnevalt lingilt.