Shorewall - Eldveggur á háu stigi til að stilla Linux netþjóna


Að setja upp eldvegg í Linux getur verið mjög ógnvekjandi fyrir nýliða, eða fyrir einhvern sem er ekki mjög kunnugur iptables. Sem betur fer er mjög auðveld í notkun lausn í Shorewall.

Í þessari fjölþættu kennslu ætla ég að koma þér af stað með Shorewall og leiðbeina þér í gegnum nokkur háþróuð efni með þessu frábæra eldveggskerfi.

Hvað er Shorewall?

Shorewall er í meginatriðum framhlið iptables, en það er framhlið skipanalínuumhverfis sem notar fjölda textaskráa fyrir uppsetningu þess. Þó að Shorewall sé öflugt eldveggkerfi sem hægt er að stækka yfir mjög stór netkerfi sem þjónustar fjölmargar vélar, ætlum við að byrja með grunnstillingu tveggja viðmóta og negla grunnatriðin niður.

Tvö tengi uppsetning samanstendur af vél með tveimur Ethernet tengjum, einn kemur inn og annar fer út á staðarnetið.

Uppsetning á Shorewall í Linux

Shorewall er hægt að setja upp með því að nota apt-get og yum pakkastjórnunarverkfæri.

$ sudo apt-get install shorewall6
$ sudo yum install shorewall6

Eftir uppsetningu þurfum við að afrita sýnishorn af stillingum úr /usr/share/doc/shorewall möppunni yfir í sjálfgefna möppu Shorewall /etc/shorewall.

$ sudo cp /usr/share/doc/shorewall/example/two-interfaces/* /etc/shorewall

Og svo geisladisk í /etc/shorewall.

$ cd /etc/shorewall

Ef við skoðum þessa möppu sjáum við fullt af skrám og shorewall.conf skrá. Shorewall lítur á netið sem hóp af mismunandi svæðum, þannig að fyrsta skráin sem við viljum skoða er „/etc/shorewall/zones“ skráin.

Hérna sjáum við að það eru þrjú svæði skilgreind sjálfgefið: net, loc og allt. Það er mikilvægt að hafa í huga að Shorewall meðhöndlar eldveggsvélina sjálfa sem sitt eigið svæði og geymir hana í breytu sem kallast $FW. Þú munt sjá þessa breytu í restinni af stillingarskránum.

/etc/shorewall/zones skráin er nokkuð sjálfskýrandi. Þú ert með netsvæðið (viðmót sem snýr að internetinu), staðsvæðið (viðmót sem snýr að LAN) og allt, sem er allt.

Þessi uppsetning gefur upp eftirfarandi:

  1. Það leyfir allar tengingarbeiðnir frá loc zone (LAN) til net zone (Internet).
  2. Sleppir öllum tengingarbeiðnum (hunsar) frá netsvæðinu yfir á eldvegginn og staðarnetið.
  3. Hafnar og skráir allar aðrar beiðnir.

LOG LEVEL bitinn ætti að vera kunnuglegur öllum sem hafa gert stjórnun með Apache, MySQL eða öðrum fjölda annarra FOSS forrita. Í þessu tilviki erum við að segja Shorewall að nota upplýsingastig skráningar.

Ef þú vilt hafa eldvegginn þinn tiltækan fyrir þig til að stjórna frá staðarnetinu þínu, geturðu bætt eftirfarandi línum við /etc/shorewall/policy skrána þína.

#SOURCE		DEST	POLICY		LOG		LEVEL		LIMIT:BURST
loc			$FW		ACCEPT
$FW			loc		ACCEPT

Nú þegar svæði okkar og stefna eru stillt verðum við að stilla viðmótin okkar. Þú gerir þetta með því að breyta /etc/shorewall/interfaces skránni.

Hér höfum við stillt netviðmótið okkar sem eth0 á netsvæðið. Á LAN hliðinni okkar höfum við stillt hitt viðmótið, eth1, á loc zone. Vinsamlegast stilltu þessa skrá til að virkja stillingarnar þínar rétt.

Hinir ýmsu valmöguleikar sem þú getur sett fyrir annað hvort þessara viðmóta eru umfangsmiklir og eru best útskýrðir í smáatriðum á mannasíðunni.

$ man shorewall-interfaces

Fljótleg samantekt á sumum þeirra er sem hér segir:

  1. nosmurfs – sía pakka með útsendingarvistfangi sem uppruna.
  2. logmartians - skrá pakka með ómögulegt uppruna heimilisfang.
  3. leiðasía – kjarnaleiðasíun fyrir spoofing.

Auðvitað, nú þegar kerfið okkar er eldveggað, þurfum við ákveðnar tengingar að komast í gegnum til að fá það sem við þurfum að gera. Þú skilgreinir þetta í regluskránni á “/etc/shorewall/rules“.

Þessi skrá lítur ruglingslega út í fyrstu, aðallega vegna þess að dálkarnir skarast, en hausarnir skýra sig nokkuð sjálfir. Í fyrsta lagi hefurðu ACTION dálkinn, sem lýsir því sem þú vilt framkvæma.

Næst hefurðu SOURCE haus þar sem þú skilgreinir svæðið þar sem pakkinn er upprunninn. Þá hefurðu DEST þinn, eða áfangastað, sem er svæði eða IP-tala áfangastaðarins. Við skulum nota dæmi.

Segjum að þú viljir keyra SSH netþjón á bak við eldvegginn þinn á vélinni með IP töluna 192.168.1.25. Þú þarft ekki aðeins að opna höfn í eldveggnum þínum heldur verður þú að segja eldveggnum að allri umferð sem kemur á höfn 22 þurfi að berast til vélarinnar á 192.168.1.25.

Þetta er þekkt sem Port Forwarding. Það er algengur eiginleiki á flestum eldvegg/beinum. Í „/etc/shorewall/rules“ myndirðu ná þessu með því að bæta við línu eins og þessari:

SSH(DNAT)	net		loc:192.168.1.25

Hér að ofan höfum við skilgreint hvers kyns SSH pakka sem koma frá netsvæðinu til eldveggsins verða að vera fluttir (DNAT) til hafnar 22 á vél með heimilisfanginu 192.168.1.25.

Þetta er kallað Network Address Translation eða NAT. „D“ segir Shorewall einfaldlega að þetta sé NAT fyrir áfangastað.

Til þess að þetta virki þarftu að hafa NAT stuðning virkan í kjarnanum þínum. Ef þú þarft NAT og ert ekki með það, vinsamlegast skoðaðu námskeiðið mitt um endursamsetningu Debian-kjarna.

Tilvísunartenglar

Heimasíða Shorewall

Í næstu grein munum við ganga í gegnum nokkur háþróuð efni, en það ætti að vera nóg hér til að koma þér af stað í bili. Eins og alltaf, vinsamlegast kíkið á mannasíðurnar til að fá dýpri skilning.