• Ismertető
  • Hírek
  • Letöltés
  • Súgó
  • Közösség
ubuntu.hu

Belépés

  • Felhasználó létrehozása
  • Elfelejtett jelszó

Facebook

Kapcsolat

  • Facebook oldal
  • IRC
  • Közösségi levlista
  • Segítői levlista
  • További elérhetőségek

IPTABLES célportok tiltása

2010. október 18. – 00.26 – Anonymous
  • Hálózat, internet

Sziasztok!

Teljes kétségbeesésem közepette fordulok hozzátok; a problémám a következő:
BitTorrent forgalmat szeretném blokkolni a célgép 1000-1800 és 1800-65534 portjainak letiltásával. Olvastam az Iptables zsebkönyvet de nekem a téma magas. :(
Kérésem a megfelelő iptables parancs szintaxisa lenne azaz hogy tudnám beállítani, hogy a nat-olt hálózatból ne mehessenek tovább a fent megadott portokra a csomagok.
Remélem a megoldás csak nekem bonyolult, várom tisztelettel a segítséget esetleg alternatív megoldásokat.

Előre is köszönöm:
Andor

‹ MSI CX600 Internet gondok empathy ›
  • A hozzászóláshoz regisztráció és belépés szükséges
Gorkhaan – moderátor – 2010. október 18. 1.34

Fordítsuk meg a dolgot. Csak azokat engedélyezd, amik a működéshez szükségesek.

Gufw, Firestarter

Túl profi akarsz lenni, akkor meg Squid Proxy-t is összedobsz.

Google tele van mindezekkel, csak keresni kell.

  • A hozzászóláshoz regisztráció és belépés szükséges

 

gytoth – 2010. október 18. 7.17

Akkor valami ilyesmi lesz:

iptables -A POSTROUTING -t nat -s 192.168.0.0/24 -p tcp --dport 1000:65534 -j DROP

Értelemszerűen a 192.168.0.0/24 a belső hálód adataira cserélendő.

(Gyakorlatilag úgy írod, hogy 1000 felett minden port tiltva legyen. Jól látom?)

  • A hozzászóláshoz regisztráció és belépés szükséges

 

aNo (nem ellenőrzött) – 2010. október 18. 12.06 – előzmény

Kipróbáltam amit javasoltál, sajnos, a következő hibaüzenetet kaptam:

user@domain:~# iptables -A POSTROUTING -t nat -s 10.10.1.0/24 -p tcp --dport 1000:65534 -j DROP
iptables v1.4.6:
The "nat" table is not intended for filtering, the use of DROP is therefore inhibited.

Try `iptables -h' or 'iptables --help' for more information.
user@domain:~#

A portok tiltását úgy gondoltam, hogy 1000-től 1800-ig majd 1900-tól 65534-ig legyenek tiltva.Az 1801-től 1899-ig terjedő tartomány az MSN és a Skype miatt kellenek.

Meg lehet oldani a filter táblán szabályokkal?

Üdv:
Andor

  • A hozzászóláshoz regisztráció és belépés szükséges

 

Gorkhaan – moderátor – 2010. október 18. 12.08 – előzmény

Miért nem csinálod ahogy ajánlottam? Nem tiltó szabályokat kell létrehozni, hanem az ellenkezőjét, engedélyezőket, tehát alapból minden DROP ( iptables -P INPUT DROP ), kivéve ez/az/amaz.

  • A hozzászóláshoz regisztráció és belépés szükséges

 

aNo (nem ellenőrzött) – 2010. október 18. 12.15 – előzmény

Ezzel az lenne a baj, hogy a DNS-től kezdve a HTTP-n keresztül a Skype portjáig mindegyiket egyesével engedélyeznem kellene.

  • A hozzászóláshoz regisztráció és belépés szükséges

 

Gorkhaan – moderátor – 2010. október 18. 12.56 – előzmény

Ez nem baj, ez a szokás, így kell(ene). Csak egyszer kell egy jó tűzfal scriptet összerakni. Na mindegy.

  • A hozzászóláshoz regisztráció és belépés szükséges

 

aNo (nem ellenőrzött) – 2010. október 18. 14.07 – előzmény

Megfogadom a tanácsod és elkezdem írni azt a scriptet. :)

  • A hozzászóláshoz regisztráció és belépés szükséges

 

gytoth – 2010. október 18. 13.03 – előzmény

Az a baj, hogy - amint írja is az iptables - a nat tábla nem szűrésre való. Tehát helyesen:

iptables -A FORWARD -s 10.10.1.0/24 -p tcp --dport 1000:1800 -j DROP
iptables -A FORWARD -s 10.10.1.0/24 -p tcp --dport 1900:65534 -j DROP
iptables -A FORWARD -s 10.10.1.0/24 -j ACCEPT

Viszont valóban úgy jobb, ha alapból mindent tiltunk és ami szükséges, azt engedjük ki. Ebben az esetben:

iptables -F FORWARD
iptables -P FORWARD DROP
iptables -A FORWARD -s 10.10.1.0/24 -p tcp --dport "ide jön az engedélyezett port" -j ACCEPT
iptables -A FORWARD -s 10.10.1.0/24 -p tcp --dport "ide jön az engedélyezett port" -j ACCEPT
stb.

Nem tudom, mi állítgatja neked csomagszűrést (Firestarter?), de figyelj rá, hogy ne írja felül, amit beírsz szabályt.

  • A hozzászóláshoz regisztráció és belépés szükséges

 

aNo (nem ellenőrzött) – 2010. október 18. 14.05 – előzmény

Amennyiben nem továbbított csomagról van szó - tehát a cél egy helyi folyamat - akkor a FORWARD helyett PREROUTING-al kell kiadni a parancsot?

  • A hozzászóláshoz regisztráció és belépés szükséges

 

gytoth – 2010. október 18. 14.40 – előzmény

A FORWARD lánc azt szabályozza, hogy miképpen bánjon a kernel az átmenő csomagokkal, tehát azokkal amelyeknek sem a forrása sem pedig a célja nem az adott gép.

A PREROUTING, POSTROUTING pedig címfordításra használandó attól függően, hogy útválasztás előtt vagy pedig után natolunk.

Próbáld konkrétan leírni, mi a célod!

  • A hozzászóláshoz regisztráció és belépés szükséges

 

aNo (nem ellenőrzött) – 2010. október 18. 15.00 – előzmény

PC1 az asztali gép, a PC2 a router-ként használt gép.
PC2-nek van két hálókártyája eth0 -> LAN, eth1 WAN ként használva.
PC1 a PC2 eth0-ján van.

1. feltétel
PC1-ről csak az engedélyezett szolgáltatások mehessenek ki a netre PC2-n keresztül.
Ezt fent kitárgyaltuk. Ezt már értem.

2. feltétel
PC1 elérhesse a PC2-n futtatott folyamatokat pl.: SSH, FTP, stb.
(Ha jól tudom ide kellene a PREROUTING.)

3. feltétel a PC2-n futtatott folyamatok elérhessék a netet.

  • A hozzászóláshoz regisztráció és belépés szükséges

 

gytoth – 2010. október 19. 7.31 – előzmény

2. feltétel
Ez a PC2 szempontjából az INPUT láncot érinti az eth0 interfészen. Ha te magad vagy az asztali gép gazdája (és megbízol magadban :) ), én itt nem korlátoznék semmit:

iptables -A INPUT -s 10.10.1.0/24 -i eth0 -j ACCEPT

Prerouting ide nem kell, hiszen ahhoz a géphez szánod a csomagokat, amik benne vannak a tcp fejlécben.

Tegyük fel, hogy a PC1-en futtatsz egy szervert a 10000 porton, amit el kell érned kivűlről. Ekkor a PC2-n a szabály:
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 10000 -j DNAT --to 10.10.0.1

3. feltétel
Ez pedig a PC2 eth1-es interfészén az OUTPUT lánccal kapcsolatos.

Az alapokat tanulmányozd át mégegyszer:
http://pcforum.hu/cikkek/111/Linux+kernel+alapu+csomagszures+IPTABLES-sz...

  • A hozzászóláshoz regisztráció és belépés szükséges

 

aNo (nem ellenőrzött) – 2010. október 19. 15.52 – előzmény

Köszönöm szépen a sok segítséget.

Andor

  • A hozzászóláshoz regisztráció és belépés szükséges

 

Mosaic – 2011. február 3. 11.09

Sziasztok!
DHCP szervert készítettem, az működik!
Viszont a kliens nemtud internetezni.
Amit el szeretnék érni, hogy internetezni lehessen, de torrent, stb. ne. A következőt csináltam, biztosan rossz, de nem tudom, hogy mi hiányzik:

# Generated by iptables-save v1.4.4 on Thu Feb 3 10:58:18 2011
*nat
:PREROUTING ACCEPT [1063:114611]
:OUTPUT ACCEPT [64:6568]
:POSTROUTING ACCEPT [2:120]
-A POSTROUTING -o eth0 -j MASQUERADE
-A POSTROUTING -o eth1 -j MASQUERADE
COMMIT
# Completed on Thu Feb 3 10:58:18 2011
# Generated by iptables-save v1.4.4 on Thu Feb 3 10:58:18 2011
*mangle
:PREROUTING ACCEPT [13380:8984305]
:INPUT ACCEPT [634:104239]
:FORWARD ACCEPT [12537:8862651]
:OUTPUT ACCEPT [561:168014]
:POSTROUTING ACCEPT [13069:9026049]
COMMIT
# Completed on Thu Feb 3 10:58:18 2011
# Generated by iptables-save v1.4.4 on Thu Feb 3 10:58:18 2011
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -p tcp -m multiport --dports 20,21,22,80,443,10000 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -j DROP
-A FORWARD -i eth0 -o eth1 -j ACCEPT
-A FORWARD -i eth1 -o eth0 -j ACCEPT
-A FORWARD -s 87.229.26.244/32 -i eth1 -j DROP
-A FORWARD -s 194.71.107.15/32 -i eth1 -j DROP
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT
-A OUTPUT -j DROP
COMMIT
# Completed on Thu Feb 3 10:58:18 2011

Először webminen keresztül próbáltam beállítani a tűzfalat, de mint kiderült két fájlból vette a szabályokat és mindig megszakadt a net.
Végül konzolos módban kezdtem újra a beállítást és a fenti beállítással most működik a net, de nem vesz figyelembe semmit, mivel a FORWARD részbe a következőket tettem: -A FORWARD -i eth0 -o eth1 -j ACCEPT
-A FORWARD -i eth1 -o eth0 -j ACCEPT
Ezzel jóformán megadtam neki, hogy mindent figyelmen kívül hagyjon és mehet minden. Ha e kettőt kiveszem, akkor csak a belső hálóra jók a szabályok, tehát a multiportos rész. Segítsetek, mi lehet a gond. Az eth0 megy az internet felé, az eth1 pedig a kliensre. Weboldalakat is tiltani szeretnék, de most ezt is figyelmen kívül hagyja.

  • A hozzászóláshoz regisztráció és belépés szükséges

 

Hozzászólás-megjelenítési lehetőségek

A választott hozzászólás-megjelenítési mód a „Beállítás” gombbal rögzíthető.
© 2007–2020. Magyar Ubuntu Közösség.
Az Ubuntu a Canonical bejegyzett védjegye.
Az ubuntu.hu az fsf.hu kiszolgálóin fut.