Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

ips im lan filtern und z.T. sperren

Alles rund um das Internet, Internet-Anwendungen (E-Mail, Surfen, Cloud usw.) und das Einrichten von Netzwerken einschl. VPN unter Linux

Moderator: Moderatoren

Antworten
jk47
Newbie
Newbie
Beiträge: 15
Registriert: 1. Jan 2005, 16:53

ips im lan filtern und z.T. sperren

Beitrag von jk47 »

Moin Moin und ein frohes neues Jahr!

ich habe einen Linux router mit Dsl flatrate und das funktioniert auch alles.
Der Router ist an das Lokale Netzwerk angeschlossen, aus dem nur ausgesuchte IPs über den Router ins Internet gehen können sollen.

Also viele viele PCs im Lan und nur einen Handvoll sollen geroutet werden.
Wie kann ich das am einfachsten realisieren?
Ich hab wenig bis keine Ahnung von Linux, ich habe SuSe 9.0 installiert, und am besten komme ich mit Programmen zurecht, die eine grafische Oberfläche haben.

Ich habe was über "ipfwadm" gelesen, finde den Befehl aber nicht auf dem Router system.

Bis denne und Dank im Vorraus

Jan
gaw
Hacker
Hacker
Beiträge: 464
Registriert: 28. Sep 2004, 16:33

Beitrag von gaw »

Danke für die Grüße ich wünsche dir ebenfalls ein frohes neues Jahr.

"ipfwadm" ist schon lange out, es war typisch für den Kernel 2.0. Danach gab es ipchain, das wird für den Kernel 2.2 benutzt und heute ist iptables state of the art.

Mit iptables lässt sich viel kontrollieren unter anderem auch Pakete mit bestimmten IP-Adressen. Die Optionen -s und -d erlauben einzelne Hostadressen als auch Netzwerkadressen mit der jeweiligen Maske in beiden üblichen Notationsformen (z.B.: 192.168.1.0/24 bzw. 192.168.1.0/255.255.255.0)

Ein einfache Möglichkeit dein Problem anzugehen, ohne zuviele Anweisungen mit einzelnen Adressen zu formulieren (in einer Schleife ist das aber auch kein Problem) besteht darin eine geeignte Netzwerkadresse zu finden die über Subnetting dein Netz aufteilt. Mit
/usr/sbin/iptables -A INPUT -s 192.168.1.0/25 -i eth0 -j ACCEPT

würde man alle Pakete der Rechner 192.168.1.1 -192.168.1.125 auf die Firewall lassen oder mit
/usr/sbin/iptables -A OUTPUT -d 192.168.1.127/25 -i eth0 -j DROP
alle Pakete der Rechner 192.168.1.128-192.168.1.254 verwerfen, die von der Firewall ins lokale Netz wollen. So könntest du die Rechner nach IP-Adressen geeignet aufteilen und nur einen Teil ins Netz lassen.

Es geht aber auch über einen gültigen Domainnamen und einer Schleife, beispielsweise in einem Skript:

Code: Alles auswählen

#!/usr/bin/sh
....
....
BADHOSTS="nastyboy.yourdomain scriptkiddy.yourdomain  peepingtom.yourdomain"

for BH in $BADHOSTS 
do
     /usr/sbin/iptables -A FORWARD -s $BH -o ppp0 -dport http -j DROP
done
....
Ein solche iptables-Anweisung würde auf einen Router den Kiddies auf nastyboy.yourdomain, scriptkiddy.yourdomain und peepingtom.yourdomain das Surfen abstellen indem Pakete mit dem Zielport 80 die über die Firewall (Chain FORWARDING) aus dem lokale Netz ins Internet wollen abgelehnt werden.

Schwierig ist es IP-Pakete userbasiert zu erlauben, weil dass ein Paketfilter wie iptables selber nicht vermag.

Das lässt sich mit einem Proxy wie squid besser realisieren, wenn es in erster Linie um das Surfen geht.


mfG
gaw
jk47
Newbie
Newbie
Beiträge: 15
Registriert: 1. Jan 2005, 16:53

Beitrag von jk47 »

jou, danke,

noch ne ganz blöde frage zu den bit-Angaben der ips:

192.168.1.127/25 : <== dieses /25, was genau heißt das?

Heißt das, dass alle ips, deren erste 25 bit übereinstimmen gemeint sind?

Könnte ich das wie folgt eingeben?

Code: Alles auswählen

/usr/sbin/iptables -A OUTPUT -d 192.168.0.0/16 -i eth0 -j DROP
/usr/sbin/iptables -A INPUT -s 192.168.1.10 -i eth0 -j ACCEPT
/usr/sbin/iptables -A INPUT -s 192.168.12.130 -i eth0 -j ACCEPT
/usr/sbin/iptables -A INPUT -s 192.168.241.15 -i eth0 -j ACCEPT
/usr/sbin/iptables -A INPUT -s 192.168.33.123 -i eth0 -j ACCEPT
So dass alle bis auf auserwählte zugriff haben?


