Egy szerveren jó ha van tűzfal. Na de milyen?
Régebben a GIPTables volt a kedvencem. Mindent tud amit kell, és jól átlátható, úgyhogy tökéletesnek tűnt. És az is, csak az Ubuntuban nincs ilyen csomag, így újabban a Shorewall -t használom.
Ahoz, hogy elkezdjük használni kell néhány beállítás. Az /usr/share/doc/shorewall-common/examples
könyvtár alatt többféle példa konfiguráció található, amiböl legtöbb esetben a one-interface
-ből célszerű kiindulni.
A konfigurációs elvekről annyit, hogy célszerű úgy kezdeni, hogy mindent tíltunk (policy), és aztán megadjuk azokat a szolgáltatásokat, amiknek mindenképp mennie kell (rules). Vannak egyszerű dolgok pl.: levelezés, DNS lekérdezések, NTP, és magának a web szervernek az elérése, de akadnak alaposabb megfontolást igénylő dolgok pl.: a szerver elérése SSH -n és a kimenő HTTP kapcsolatok.
Ami biztos, hogy nem jó az az, ha az SSH portját megnyitjuk a világ felé. Vagy a portot (22) kell átrakni máshová, vagy Port knocking -ot használunk, vagy megadjuk a lehetséges forrás IP tartományokat.
A kimenő HTTP kapcsolatok engedélyezése a csomagok frissítése miatt szükséges. Ezt célszerű tapasztalati óton beállítani (amikor valami nem megy, akkor a tűzfal log -ból kiderül, hogy melyik IP -t kell még engedélyezni).
Végezetűl, még két szolgáltatás a shorewall -tól. /etc/shorewall/params
-ban lehet deffiniálni változókat, amiket felhasznáhatunk a szabályok megadásánál. Pl.: itt lehet összegyűjteni azokat az IP -ket, amiket engedélyezni szeretnénk. A másik lehetőség az Action -ok használata, melyekkel például, korlátozni lehet az 1 IP -ről indított kapcsolatok számát.
Utolsó kommentek