PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Masquerading Suse 7.1


Linuxtom
05.08.01, 10:12
Hi!

Was muss ich auf dem Client einstellen um über Masquerading ins Internet zu kommen ?
Suse sagt der Personal Firewall unter Suse 7.1 reicht aus und man muss auf dem Server nur eine Einstellung in /etc/rc.config.d/security.rc.config verändern - nämlich REJECT_ALL_INCOMING_CONNECTIONS in ippp0 masq
um das Masquarading zu ermöglichen .
Das habe ich gemacht.
Nur was muss ich auf dem Client wo genau einstellen ,damit die Pakete umgelenkt werden ?

micha
05.08.01, 13:19
Hallole,

Das StandardGateway Deines Clienten muss auf die IP Deines Servers zeigen.
Die Konfiguration ist je nach OS Deines Clients verschieden:

-Windows: Systemsteuerung->Netzwerk.....
-Linux: entweder mit "route" oder Yast/Linuxconf/...

Gruß micha

Linuxtom
05.08.01, 13:49
Hi !

Der Client läuft ebenfalls unter Suse 7.1.
Was genau muss ich unter /etc(route eingeben ?
Mein Host hat die IP 192.168.100.99 ,der Client 192.168.100.95
Ach ja, der Host läuft unter Kernel 2.4.0 - muss ich da auch noch was beachten ?

Danke erstmal für Deine Antwort.

micha
05.08.01, 15:01
Ruf mal in der Konsole Yast1 auf, unter:
Administration des Systems->Netzwerk konfigurieren->Netzwerk Grundkonfiguration

kannst Du mit F6 die IP-Addressen einstellen. Dort müsste es auh nen Eintrag für "StandardGateway" geben, in den Du die IP des Servers einträgst. Danach noch das Netzwerk neu starten.

Gruß micha

Linuxtom
05.08.01, 16:06
Also das habe ich eingetragen ,aber auf meinem Client tut sich immer noch nichts.
Irgendwas fehlt wohl noch ...
Aber was ?

micha
05.08.01, 16:22
Gib mal "/sbin/route -n" ein, die Ausgabe müsste so aussehen:


Kernel IP Routentabelle
Ziel Router Genmask Flags Metric Ref Use Iface
192.168.100.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 192.168.100.99 0.0.0.0 UG 0 0 0 eth0


Der zweite Eintrag in der Tabelle ist das Gateway, das auf Deinen Server zeigen muss. Wenn das nicht drin ist, gib mal folgendes ein:


/sbin/route add default gw 192.168.100.99


Wenn's jetzt funktioniert, trägst das Gateway in die /etc/route.conf ein:


default 192.168.100.99


Gruß micha

Linuxtom
05.08.01, 16:47
Also :

Auf dem Client habe ich route -n aufgerufen und die Ausgabe war exakt so wie Du sie beschrieben hast ausser unter Metric in der unteren Zeile steht eine 1 statt einer 0 .

Sollte der Client dann doch richtig konfiguriert sein ?

Wenn ich route -n auf dem Host ausführe ,kommt folgendes Ergebnis zu stande:

195.126.182.24 0.0.0.0 255.255.255.255 UH 0 0 0 ippp0
192.168.100.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 195.126.182.24 0.0.0.0 UG 0 0 0 ippp0

Wo kommen denn die Adressen her ,die ich nirgends eingegeben habe (195.126.182.24 usw) ?

micha
05.08.01, 17:34
Also die Addresse, die Du nicht eingegeben hast, ist die IP Deines Providers, die bei der Einwahl automatisch in die Routingtabelle eingefügt wird ( Dein Server muss ja auch wissen, wohin er die Pakete nach draussen schicken muss).
Die beiden Routingtabellen sind aber in Ordnung, deswegen würd ich mal Dein Masquerading nochmal überprüfen.

Benutzt Du ipchains oder iptables als Paketfilter ?

Linuxtom
05.08.01, 17:36
uuuops - was sind denn das für Programme ?

Ich bin in der Beziehung wohl ein vollkommener Laie - Ich habe nur die Einstellungen gemacht ,die ich oben beschrieben habe.
Was hat es denn mit diesen Paketfiltern auf sich ?

micha
05.08.01, 18:33
Mit diesen 2 Programmen wird u.a. das Masquerading ermöglicht. "ipchains" ist die Version für den 2.2.x-Kernel, "iptables" der Nachfolger für den 2.4.+ Kernel. Allerdings läuft "ipchains" trotzdem noch mit dem neuen Kernel.

Die Einstellung in der rc.config, die Du gemacht hast, benutzt SuSE, um einen der beiden Paketfilter während der Einwahl damit zu füttern und startet ihn anschließend.

Gib mal "whereis ipchains" ein. Bekommst Du als Ausgabe einen Pfad zu dem Programm, ists installiert, ansonsten versuchst mal das gleiche mit "iptables".

Sollte "ipchains" installiert sein, verbinde Dich mal mit Deinem Server ins Internet und poste dann mal die Ausgabe von

ipchains --list -n


Hast Du "iptables", müsst ich erst mal nachschlagen, ist bei mir nicht installiert ;)

