• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Router einrichten

Zonk

Newbie
Hallo zusammen,

Ich suche euren Rat nachdem ich mich durch tausende von Suchergebnissen gewuehlt hab und leider nichts passendes gefunden hab.

Ich bin auf der Suche nach eimem fertigen Script mit dem ich den clients den internetzugang ueber meinen suse 9.3 Server ermoeglichen kann.

Dabei ist mir wichtig das es ein einfaches Script ist um selbst aenderungen vornehmen zu koennen.

Ich moechte, einzelne Ports sperren/ oeffnen koennen, einzelnen Clients den Zugriff ins Internet verweigern und (das faend ich ein Nettes extra) eine Anfrage z.B auf Port 80 auf eine lokale Webseite weiterleiten.

Um kurz zu erklaeren um was es geht.

Ich brauch das Script, da ich hin und wieder mal kleinere Lan-Parties mach. Die Clients dürfen zwar ins Internet aber ueber den Router, da der per W-Lan ein entfernten Hardware Router anspricht. Notfalls moecht ich einzellne Rechner sperren koennen (und auch Ports). Die Funktion mit dem Umleiten faend ich deshalb ganz gut um meine Besucher dazu zu zwingen fuer HTTP meinen Proxy zu nehmen. (Die umleitung auf eine Seite auf der das erklaert wird)

Leider hab ich keine Zeit wegen meiner Ausbildung mit etwas selbst zu Scripten und bin deshalb auf euch angewiesen.

Ich hoffe ihr kennt ein vergleichbares Script.
 

simi

Newbie
Vielleicht könntest du noch etwas genauer deine Softwareausstattung und die Architektur deines Netzes sagen. Und über das, was das Script machen soll. Soll es die Clients automatisch für den Zugang konfigurieren?
 

framp

Moderator
Teammitglied
Am einfachsten und auch sichersten ist, Du kaufst Dir eine weitere NIC und schliesst dort die LAN Party Rechner an. Dann musst Du dieses NIC mit iptables 2 forward rules freischalten und alles ist gegessen.
Im anderen Fall musst Du Dich schon mit iptables befassen und eigene Rules erstellen :roll: SuFu im Forum liefert diverse Hits und Links.
 
OP
Z

Zonk

Newbie
Na gut.

Vollgende Dienste hab ich schon aktiv und die funktionieren Hervoragend:

- Einen DHCP Server
- Einen DNS SERver
- Einen Squid Proxy Server
- Einen Apache Webserver

Der IP Adressbereich fuer eth0 wäre 10.2.2.0 (Hier sind die Clients)
Der IP Adressbereich fuer ath0 wäre 10.1.1.0 (wlan)

Der spaeter als Router eingesetzte Rechner ist DHCP, DNS und Router zugelich. Er gibt den Clients die IP Adresse sowie die weiteren Informationen, u.a. den Gateway automatisch.

Der Gateway ist 10.2.2.2 (IP des "alles" Servers)

Um den HTTP verkehr der Clients weiter einschraenken zu koennen (ihr glaubt garnicht nach was die alles in Google suchen) hab ich einen Proxy am laufen.

Jetzt soll der Internetverkehr Verbindungen wie ICQ, AIM, IRC, Half-Life, HTTP, POP3, SMTP, SSH, bla bla bla,... nicht behindern.

Optimal wäre, wenn ich nun anfragen die Port 80 verwenden an den lokalen Apache umleiten koennte auf dem dann eine Seite liegt, dass HTTP Verkehr nur über Proxy moeglich ist. - Das ist aber Optimal. Wenn das zu aufwendig ist oder nicht moeglich ist - egal, dann halt nicht.

Das wars im Grunde was ich ueber mein Netzwerk sagen kann.
 
OP
Z

Zonk

Newbie
Mir ist es aber mit iptables wesentlich lieber, da ich so nur die Gateway IP per DHCP verteilen muss.

Anders ist das leider sehr kompliziert, da dann jeder Client bei jedem Programm die Proxydaten eintragen muss. (Half-Life, ICQ, etc.) Das ist meist mit viel Arbeit verbunden und bleibt dann noch an mir haengen (weill viele das nicht kapieren)

Es waere zu erwaehenen, dass die Clients ueberweigend Windoof Rechner sind.
 

framp

Moderator
Teammitglied
Was bei Dir noch fehlt ist ein socks server (DANTE), denn es gibt Programme, die

1) nicht mit einem Proxy arbeiten koennen aber mit socks
2) keine Einstellung haben, dass ihr Traffic ueber einen Proxy laufen soll
3) weder noch koennen (im Wesentlichen games)

Fuer 2) gibt es von Hummingbird einen freien WIN socks client. Der sorgt dafuer, dass alle WIN Programme transparent einen socks server benutzen. Auch LINUX laesst sich socksifizen.

Fuer 3 gibt es nur explizite iptable rules

Bzgl client setup wuerde ich eine Seite bei deinem lokalen Apache erstellen wo alle Settings beschrieben werden.
 
OP
Z

Zonk

Newbie
Ich wuerde gerne moeglichkeit 3. vorsehen. Die Iptables, da an LAN-Parties die meisen Anwedungen ohnehin Games sind.

Es muss doch gar nicht viel sein. Mitlerweile waer ich ja schon froh, wenn ich ein simples Beispiel haette, dass ueberhaupt irgend was geroutet wird.

Irgend etwas nettes kleines in iptables, dass sich spaeter leicht erweitern laesst.
 

simi

Newbie
Code:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
Dieser Befehl leitet beispielsweise alles anfragen von port 80 nach Port 3128 um.
 

framp

Moderator
Teammitglied
Code:
/usr/sbin/iptables -t nat $cmd POSTROUTING -o dsl0 -s 192.168.100.0/255.255.255.0 -j MASQUERADE

/usr/sbin/iptables $cmd FORWARD -m state --state ESTABLISHED,RELATED -p all -i dsl0 -o nic3 -j ACCEPT
/usr/sbin/iptables $cmd FORWARD -m state --state NEW,ESTABLISHED,RELATED -p all -o dsl0 -i nic3 -j ACCEPT
$cmd = -I oder -D (insert/delete)
dsl0 ist dsl modem
nic3 ist LANPARTY nic
Mit -d bzw -s musst Du dann den IP Range deiner LANPARTY IPs noch angeben.
Aber je nach FW rules koennen diese IPs auch u.U auf Dein lokales Netz zugreifen:!: :!: :!:
 
Oben