Hi,
sitze hier schon seit wochen und versuch mein Debian Gateway/proxy einzurichten, nachdem ich mich mit kleinen fehlern beim Routing und NAT rumgeärgert hatte, häng ich nun beim Proxy fest..
irgendwie scheint das umleiten des ports ( 80 -> 3128 ) nicht zu funktionieren..
hab schon stunden mit google gerungen, und diverse Foren durchstöbert, doch ich finde einfach keine Lösung
(vllt. auch nur falsch gesucht.. ka)
Mache da wohl irgendwo nen denkfehler, oder hab irgendwas vergessen.. Nur komm ich da jetzt nicht mehr weiter und trete auf der stelle
Brauch unbedingt den entscheidenen Tipp oder denkanstoß.....
Debian 40r1
squid 2.6.5-6etch1
iptables 1.3.6.0debian1-5
Also ich versuch mal genauer auf das Problem einzugehen... wenn ihr noch info´s braucht, etc. dann einfach anfordern
Debain als Gateway/Router/Proxy/Webserver für mehrere Netze.
WAN ~ Router(FritzBox) - Gateway/Proxy ~ Clients
Also muss das system einmal das Routing übernehmen, und zudem soll es den http-traffic durch den Proxy schleusen.. und selbst einen http-server zur verfügung stellen können.
Grundlegend wollte ich alle zugriffsbeschränkungen über die IP-tables regeln..
fand ich für mich als gute möglich, alles in einem abzuhandeln.
(funktioniert auch alles soweit, bis auf den transparenten Proxy!)
Der http-traffic aus dem Client-LAN soll dann über den Proxy geschleust werden (später noch über ne blacklist... aber eins nach dem anderen
)
und das ganze dann als transparenten Proxy...
Die Ports (und weiterleitungen) für andere anwendungen sollten dann einfach über die iptables geregelt werden.
Wenn ich den Proxy manuell im Browser vergebe, klappt alles wie gewünscht!!
aber sobald ich den Proxy auf transparent stelle,bzw. die Port-Redirection einschalte, will´s irgendwie nicht mehr..
also ich habe keine ahnung, ob der "redirect" Eintrag fehlerhaft ist, oder die Squidconfig nicht stimmt.. oder was auch immer
hab da jedenfalls ne ganze menge ausprobiert (zuletzt neu aufgesetzt um wieder auf stand "0" zu sein
)
Ich werd mal versuchen, die relevanten einstellungen raus zu suchen. Und da ich ja schon sagte, dass ich nicht weiß woran es liegt, werd ich mal nicht sparsam sein
......
(schipsel aus meiner txt, die ich in der shell durchrattern lasse
)
die module:
meine zuweisungen, sonst wisst ihr gleich nicht was, was ist
danach diverse grundlegende einstellungen, wie das masquerading, freien zugriff für loccalhost, DNS, etablished und related verbindungen, ssh,..etc. pp...
iptable policy:
jeweils nur "INPUT" und "OUTPUT" [DROP].
"Forward" mit [ACCEPT]
dann http nach außen
dann einmal freigabe für direkten Proxy-zugriff (damit geht der Proxy)
und hier wohl die Fehlerhafte stelle:
(wegen "OUTPUT" bin ich mir nicht sicher, hatte ich nur überall zur sicherheit vorsichtshalber beigefügt.. um sowas erstmal auszuschließen.. -- unnötige "freigaben" kann man schneller ausprobieren
)
hier wollte ich jedenfalls einfach den http-verkehr nach 3128 (Squid-Proxy) umleiten, also transparent machen..
jedoch sollte später die möglichkeit bestehen, auf den localen apache (auch Port 80) zuzugreifen!
hatte da diese lösung probiert:
Was nur seltsam ist, dass Webmin 10000 bei den ganzen versuchen teilw. irgendwie blockiert wurde.. teilw. nur vom externen Netz und auch mal nur vom internen...
SSH dagegen läuft fast immer, was ich auch schon komisch finde, da ssh und webmin die selbe freigabeweise haben und ich anisch nur die port 80 umleitung in der mache hatte
......
So, dass zu den iptables ^^ (uiuiui, dat wird n langes posting
)
Nun zur Squidconfig, wo ich den Fehler jetzt einfach mal vermute (wegen des transparent-mode)
Proxy lauscht auf 3128 und arbeitet transparent
habe in diversen foren, etc. diese zusätzlichen optionen gefunden, kann diese aber nciht anwenden... fehlt mir da vllt. was, bzw. würde es dann durch diese optionen laufen???
* httpd_accel_host virtual
* httpd_accel_port 80
* httpd_accel_with_proxy on
* httpd_accel_uses_host_header on
vllt. findet ihr ja ne ungereimtheit oder sogar des Rätsel´s Lösung...
ich habe jedenfalls schon alles mögliche probiert.. lief auch irgenwann mal "kurz"
(glaub ich zumindest... )... <- waren laaange abende, mit stundenlangen probieren, ändern, lesen, ändern, probieren
.... 
also werd ich´s dabei erstmal belassen
ist ja schonmal viel Input, und vllt. reicht es ja schon... (hoffe, hab nicht zu viel unwichtiges mit reingepackt, und nichts wichtiges vergessen
)
mir raucht jetzt jedenfalls schon wieder der kopf ^^ hab mittlerweile so viele versuche abgespeichert, da weiß ich schon garnicht mehr, was was war
und von den vielen Tabs zu dem Thema ganz zu schweigen
ohne eure hilfe komm ich da nicht mehr weiter
Vllt. kann mir ja einer von euch den entscheidenen Tipp geben
ggf. kann ich auch die kompletten confs. per PN oder mail verschicken, das sich die jmd. mal komplett anschaut...
würd mich auch freuen, wenn sich jmd. bereiterklären könnte, später die "firewall"-config durchzusehen, ob ich die beschränkungen korreckt gesetzt hab oder irgendwelch andere "fehler" gemacht hab.... aber erstmal muss es laufen
jedenfalls hoff ich jetzt erstmal, das ich den proxy demnächst mal in betrieb nehmen kann

