[fli4l] Frage ?==?utf-8?Q?zur Firewall (Input-Chain)

K. Dreier usenetforum at gmx.net
So Aug 16 17:47:03 CEST 2015


Hallo Christoph,

> [...] musst du ein ganz normales DNAT nehmen, also:
> 
> PF_PREROUTING_x='if:IP_NET_2_DEV:any any any:1234 DNAT:127.0.0.1'

Sowas in der Art hatte ich versucht, allerdings offensichtlich mit der
falschen Syntax. Dennoch wird das Gewünschte (siehe unten) auch damit
nicht erreicht: Ich kann sogar sämtliche Internetseiten normal
erreichen, auch wenn der SOCKS-Proxy gar nicht auf dem fli4l initiiert
wurde. Das verstehe ich nun überhaupt nicht.

> nicht verstanden, was du eigentlich erreichen willst. Ist dein Ziel
> eine Art 
> transparenter SOCKS-Proxy?

Ja, wobei nicht zwingend transparent. Es wäre auch ok, wenn ich in
einem client explizit einen Proxy setzen muß.

> Also die Clients nutzen z.B. HTTP oder was auch 
> immer, und der fli4l leitet diese über den SOCKS-Proxy, der von
> plink oder 
> ss5 bereitgestellt wird, um?

So die Idee, ja. Es geht letztlich darum, daß wenn auf einem
(bestimmten) client der Proxy eingerichtet wurde (bzw. ohne das
explizite Einrichten, wenn es transparent läuft) die aufgerufene
Webseite/"Internetdienst" nicht die WAN-IP des fli4l sieht, sondern jene
vom externen Server. D.h. also jener Rechner weit draussen im Internet,
zu dem vom fli4l der SOCKS-Proxy aufgebaut wurde.

Ich mache das ständig mit meinen PCs, völlig problemlos: Ich initiiere
auf dem PC einen SSH-Tunnel zu einem externen Rechner und aktiviere
dabei zugleich auf einem bestimmten Port einen SOCKS-Proxy. Setze ich
nun im Browser den (SOCKS-)Proxy auf "localhost 1234", dann erkennt die
liebe weite Welt des Internet nicht mehr meine WAN-IP des lokalen
Providers (jene des eth0 am fli4l), sondern jene vom remote Server.
Jetzt habe ich aber einen client, der kein PC ist und auch nur einen
"normalen" Proxy (also nicht SOCKS) ermöglicht. Es muß doch möglich
sein, daß wenn dieser client eine Anfrage "fürs Internet" stellt,
fli4l sie nicht nur wie normal weiterleitet, sondern ein auf dem fli4l
laufender SOCKS-Proxy die eingehenden Pakete abfängt und durchschleust
an den externen Rechner. Warum sollte das nicht möglich sein? Falls es
möglich ist: wie zum Henker erreiche ich das?

> Wie Stefan in seinem Beitrag schrieb, solltest 
> du zuerst versuchen, den Zugriff auf SOCKS-Proxy "an sich" zum
> Laufen zu 
> bringen, bevor du Firewall-Regeln für transparente Port- und 
> Adressumsetzungen u.ä. entwickelst. Letztere sind nämlich
> gelegentlich etwas 
> "tricky"...

Ich habe keine Möglichkeit zu testen, ob der auf dem fli4l initiierte
SOCKS-Proxy läuft, bzw ich wüßte nicht wie. Zugriff von (PC-)clients
ist ja gerade entweder nicht möglich/Fehler oder - wie mit deinem
Vorschlag oben - ohne jegliche Wirkung, d.h. ich habe immer noch die
"normale" WAN-IP meines lokalen Providers.
Die Verendung vom Paket opt_proxy hilft auch nicht, da z.B. mittels
"SS5=yes" ich das gleiche Ergebnis habe wie bei deinem Vorschlag oben.

Ich hoffe, daß mein Wunsch nun verständlich beschrieben wurde, sonst
bitte einfach wieder nachfragen. :)

Gruß
Klaus


Mehr Informationen über die Mailingliste Fli4L