Gruß micha

Linuxtom
06.08.01, 16:45
Hallo !

Leider war ich gestern Abend schon offline - Tatort kam und da habe ich die eine Flimmerkiste gegen die Andere getauscht :-))

Hier nun die Ausgabe von Ipchains :

Chain input (policy ACCEPT):
target prot opt source destination ports
devchain all ------ 0.0.0.0/0 0.0.0.0/0 n/a
Chain forward (policy ACCEPT):
target prot opt source destination ports
maschain all ------ 0.0.0.0/0 0.0.0.0/0 n/a
Chain output (policy ACCEPT):
Chain rulchain (1 references):
target prot opt source destination ports
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> 111
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> 704
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> 37
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> 518
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> 517
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> 32770
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> 2049
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> 32768
ACCEPT udp ------ 195.126.182.2 0.0.0.0/0 53 -> *
ACCEPT udp ------ 195.126.210.2 0.0.0.0/0 53 -> *
DENY icmp ------ 0.0.0.0/0 0.0.0.0/0 5 -> *
DENY udp ------ 0.0.0.0/0 0.0.0.0/0 * -> *
REJECT tcp -y--l- 0.0.0.0/0 0.0.0.0/0 * -> *
Chain devchain (1 references):
target prot opt source destination ports
rulchain all ------ 0.0.0.0/0 0.0.0.0/0 n/a
Chain maschain (1 references):
target prot opt source destination ports
MASQ all ------ 0.0.0.0/0 0.0.0.0/0 n/a

Da stehn mir ein paar Nullen zu viel für meinen Geschmack oder ?

Ich bin jetzt zwei Tage beruflicb wech - aber am Donnerstag abend geht´s mit Sicherheit weiter - oder heute noch ...

Auf alle Fälle weiterhin vielen Dank !

Thomas

micha
06.08.01, 18:01
Also,

die Nullen sind schon in Ordnung, das bedeutet so viel wie alle IP's und wie Du in der letzten Zeile siehst, ist Masquerading auch aktiviert.
Es könnte noch sein, daß der IP-Patch für dynamische IP-Adressen nicht aktiviert ist.
Wähl Dich mal ein und gib als root folgendes ein:

echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr


Du kannst das ganze Masquerading auch mal von Hand, ohne die SuSE-Firewall aufsetzen, IMHO der bessere Weg, da Du dadurch erst verstehst, um was es da geht (nach viel lesen allerdings ;) )
Dazu solltest Du 2 Pakete löschen, die Dir sonst in die Quere kommen:
SuSEFirewall
personal-firewall

Dann kannst Du Dich an das Masquerading-Script machen. Die Seite dazu findest Du hier (http://members.home.net/ipmasq) und zwar unter IP-Masquerade-Howto. Für die Funktionsweise von ipchains kannst Du Dir auch mal diese (http://www.pl-berichte.de/work/firewall/index.html) Seite durchlesen.
Hast Du das Script erstellt, machst Du es ausführbar (chmod 700 DATEI). Danach erstellst Du die Datei /etc/ppp/ip-up.local und rufst aus dieser Datei Dein Script auf (ip-up.local wird bei jeder Einwahl automatisch aufgerufen).

Gruß micha

P.S.: Ich fahr ab Freitag für 3 Wochen in Urlaub, also net wundern, wenn keine Antwort mehr kommt ;)

Linuxtom
06.08.01, 18:36
Hi Micha !

Also jetzt funktionierts !
Ich habe unterschiedliche /etc/resolv.conf Dateien auf Client und Host gehabt - da bin ich aus Zufall durch eine andere Beschreibung aus dem Netz gestossen.

Übrigends - mein Masquerading läuft scheinbar mit Personal Firewall - (Einfache Filterung oder so .. )
Na ja egal - Thankx noch mal und schönen Urlaub...
Ich habe noch drei Wochen hin - dann gehts auch noch mal ab ...

Bis dann ... Thomas