GrandAdmiralThrawn
XP Nazi
|
Hallo!
Ich habe folgendes Problem: Ich soll eine Firewall (iptables) realisieren, was an sich nicht so schwer wäre, wenn ich SNAT/DNAT einsetzen könnte, aber ich glaube so einfach wird's hier nicht.
Ich habe einen Raum mit 35 Rechnern, die alle in einem bestimmten IP Pool sitzen, sagen wir Mal das wäre 192.168.0.0/24. Nehmen wir weiters an, die IPs dieser Rechner wären von 192.168.0.10 bis 192.168.0.45 vergeben. Ihr eingetragener Internetgateway sei 192.168.0.1!
Und der REST des Netzwerkes, von dem ich abschotten soll, sitzt ebenfalls im Pool 192.168.0.0/24! Also im selben Netz.
Der ganze Raum ist über einen eigenen Switch verbunden, und von dort geht ein einzelnes Kabel zum Rest der Infrastruktur, also ein Uplink.
Nun soll ich an diesem einzelnen Kabel einen Firewallrechner "anhängen", der bestimmte Verbindungen zuläßt und den Rest filtert. Nur darf ich die IP Adressen in dem Raum nicht verändern! Ich kann also die Netzwerke nicht einfach trennen, und mit NAT routen..
Frage ist jetzt: Wie macht man sowas? Eine Netzwerkbrücke mit bridge-utils einrichten (eine Karte zum Raum, die zweite Karte zum Switch-Uplink?) und dann mit iptables darauf filtern?! Oder wie geht sowas sonst? Kann man vielleicht trotzdem mit SNAT/DNAT arbeiten? Ich habe momentan keinen Plan.
Danke vielmals!
Bearbeitet von GrandAdmiralThrawn am 11.08.2010, 08:49
|
Neo-=IuE=-
Here to stay
|
die frage ist: greifen die clients (35pcs) auf die server(rest) zu oder ist es bidirektional? dann könnte man die src natten bzw. sogar hinter einer adresse hiden, aber wenn in beide richtungen, dann muss man in kauf nehmen, dass bei einem nat das eine netz "virtuell" (durch nat) mit anderen ip adressen erreichbar ist, auch wenn sie doch noch die gleichen haben (was auch immer das für einen sinn haben soll)
darf man erfahren warum die ips nicht geändert werden sollen?
edit:
bzw. kann man vielleicht durch ein ändern der subnetmask die netze doch richtig trennen? oder liegen sie zu knapp beisammen? bzw. ist es vielleicht auch wieder "verboten"?
|
GrandAdmiralThrawn
XP Nazi
|
Ich darf es schlichtweg nicht. Im "äußeren" Netz befinden sich noch andere Services, die verwendet werden sollen (wäre in der FW natürlich auch zu berücksichtigen), darunter Lizenzserver, Win2003 Domaincontroller, auf dem die Clients angeblich per IP irgendwie identifiziert werden usw. Mir wurde schlichtweg untersagt, die IPs zu ändern, und daran kann ich leider nichts rütteln, weil ich nicht Verwalter dieses Raums bin. Bei einem anderen Raum BIN ich Verwalter, und habe dieses Problem durch Netzwerktrennung gelöst (internes Netz 10.20.15.0/16). Aber das geht hier nicht.. Ich habe mich kurz künstlerisch betätigt, um es etwas besser zu veranschaulichen: Ich weiß nur nicht, wie man in so einem Fall mit iptables tut... Ich hatte schon vermutet, ich würde eine Netzwerkbrücke brauchen. Also das Teil soll nicht routen, sondern wirklich nur Traffickontrolle betreiben und filtern!
Bearbeitet von GrandAdmiralThrawn am 11.08.2010, 08:54
|
Neo-=IuE=-
Here to stay
|
wie ist es mim zugriff müssen die pcs im computerraum auf die anderen sachen zugreifen, oder auch umgekehrt?
kann der switch ip interfaces? oder ist er ein reines l2 device?
|
GrandAdmiralThrawn
XP Nazi
|
Auf den Switch habe ich keinen Zugriff (also keinen administrativen), also müssen wir L2 annehmen.
Zudem brauchen wir Firewallprofile, zwischen denen wir dann umschalten. Hierfür haben wir ein kleines PHP Skript gebaut, welches per Webserver am Firewallrechner bereitgestellt wird.
Dann kann ich unterschiedliche Verwendungsprofile per Webseite auswählen, und auf den Raum anwenden (so lösen wir es im von mir verwalteten Raum).
Das heißt, der Vortragende soll im Raum sehr einfach und leicht die Firewalleinstellungen ("Profil") wechseln können per Mausklick.
Deswegen die Linux-Lösung!
Das PHP Skript startet dann einfach am Firewallrechner das entsprechende iptables-Skript, fertig. Solche "Verwendungsprofile" wirds wohl auf Switches nicht geben?
Übrigens ist es je nach selektiertem Profil anders. Bei manchen Profilen müssen die Rechner auch von dem äußeren Netzwerk erreichbar sein. Bei anderen nicht. Diese Erreichbarkeit soll also auch über iptables realisiert werden.
|
Neo-=IuE=-
Here to stay
|
|
othan
Layer 8 Problem
|
Porbier mal mit den Bridge-Utils eine Brücke zu bauen und dann schauen ob du mit iptables etwas filtern kannst.
|
GrandAdmiralThrawn
XP Nazi
|
Hmm, da brauche ich scheinbar noch zusätzlich dieses "ebtables" zu "iptables", um auf der Brücke filtern zu können?!
Von ebtables habe ich noch nie zuvor was gehört. Mit iptables alleine gehts wohl nicht?
Edit: Muß ich wohl testen..
|
Neo-=IuE=-
Here to stay
|
natürlich nicht, wieso sollte ein reines l2 device (bridge) etwas was auf l3 und höher ansetzt weiterleiten
|
Marcellus
OC Addicted
|
Du kannst ja eine bridge aufbauen und dann iptables -P INPUT iprange --src-range 192.168.0.50-192.168.0.254 -j DROP
iptables -A INPUT -j FORWARD
ich hab aber lang nichts mehr mit iptables gemacht, muss so nicht unbedingt stimmen.
|
Neo-=IuE=-
Here to stay
|
wie schon gesagt, bei einer bridge wird ohne zutun natürlich nix an höhere layer weitergereicht, also iptables sieht den traffic gar nicht
|
GrandAdmiralThrawn
XP Nazi
|
Und auf die Member-NICs der Brücke kann man dann wohl auch nicht mehr filtern? Also wenn br0 aus eth0 und eth1 bestünde, kann ich auch auf eth* nicht mehr filtern? Vor ebtables fürcht ich mich, da noch nie damit gearbeitet! Wenn's natürlich ganz gleich funktionieren würde wie iptables.... Edit: Und ohne Brücke geht's gar nicht?
|
COLOSSUS
AdministratorGNUltra
|
Nein, ohne Bruecke geht es nicht, weil du, wenn du alles im selben Subnetz betreibst, in Layer 2 filtern musst. Ein Gateway im TCP/IP-Sinn des Wortes wuerde die Pakete ja nichtmal zu Gesicht bekommen (bei einem geswitchten Netzwerk), weil Pakete im selben Subnetz nicht geroutet werden, und direkt zum Empfaenger gesendet werden. Du muesstest also gewaehrleisten, dass wirklich saemtlicher Traffic von diesen Rechnern immer ueber deine Linux-Bridge druebergeht. Das duerfte ein recht abenteuerliches Unterfangen werden.
Was bedeutet "abschotten" eigentlich im Kontext des ersten Postings?
|
GrandAdmiralThrawn
XP Nazi
|
@"abschotten": Es soll zwei Firewall-Profile geben. Bei einem sollen die Benutzer im Computerraum alles dürfen (im INet surfen etc.).
Also, Computerraum = inneres 192.168.0.0/24 Netz. Rest = äußeres 192.168.0.0/24 Netz.
Beim zweiten Profil sollen nur mehr bestimmte Kommunikationen zu bestimmten Ports auf bestimmten Zielrechnern erlaubt werden. Das können sowohl Zielrechner im "äußeren" 192.168.0.0/24 Netz sein, als auch Zielrechner im Internet hinter dem äußeren Gateway. Zu allen anderen Hosts im Internet und auch im äußeren 192.168.0.0/24 Netz sollen die User nicht mehr kommunizieren dürfen aus dem inneren Netz heraus.
Sichergestellt wäre der Fluß der Daten über die Bridge schon, weil es gar keinen anderen physikalischen Weg mehr zwischen den beiden Teilbereichen des 192.168.0.0/24 Netzes geben kann.
Frage ist nur, ob die Switches auch "lernen", alle Pakete zum äußeren 192.168.0.0/24 Netz über den Uplinkport an meine Brücke zu senden, hmm... die Switches würden ja nicht mehr direkt zusammenhängen..
In Wirklichkeit sollte man das ja echt direkt am SWITCH lösen, der sollte am Uplink Port "firewallen" aber die Möglichkeit haben wir wohl nicht...
Bearbeitet von GrandAdmiralThrawn am 12.08.2010, 11:46
|