Jan
Benutzeravatar
Martin Breidenbach
Ultimate Guru
Ultimate Guru
Beiträge: 5632
Registriert: 26. Mai 2004, 21:33
Wohnort: N 50.17599° E 8.73367°

Beitrag von Martin Breidenbach »

jk47 hat geschrieben: 192.168.1.127/25 : <== dieses /25, was genau heißt das?

Heißt das, dass alle ips, deren erste 25 bit übereinstimmen gemeint sind?
Ja. Guckst Du hier:

http://www.linux-club.de/viewtopic.php?t=16741

Zu Iptables findest Du z.B. auf www.iptables.org Lesestoff (auch in Deutsch).
Nicht Böse sein ! Der Onkel macht doch nur Spaß !
jk47
Newbie
Newbie
Beiträge: 15
Registriert: 1. Jan 2005, 16:53

Beitrag von jk47 »

So, ich habs geschafft:

Ich hab alles unter FORWARD geflusht und für jede ip in beide Richtungen (eth0 <--> anywhere) frei gegeben.

Danke für die Hilfe.

Jan
jk47
Newbie
Newbie
Beiträge: 15
Registriert: 1. Jan 2005, 16:53

Beitrag von jk47 »

Es klappt doch nicht ganz so, wie ich es mir vorgestellt habe.

Erstens werden einge Seiten nicht angezeigt.
Zweitens ist der Internetzugang langsam.

Gibt es da noch einen Tipp, wie man ausgewählte ips fowrardet und den Rest nicht?

Jan
Benutzeravatar
Martin Breidenbach
Ultimate Guru
Ultimate Guru
Beiträge: 5632
Registriert: 26. Mai 2004, 21:33
Wohnort: N 50.17599° E 8.73367°

Beitrag von Martin Breidenbach »

jk47 hat geschrieben:Erstens werden einge Seiten nicht angezeigt.
Zweitens ist der Internetzugang langsam.
Dann schau mal hier:

http://www.linux-club.de/viewtopic.php?t=16677
jk47 hat geschrieben:Gibt es da noch einen Tipp, wie man ausgewählte ips fowrardet und den Rest nicht?
Du kannst bei iptables Regeln auch Quell- und Ziel-IP-Adresse angeben.

Mir ist leider nicht ganz klar was Du machen willst.
Nicht Böse sein ! Der Onkel macht doch nur Spaß !
jk47
Newbie
Newbie
Beiträge: 15
Registriert: 1. Jan 2005, 16:53

Beitrag von jk47 »

ich möchte bestimmte ips aus dem lan davon abhalten, über den router ins internet zu kommen.

Ich hab zuletzt folgende Konfiguration ausprobiert:

Code: Alles auswählen


iptables -F FORWARD
iptables -P FORWARD DROP


iptables -A FORWARD -s 10.238.0.28 -i eth0 -j ACCEPT	
iptables -A FORWARD -s 10.238.103.100 -i eth0 -j ACCEPT	
iptables -A FORWARD -s 10.238.105.125 -i eth0 -j ACCEPT	
iptables -A FORWARD -s 10.238.105.102 -i eth0 -j ACCEPT	
iptables -A FORWARD -s 10.238.106.31 -i eth0 -j ACCEPT	#
iptables -A FORWARD -s 10.238.184.105 -i eth0 -j ACCEPT	

iptables -A FORWARD -d 10.238.0.28 -j ACCEPT
iptables -A FORWARD -d 10.238.103.100 -j ACCEPT	
iptables -A FORWARD -d 10.238.105.125 -j ACCEPT	
iptables -A FORWARD -d 10.238.105.102 -j ACCEPT	
iptables -A FORWARD -d 10.238.106.31 -j ACCEPT	
iptables -A FORWARD -d 10.238.184.105 -j ACCEPT	


Das Problem war, das einige Internetseiten nich mehr zu öffnen waren.
Weißt du woran sowas liegen könnte (sicher an mir...)?

Sonst mal anders herum gefragt, was muss alles in den iptables stehen, damit das Routing funktioniert?
Benutzeravatar
Martin Breidenbach
Ultimate Guru
Ultimate Guru
Beiträge: 5632
Registriert: 26. Mai 2004, 21:33
Wohnort: N 50.17599° E 8.73367°

Beitrag von Martin Breidenbach »

Gibts auch eine Regel für Antwortpakete ?
Nicht Böse sein ! Der Onkel macht doch nur Spaß !
jk47
Newbie
Newbie
Beiträge: 15
Registriert: 1. Jan 2005, 16:53

Beitrag von jk47 »

Wieso? Ich dachte, alles was die angegeben Adressen im LAN als Ziel hat und von außen kommt, wird so weitergeleitet. Wenn so Antwortpakete nicht reguliert werden, dann nicht.

Die meisten Internetseiten wurd ja auch geladen, nur halt nicht sowas wie ebay.de.
Antworten