Ubuntu459
Anmeldungsdatum: 4. September 2014
Beiträge: 16
|
Hallo,
ich habe eine theoretische Frage zu meinem Netzwerk und was ich genau verändern muss, damit ich den aktuellen Squid3 Proxy in den transparenten Modus schalten kann. Hier dazu meine Skizze:
http://s1.directupload.net/images/140904/r8fu3akg.jpg
Der Server läuft zwar auf Debian 7, aber ich plane sowieso bald auf 14.04 LTS zu gehen, aber das sollte ja keine Unterschiede machen. Meine Denkweise bis jetzt:
Ich bau in den Server eine 2. Lankarte ein und hänge ihn zwischen DLAN Adapter (2. Zeile) und Switch. eth0 in Richtung DLAN Adapter zur Fritzbox 7270 mit dem DSL (mit rotem Punkt) und eth1 Richtung Switch.
Dann richte ich in der DSL Fritzbox eine statische Route ein, dass alle Pakete an das Subnetz vom Server auch an den Server (Gateway) gesendet werden.
Am Server werden dann wohl die iptables so eingestellt, dass der ankommende Verkehr auf Port 21, 80 und 443 auf den Proxy Port 3456 umgeleitet wird. Soweit sollte das ja schon mal gehen hoffe ich. Aber jetzt kommen meine Fragen: 1. Wenn der Server das Routing von eth1 übernimmt, samt DHCP und DNS, laufen alle FTP/HTTP Anfragen immer über den Proxy oder gibt es Ausnahmen? Was muss ich noch einrichten oder beachten? 2. Wie kann ich die Fritzbox 7170 und deren Clients dazu bringen, dass sie eine automatische IP vom Server und nicht von der DSL Fritzbox 7270 bekommen? 3. Wie bekomme ich die Clients der DSL Fritzbox 192.168.178.1 die über LAN und WLAN angeschlossen sind, dazu ebenfalls den PRoxy zu nutzen, oder evtl. auch eine automatische IP vom Server zu bekommen. Ich steh da dermaßen auf dem Schlauch, lese seit Tagen Tutorials und Dokumentationen, aber irgendwie blockiert da im Kopf etwas 😀
Hauptsächlich geht es mir darum, das alles an den Proxy geleitet wird, damit ich das Routing selbst übernehmen kann und auch selbst für QoS sorgen kann.
Zur guten Benutzbarkeit hätte ich es auch ganz gern, dass die Geräte DHCP benutzen können und auch Subnetz übergreifend kommunizieren können. Vielen Dank fürs Lesen und für die Hilfe:) Ubuntu459
|
encbladexp
Ehemaliger
Anmeldungsdatum: 16. Februar 2007
Beiträge: 17448
|
Wir haben 2014, da nutzen viele Webanwendungen HTTPS und das geht nicht mit einem Transparenten Proxy. 😉 mfg Stefan Betz
|
Ubuntu459
(Themenstarter)
Anmeldungsdatum: 4. September 2014
Beiträge: 16
|
Der transparente Proxy ist halt nur für ftp und http gedacht.
Aber ich könnte den Traffic besser managen mit iptables und auch besser priorisieren. Hat jemand vielleicht eine Antwort parat?😀
|
encbladexp
Ehemaliger
Anmeldungsdatum: 16. Februar 2007
Beiträge: 17448
|
Kurzfassung:
DHCP an der Fritzbox deaktivieren und mit dem Server selber machen. Linux Server als Router verwenden, der muss ja alle ankommenden Anfragen auf Port 80 (Vergiss FTP, das verwendet kein Mensch mehr, und vergiss HTTPS weil das geht eben nicht mit nem Transparenten Proxy) auf den entsprechenden Port umleiten.
Der Rest steht in den unzähligen iptables, squid und Transparent Proxy Howtos die man im Netz findet. Wenn du Traffic Priorisieren willst solltest du aber erstmal wissen was für Traffic du überhaupt hast. 😉 mfg Stefan Betz
|
Ubuntu459
(Themenstarter)
Anmeldungsdatum: 4. September 2014
Beiträge: 16
|
Danke für deine Antwort!
Dann lass ich HTTPs raus, FTP dann wohl auch:D Eine kleine Frage hab ich aber noch bevor ich mein jetziges Netzwerk abreisse: Wenn die FB die am DSL hängt sich dann eine statische IP vom Server nimmt, werden dann die an der FB angeschlossenen Clients die auf DHCP eingestellt sind automatisch den DHCP Server vom Server finden? Der läuft dann auf eth0 für dieses Netz und eth1 für das Subnetz. Was muss ich noch einrichten damit der Traffic fürs Internet dann an die FB gesendet wird, oder weiss der Server das von selbst dank der Routingtabellen?
|
encbladexp
Ehemaliger
Anmeldungsdatum: 16. Februar 2007
Beiträge: 17448
|
Du brauchst dafür streng genommen nichtmal ein 2. Subnetz, das kann alles im selben sein. Warum? Nun, überlegen wir doch mal was passiert:
Clients suchen per Broadcast einen DHCP Server. Der DHCP Antwortet dem Client mit IP, Subnet und Gateway. Gateway wird der Linux Server. Der Linux Server bekommt dann allen Traffic der ans Gateway geht zugeschickt. Der Linux Server kann mit dem Traffic z.B. per iptables Manipulationen durchführen. Dank Routing schickt der Linux Server den Traffic an sein eigenes Gateway weiter, das wäre deine Fritzbox.
Benefit wäre das du nicht 2x NAT machst und nur ein Interface am Server brauchst. Nachteil wäre das es keine klare Trennung der Netze gibt, was aber kein Problem sein sollte. Du kannst auch 2 Netze nehmen, z.b. 192.168.2.0/24 für die Clients hinter dem Linux Server und 192.168.1.0/24 für die Fritzbox und den Server, dann liegt aber dein WLAN von der Fritzbox auch in 192.168.1.0/24 und nicht in 192.168.2.0/24 wie es wohl sinnvoll wäre 😉 Clients suchen übrigens keinen DHCP, die schicken einfach einen Broadcast und nehmen die erstbeste Antwort. Auf dem Linux Server muss übrigens ip_forward aktiviert werden, denn ohne hat Linux keinen Grund Router zu spielen. Am besten malst du jetzt erstmal wie das sein soll, oder wie du es konfigurieren würdest, nichts ist ärgerlich als ohne Internet nicht zu wissen was man gerade kaputt gespielt hat 😉 mfg Stefan Betz
|
Ubuntu459
(Themenstarter)
Anmeldungsdatum: 4. September 2014
Beiträge: 16
|
Ok danke für deine Unterstützung! Ich glaube ich habe es auch verstanden. Werde also eth1 erst mal nicht brauchen in der jetzigen Konfiguration und Ortslage vom Server:D Wollte es irgendwann nach ein paar Umbaumaßnahmen im Haus so machen, dass der Server näher an der FB steht, Wlan nur noch durch Aps hinter dem Server bereitgestellt wird und die Clients unerreichbar aus dem Internet sind. Aber das da ist eine gute Möglichkeit das einfacher umzusetzen, als ich dachte:)
Werde also gleich mal den DHCP Server umstellen auf eth0 und eine statische IP vergeben und als Gateway die statische IP der FB eintragen. Im Zweifelsfall hab ich ja noch einen Surfstick:D
|
Ubuntu459
(Themenstarter)
Anmeldungsdatum: 4. September 2014
Beiträge: 16
|
So, nach ein wenig Probieren hab ich wieder ein Netzwerk MIT Internet. Aber ich hab doch noch ein Verständnisproblem bekommen. Vorerst ein Ausschnitt von ein paar Daten und Configs: 10.0.0.0 Netzwerk
10.0.0.1 Server mit Proxy, DCHP, DNS etc.
10.0.0.10 Fritzbox mit DSL /etc/dnsmasq.conf
interface=eth0,eth1
#no-dhcp-interface=eth0
dhcp-range=interface:eth0,10.0.0.100,10.0.0.200,24h
dhcp-range=interface:eth1,10.0.1.100,10.0.1.200,24h
dhcp-option=3,10.0.0.10 /etc/resolv.conf
nameserver 127.0.0.1
nameserver 10.0.0.10 #Fritzbox mit DSL /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
allow-hotplug eth0
iface eth0 inet static
gateway 10.0.0.1
address 10.0.0.1
netmask 255.255.255.0
broadcast 10.0.0.255
#Neue Lankarte
auto eth1
iface eth1 inet static
address 10.0.1.1
netmask 255.255.255.0
broadcast 10.0.1.255
## vorhandene Regeln und Ketten zuerst löschen
up /sbin/iptables -F
up /sbin/iptables -X
up /sbin/iptables -t nat -F
## Maskieren der LAN-Schnittstelle, Port-Forwarding & Nat aktivieren
up /sbin/iptables -A FORWARD -o eth1 -s 10.0.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
up /sbin/iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
up /sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
up /sbin/sysctl -w net.ipv4.ip_forward=1
#DNSMASQ restart
up /etc/init.d/dnsmasq restart
## Daten auf proxy umleiten (hier nur Port 80)
post-up /sbin/iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3456
post-up /sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3456 Jetzt habe ich jetzt zwar Internet, aber es läuft nicht über den Proxy.
Ich glaube es liegt daran, dass bei der dnsmasq.conf das Gateway auf die Fritzbox zeigt und dann in der /etc/network/interfaces das Gateway auf den Server selbst.
Das müsste umgekehrt sein oder? Wollte lieber nochmal vorher nachfragen 😀
|
encbladexp
Ehemaliger
Anmeldungsdatum: 16. Februar 2007
Beiträge: 17448
|
Der Server hat als Gateway die Fritzbox, dein DHCP Server verteilt aber als Gateway den Linux Server. So muss es sein. Bitte als Ausgabe immer mitliefern:
ip addr show
ip route show Oder grafisch: Client ▶ Linux-Server ▶ Fritzbox 😉 mfg Stefan Betz
|
Ubuntu459
(Themenstarter)
Anmeldungsdatum: 4. September 2014
Beiträge: 16
|
Ok, ich habe nichts verändert an den configs. Hier die Ausgaben: root@homeserver:~# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether f4:6d:04:d8:30:93 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.1/24 brd 10.0.0.255 scope global eth0
3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
link/ether 70:62:b8:a5:31:c8 brd ff:ff:ff:ff:ff:ff
inet 10.0.1.1/24 brd 10.0.1.255 scope global eth1 root@homeserver:~# ip route show
default via 10.0.0.1 dev eth0
10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.1
10.0.1.0/24 dev eth1 proto kernel scope link src 10.0.1.1 Internet geht, aber der Proxy wird nicht genutzt. Habe einige Seiten in der Blacklist, und die werden dennoch aufgerufen. Wenn ich am Mac schaue, der die IP 10.0.0.129 hat und die Verbindung neu aufbaue kommt als RouterIP zuerst die 10.0.0.1, nach paar Sekunden wechselt die jedoch auf 10.0.0.10 Was hab ich falsch eingestellt?😀
|
encbladexp
Ehemaliger
Anmeldungsdatum: 16. Februar 2007
Beiträge: 17448
|
Beide eth0 und eth1 vielleicht auf den gleichen Switch gesteckt? 😉 mfg Stefan Betz
|
Ubuntu459
(Themenstarter)
Anmeldungsdatum: 4. September 2014
Beiträge: 16
|
Jetzt versteh ich nix mehr, ich dachte ich brauch kein 2. Subnetz, demnach auch kein eth1 mehr?😀 Da steckt nämlich jetzt kein Kabel mehr drin, der Aufbau ist nur mit eth0 wie im 1. Post im Bild, war das verkehrt?
|
encbladexp
Ehemaliger
Anmeldungsdatum: 16. Februar 2007
Beiträge: 17448
|
Wenn dein Gateway rumhopst laufen 2 DHCP Server 😉 mfg Stefan Betz
|
Ubuntu459
(Themenstarter)
Anmeldungsdatum: 4. September 2014
Beiträge: 16
|
Hab jetzt den DHCP Server vom eth1 mal aus der Config geschrieben, es springt dennoch. Sind denn die config Dateien oben wirklich richtig? Ich mein mit der dnsmasq.conf sag ich ja eigentlich selber bei der IP Vergabe, dass man die 10.0.0.10 (FB) nutzen soll als Gateway. Und in der interfaces nutzt der Server sich selsbt als Gateway oder? Sorry, ich blick da gerade nicht mehr durch. Habe im Netzwerk jedenfalls keinen 2. DHCP Server laufen:D
|
encbladexp
Ehemaliger
Anmeldungsdatum: 16. Februar 2007
Beiträge: 17448
|
Der Server darf sich nicht selbst als Gateway nutzen, der hat doch dafür die FB. mfg Stefan Betz
|