Szeretnék tiltani néhány portot, de nem sikerül

Sziasztok!

A 192.168.1.24 IP-jú /vagy ... MAC adress-es felhasználó gépéről 2234-2239-ig a portokon való kommunikációt szeretném tiltani a szerveren.
Meglehetősen lámának érzem magam ebben a témakörben, így be sem merem idézni, hogy az /etc/shorewall/rules állományban miket szemeteltem be.
A REJECT-tel és a DROPpal próbálkoztam, de továbbra is vidáman megy nála a portok használata.

Voltaképpen az érdekelne, hogy aki jártas e témában, az hogyan oldaná meg. Sokat tudnék tanulni belőle.

Előre is köszönöm a válaszokat!

Hozzászólások

Szerintem szerencsésebb a másik utat járni...

"Semmit nem szabad kivéve amit igen."

Vagyis az alapértelmezett szabály legyen DROP és azt engedélyezd amit használni szeretnél.

például:



# (SEMMIT NEM SZABAD!)
# alapértelmezett szabály, hogy eldobunk mindent
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# (KIVÉVE AMIT IGEN!)
# helyi forgalmat engedélyezzük
iptables -A INPUT -i lo -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
iptables -A OUTPUT -o lo -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

--
maszili

Azt hiszem, egy-két további paramétert megadok, mert nem szeretnék belefutni egy olyan helyzetbe, hogy sikeresen kitiltsam a szükséges portokat.
Szóval ezen a szerveren van proxy, stmp, pop, dhcp, ssh. A kliensek részben dinamikus, részben statikus címen vannak. Voltaképpen a 2234-2239 portokat mindenkinél lehetne tiltani.

Ilyen aspektusban is van javaslatod, mit konfogoljak?

...nem szeretnék belefutni egy olyan helyzetbe, hogy sikeresen kitiltsam a szükséges portokat.

Ha tudod, hogy mit akarsz akkor ez nem lehet probléma.

Ilyen aspektusban is van javaslatod, mit konfogoljak?

Te tudod. Én a helyedben mindenképen a szigorúbb megoldást választanám. Már csak azért is mert akkor az ilyen problémák, hogy "valaki kiszökik a hálózatról valami eddig nem tiltott porton" fel sem merülnének.

Így viszont pár nap mulva újabb portokat kell majd letiltogatni, amíg végül azt fogod elérni hogy tele lesz tiltásokkal a szabálylánc ami miatt:

  • átláthatatlan lesz az egész
  • bonyolult lesz a módosítása
  • folyton módosítani kell az újabb illegális portok miatt

De, hogy válaszoljak a kérdésedre...

Voltaképpen a 2234-2239 portokat mindenkinél lehetne tiltani.

iptables -I FOWARD 1 -p tcp --dport 2234:2239 -j DROP

--
maszili

Abszolút bocs, én magamra értettem.
Gondolom két sor, de sokaknak (pl. én) fél napos doksiolvasásból derül csak ki az a két sor.

És esetleg mások nem éppen egy éles rendszeren szeretnék fényesre csiszolni tudásukat a témában. Persze alapból egyetértek, olvasson mindenki minél több dokumentációt. De ha valaki rendelkezik a tudás mélységeivel, akkor ne legyen rest megosztani a többiekkel. :-)

Csaba

U.I.: Bocs, rosszul aludtam....

Az a helyzet, hogy én is előbb olvasok, és utána kérdezek, ezt már jóideje megtanultam. A firewall viszont alaposan fehér folt maradt, mert ott ahol használnom kellett, volt egy kereskedelmi szoftver linux alatt és az elkényelmesített.
A másik pedig, hogy valójában éles rendszeren kellett végrehajtanom, mégpedig azért, hogy mielőtt egy buta felhasználót kivág a főnöke, mint macskát szarni, előtte tiltasam a fájlcserélőjét. [OFF]Nem akarok belemenni mélységeibe, de a srác jó munkaerő ennél a cégnél, csakhát értetlenkedik a fájlcserélővel. Kvázi megmentettem a munkahelyét a segédletetetekkel. Így a gyorsaság is sokat számított.[/OFF]

Ui.: A javaslatot, ami a tűzfal teljes "rekonstrukciójára" vonatkozik, megfogadtam, és át is fogom írni, amikor nem zavarok meg senkit a munkájában, illetve, ha kellően kitanulmányotam.

Szóval köszönöm.

A doksi olvasás pedig hasznos és építő tud ám lenni!

Kezdheted mondjuk ezzel: Linux hálózati adminisztrátorok kézikönyve. Kossuth Kiadó; 2005.

--
Nem azt mondom, hogy Bill Gates a Sátán! Csak azt, hogy ha Bill találkozna a Sátánnal, nem lennének nyelvi problémáik!

Nos, az az igazsag, hogy ha most nem olvasod el es erted meg a doksit, kesobb sem fogod tudni es mindig valakinek a valaszara kell varnod vagy megvarnod, hogy valaki mas megcsinalja helyetted. Ez nem fog menni, tuzfalat konfigolni nem olyan nagy ordongosseg, csak erteni kell az alapelvet (ime egy abra a lancok egymashoz kapcsolodasarol).

Na, na hátrébb az agarakkal!
Mondtam, hogy csak akkor kérdezek, ha nagyon fontos. Nem ma kezdtem Linux-szal foglalkozni, és nem is kívánom megvédeni magam, mert nincs miért. Elismertem, hogy most fontos volt a gyorsaság. Meg is köszöntem, mert jóval előbb meg tudtam oldani, a problémát, mintsem a srácot kibasszák a munkahelyéről, mert nem hallgat a szép szóra.

> # (KIVÉVE AMIT IGEN!)
> # helyi forgalmat engedélyezzük
> iptables -A INPUT -i lo -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
> iptables -A OUTPUT -o lo -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

Ja en ezzel mar szivtam jot... Ez jobban mukodik es egyszerubb is:

iptables -A INPUT -i lo -j ACCEPT

Meg amugy is, ennyit altalaban meg erdemes:
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT


Mert mondjuk nem szivsz olyankor amikor a sajat IP-drol (de nem a 127.0.0.1-rol!) kapsz csomagot az "lo"-n keresztul.

Én ilyet még sohasem tapasztaltam... ott akkor valószínüleg rosszul működik valami.


Meg amugy is, az lo-ra miert ne lehetne siman mindent engedni?

Minél jobban meghatározzuk azt ami a szándékunk annál kisebb az esélye annak, hogy olyan dolog történjen amit nem szeretnénk.

Egy szervert nem csak a külső támadások miatt kell védeni, hanem a belső anomáliákat is meg kell akadályozni.

Pl. csak olyan processzek kezdeményezhetnek hálózati kapcsolatot akiknek meg van engedve mert a feladatukhoz szükséges. Így ha valamilyen ok miatt egy kártékony kód az adott szerverről akar hálózati kapcsolatot létesíteni, nem fog tudni.

--
maszili