Hlavní navigace

IPCop - strážce vaší sítě

4. 9. 2002
Doba čtení: 5 minut

Sdílet

Tyto prázdniny jsem se rozhodl postavit domácí síť. Nejdůležitějším požadavkem bylo sdílení modemového připojení na Internet tak, aby se dalo jednoduše připojit z libovolného počítače naší sítě. A protože starého železa je dost, rozhodl jsem se pro tento účel vyhradit jeden slabší stroj. Po obhlédnutí několika firewallových minidistribucí jsem narazil na IPCopa, s kterým jsem více než spokojen.
IPCop

je specializovaná linuxová distribuce, která slouží jako firewall mezi Internetem a vaší lokálni sítí. Vznikla odštěpením z projektu Smoothwall. Cílem autorů je vytvořit stabilní a bezpečnou distribuci, jejímž účelem je ochránit síť, na kterou je instalována. Umí toho opravdu hodně, přitom se dá velmi snadno spravovat, nejen díky příjemnému webovému rozhraní.

Do Internetu ho můžete připojit ethernetovým adaptérem (v případě těch štastnějších) nebo analogovým či ISDN modemem. Případně i ADSL modemem, to byste se ovšem museli dostat ze spárů místního monopolisty a emigrovat :-(. Co vám tedy může IPCop nabídnout? Současná verze 0.1.1, která je postavena na jádru řady 2.2, obsahuje mimo jiné:

  • Paketový filtr (IPChains)
  • Maškarádu, která umožňuje skrýt vaši síť za jednu IP adresu
  • Demilitarizovanou zónu (např. pro umístění veřejně přístupných serverů)
  • Systém pro detekci napadení, který vás informuje o podezřelých aktivitách
  • VPN pro bezpečné propojení sítí přes Internet do jedné sítě
  • Kešovaný DNS server pro urychlení překladu internetových adres na IP adresy
  • DHCP server (to se zas hodí, pokud k vám chodí pařit lidi s Widlema ;-)
  • Web proxy na urychlení brouzdání po oblíbených stránkách
  • Dynamickou DNS, která se může hodit, pokud býváte připojeni delší dobu
  • A samozřejmě nejrůznějsí grafy a logy dostupné přes povedené webové rozhraní

Hurá na něj aneb instalujeme

Ještě než začneme se samotnou instalací, je vhodné se na ni připravit. K dispozici je podrobný instalační manuál, jehož pročtením nic nezkazíme. Dále můžeme nahlédnout do seznamu podporovaného hardwaru. V podstatě se dají použít jakékoliv stroje včetně 386, webové rozhraní bude ale dost líné. Ja používám K5–75 s 16MB paměti a 2GB diskem, jehož velikost se dá s výhodou využít pro web proxy. Ačkoliv pro běžný provoz stačí 8MB paměti, pro instalaci to může být málo – při mém pokusu se instalátor nedostal ani přes dělení disku. Kamarád měl více štěstí a i při tomto množství paměti se mu instalace zdařila.

Po stáhnutí

distribučního CD (které má zhruba 27MB) si můžeme vybrat z několika způsobů instalace systému. Záleží hlavně na hardwarovém vybavení, které máme k dispozici. Můžeme tedy:

  • Vypálit isovku na CD, z kterého potom můžeme bootovat.
  • Protože starší počítače neumí bootovat z CD, vytvoříme navíc bootovací disketu, která je připravena na právě vypáleném CD.
  • Pokud nemáme vypalovačku, můžeme instalovat i přes síť. V tomto případě vytvoříme kromě bootovací diskety ještě disketu s ovladači:

    # jako superuživatel
    mount -t iso9660 -o loopback ipcop-0.1.1.iso /mnt/ipcop
    dd if=/mnt/ipcop/i­mages/boot-0.1.1.img of=/dev/fd0 bs=1024 count=1440
    dd if=/mnt/ipcop/i­mages/drivers-0.1.1.img of=/dev/fd0 bs=1024 count=1440

    (řádky mohou být kvůli šiřce sloupce zalámány, ale při zkopírování se zlomy objeví na správném místě – pozn. redakce)

    Po nabootování je použit ovladač síťové karty z druhé diskety a pak se musí stáhnout hlavní instalační balík (soubor ipcop.tgz instalačního CD) z webového nebo FTP serveru.

IPCop definuje tři typy síťového rozhraní, které jsou srozumitelně pojmenované podle barev. Typická konfigurace bude obsahovat červené, určenené pro připojení k vnější síti, a zelené, kterým se připojí k lokální síti. Dále můžeme volitelně použít oranžové rozhraní, pomocí něhož se dá vytvořit tzv. demilitarizovaná zóna (DMZ). Počítače připojené k oranžovému rozhraní nemají přístup ke strojům ze zeleného, pokud jej explicitně nepovolíte (pomocí tzv. DMZ pinholes). Do DMZ se typicky připojují (webové) servery, určené pro uživatele z vnější červené sítě.

Nyní už můžeme nabootovat z instalačního CD (nebo diskety). Uvítá nás LILO s upozorněním na ztrátu veškerých dat – IPCop je jednoúčelový systém, který se rozvalí přes celý pevný disk. Po startu jádra se spustí instalátor obdobného vzhledu jako u textové instalace RadHatu. Není divu, celá distribuce je totiž na RedHatu založena.

Následující sled dialogových oken z nás dostane jen ty nejdůležitější informace, neboť ostatní nastavení se dělají až později skrze webové rozhraní. Protože je velmi podrobně, krok za krokem, rozebrán v instalačním manuálu, popíšu jej jen bleskově. Nejprve si tedy vybereme typ instalace (z CD, nebo ze sítě). Instalace ze sítě se liší jen tím, že je třeba použít i druhou disketu a zadat URL, z které se má stáhnout instalační soubor. Po jeho stažení již vše probíhá stejně jako z CD.

Po výběru CD instalace a dalším potvrzení začne příprava disku, který je (pře)rozdělen na čtyři oddíly:

  • /boot (6MB)
  • swap (18MB)
  • /var/log
  • /

Poslední dva oddíly si podle mých pozorování rozdělí zbylé místo v poměru 8:2. Nemožnost ručního rozdělení disku snad může někomu vadit, na druhou stranu vás rozdělování zbytečně neobtěžuje.

Nyní nastavíme zelené rozhraní, přičemž můžeme použít autodetekci, která mně fungovala bez problémů. Případně můžeme vybrat síťovku ručně, ošetřena je i situace, kdy je v počítači více stejných karet. Dále zadáme IP adresu rozhraní, měli bychom použít některou z rozsahu privátních sítí (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) – já jsem použil 192.168.0.1.

Tím je instalátor hotov a na závěr spustí setup, pomocí něhož můžeme i později kdykoliv měnit základní nastavení systému. V něm nastavíme napřed klávesnici, časovou zónu a jméno stroje (např. ipcop). Další dialogy řeší nastavení ISDN a ADSL modemů. V nastavení sítě potom pro připojení modemem vybereme první typ konfigurace (zelené + červené rozhraní s modemem). U červeného rozhraní záleží způsob nastavení IP adresy na ISP. Většinou se používá protokol DHCP, kterým nám server poskytovatele přidělí dynamickou IP adresu vždy při připojení.

Tabulka č. 325
Příkazem setup vyvoláme konfigurační utilitku
Hlavní konfigurační nástroj pro konzoli – setup.

Vlastní DHCP server může běžet i na IPCopovi – k jeho zprovoznění stačí vyplnit další dialogové okno. V něm si mimo jiné určíme rozsah přidělovaných adres. Na závěr je ještě potřeba nastavit hesla pro tři základní uživatele: root, setup a admin. Uživatel setup má jako shell nastavený (překvapivě :-) setup, uživatel admin se používá pro přístup k webové administraci.

Nyní si už konečně můžeme prohlédnout webové rozhraní z některého z počítačů připojených na zelené rozhraní (na naši lokální síť). Do prohlížeče zadáme adresu

http://ipcop:81/

případně šifrovanou variantu

https://ipcop:445/

načež nás uvítá kdo jiný než tučňák – tentokráte tučňák policista s pořádným policajtským odznakem (dokonce tak velikým, že by mohl drobného Tuxe zavalit ;-). Úvodní stránka je bez hesla, všechny ostatní jsou již zaheslované a může k nim jen admin. Také se lze přihlásit jako uživatel dial, který může pouze nahazovat či shazovat vytáčené připojení.

UX DAy - tip 2

Tabulka č. 326
Tučňák s odznakem
Úvodní stránka webového rozhraní informuje i o stavu vytáčené linky

Nyní máme sice instalaci za sebou, zbývá ale ještě nastavit vytáčené připojení, web proxy a pár další záležitostí. Příště si snad povíme, jak na to, a nahlédneme také za webovou masku IPCopa, díky čemuž objevíme pár dobrých vychytávek.

Byl pro vás článek přínosný?

Autor článku