Vielen Dank schonmal!!!!
sitze hier schon seit wochen und versuch mein Debian Gateway/proxy einzurichten, nachdem ich mich mit kleinen fehlern beim Routing und NAT rumgeärgert hatte, häng ich nun beim Proxy fest..
irgendwie scheint das umleiten des ports ( 80 -> 3128 ) nicht zu funktionieren..
hab schon stunden mit google gerungen, und diverse Foren durchstöbert, doch ich finde einfach keine Lösung

Mache da wohl irgendwo nen denkfehler, oder hab irgendwas vergessen.. Nur komm ich da jetzt nicht mehr weiter und trete auf der stelle

Brauch unbedingt den entscheidenen Tipp oder denkanstoß.....
Debian 40r1
squid 2.6.5-6etch1
iptables 1.3.6.0debian1-5
Also ich versuch mal genauer auf das Problem einzugehen... wenn ihr noch info´s braucht, etc. dann einfach anfordern
Debain als Gateway/Router/Proxy/Webserver für mehrere Netze.
WAN ~ Router(FritzBox) - Gateway/Proxy ~ Clients
Also muss das system einmal das Routing übernehmen, und zudem soll es den http-traffic durch den Proxy schleusen.. und selbst einen http-server zur verfügung stellen können.
Grundlegend wollte ich alle zugriffsbeschränkungen über die IP-tables regeln..
fand ich für mich als gute möglich, alles in einem abzuhandeln.
(funktioniert auch alles soweit, bis auf den transparenten Proxy!)
Der http-traffic aus dem Client-LAN soll dann über den Proxy geschleust werden (später noch über ne blacklist... aber eins nach dem anderen

und das ganze dann als transparenten Proxy...
Die Ports (und weiterleitungen) für andere anwendungen sollten dann einfach über die iptables geregelt werden.
Wenn ich den Proxy manuell im Browser vergebe, klappt alles wie gewünscht!!
aber sobald ich den Proxy auf transparent stelle,bzw. die Port-Redirection einschalte, will´s irgendwie nicht mehr..
also ich habe keine ahnung, ob der "redirect" Eintrag fehlerhaft ist, oder die Squidconfig nicht stimmt.. oder was auch immer

hab da jedenfalls ne ganze menge ausprobiert (zuletzt neu aufgesetzt um wieder auf stand "0" zu sein

Ich werd mal versuchen, die relevanten einstellungen raus zu suchen. Und da ich ja schon sagte, dass ich nicht weiß woran es liegt, werd ich mal nicht sparsam sein

......
(schipsel aus meiner txt, die ich in der shell durchrattern lasse
die module:
Code:
/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
#/sbin/modprobe ip_conntrack_irc
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
#/sbin/modprobe ip_nat_irc
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
meine zuweisungen, sonst wisst ihr gleich nicht was, was ist

Code:
External Network (WAN/Internet)
EXTIF="eth0"
internal network #1 (Client LAN)
INTIF="eth1"
iptable policy:
jeweils nur "INPUT" und "OUTPUT" [DROP].
"Forward" mit [ACCEPT]
dann http nach außen
Code:
iptables -A OUTPUT -j ACCEPT -m state --state NEW -o $EXTIF -p tcp -m multiport --dport 80,443
iptables -A INPUT -p tcp -i $INTIF -m multiport --dport 80,443 -m state --state NEW -j ACCEPT
dann einmal freigabe für direkten Proxy-zugriff (damit geht der Proxy)
Code:
#iptables -A INPUT -p tcp -i $INTIF -m state --state NEW --dport 3128 -j ACCEPT
#iptables -A OUTPUT -p tcp -o $INTIF -m state --state NEW --sport 3128 -j ACCEPT
und hier wohl die Fehlerhafte stelle:
Code:
iptables -t nat -A PREROUTING -i $INTIF -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -A OUTPUT -p tcp -o $EXTIF --sport 3128 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -j ACCEPT -m state --state NEW -o $EXTIF -p tcp --sport 3128

hier wollte ich jedenfalls einfach den http-verkehr nach 3128 (Squid-Proxy) umleiten, also transparent machen..
jedoch sollte später die möglichkeit bestehen, auf den localen apache (auch Port 80) zuzugreifen!
hatte da diese lösung probiert:
Code:
iptables -t nat -A PREROUTING -i $INTIF -p tcp --dport 80 -j REDIRECT --to-port 3128 -d ! $INTIP
Was nur seltsam ist, dass Webmin 10000 bei den ganzen versuchen teilw. irgendwie blockiert wurde.. teilw. nur vom externen Netz und auch mal nur vom internen...
SSH dagegen läuft fast immer, was ich auch schon komisch finde, da ssh und webmin die selbe freigabeweise haben und ich anisch nur die port 80 umleitung in der mache hatte
Code:
#+-------------- Allow SSH (Port 22) ------------------+
iptables -A INPUT -p tcp -i $EXTIF --dport 22 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p tcp -o $EXTIF --sport 22 -m state --state NEW -j ACCEPT
iptables -A INPUT -p tcp -i $INTIF --dport 22 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p tcp -o $INTIF --sport 22 -m state --state NEW -j ACCEPT
#
#+----------- Allow Webmin (Port 10000) ---------------+
iptables -A INPUT -p tcp -i $EXTIF --dport 10000 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p tcp -o $EXTIF --sport 10000 -m state --state NEW -j ACCEPT
iptables -A INPUT -p tcp -i $INTIF --dport 10000 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p tcp -o $INTIF --sport 10000 -m state --state NEW -j ACCEPT
#
So, dass zu den iptables ^^ (uiuiui, dat wird n langes posting

Nun zur Squidconfig, wo ich den Fehler jetzt einfach mal vermute (wegen des transparent-mode)
Code:
http_port 3128 transparent
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
access_log /var/log/squid/access.log
hosts_file /etc/hosts
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow all
http_reply_access allow all
icp_access allow all
cache_effective_user proxy
cache_effective_group proxy
coredump_dir /var/spool/squid
habe in diversen foren, etc. diese zusätzlichen optionen gefunden, kann diese aber nciht anwenden... fehlt mir da vllt. was, bzw. würde es dann durch diese optionen laufen???
* httpd_accel_host virtual
* httpd_accel_port 80
* httpd_accel_with_proxy on
* httpd_accel_uses_host_header on
vllt. findet ihr ja ne ungereimtheit oder sogar des Rätsel´s Lösung...
ich habe jedenfalls schon alles mögliche probiert.. lief auch irgenwann mal "kurz"


also werd ich´s dabei erstmal belassen

ist ja schonmal viel Input, und vllt. reicht es ja schon... (hoffe, hab nicht zu viel unwichtiges mit reingepackt, und nichts wichtiges vergessen

mir raucht jetzt jedenfalls schon wieder der kopf ^^ hab mittlerweile so viele versuche abgespeichert, da weiß ich schon garnicht mehr, was was war

und von den vielen Tabs zu dem Thema ganz zu schweigen

ohne eure hilfe komm ich da nicht mehr weiter

Vllt. kann mir ja einer von euch den entscheidenen Tipp geben
ggf. kann ich auch die kompletten confs. per PN oder mail verschicken, das sich die jmd. mal komplett anschaut...
würd mich auch freuen, wenn sich jmd. bereiterklären könnte, später die "firewall"-config durchzusehen, ob ich die beschränkungen korreckt gesetzt hab oder irgendwelch andere "fehler" gemacht hab.... aber erstmal muss es laufen

jedenfalls hoff ich jetzt erstmal, das ich den proxy demnächst mal in betrieb nehmen kann


Vielen Dank schonmal!!!!
Zuletzt bearbeitet: