Upside Down Ternet

7

Es ist wieder soweit und ich arbeite daran, eine temporäre CentOS-Box einzurichten, die als Proxy für EINIGE Websites (nicht alle) in unserer Unternehmensumgebung am Montagmorgen fungiert (Ok, Sonntag ist der 1. April, aber Montag ist nah genug , Recht?)!

Ich habe Squid noch nie zuvor verwendet, aber mein IT-Direktor und ich glauben, dass dies ein würdiges Szenario ist, um es zu verwenden. Das Ziel: Bilder einiger Websites in unserem Unternehmensumfeld auf den Kopf stellen.

Gemäß dieser Ubuntu-Anleitung habe ich Squid, Apache und ImageMagick auf einer neuen Basisinstallation von CentOS 6 installiert.

Ich habe den Inhalt von flip.pl kopiert und in / usr / local / bin eingefügt und alle Dateiberechtigungen überprüft. Ich ging dann zu unserem Windows-DNS-Server und fügte meine eigene persönliche Website hinzu (zu Testzwecken), um diese Anforderungen an den neuen Proxyserver zu senden.

Squid wird auf seinem Standardport von 3128 ausgeführt, und Apache wird auf seinem Standardport von 80 ausgeführt. Da DNS (für die Test-URL) so eingestellt ist, dass es auf diese CentOS-Box verweist, habe ich seine eigenen / etc / hosts so bearbeitet, dass sie auf zeigen die URL zur richtigen IP-Adresse, damit Squid & Apache den Inhalt abrufen kann.

Jetzt bin ich also in der Testphase. Ich gehe auf die Website testurl.com:3128 und es ... läuft ab. Wir werden die IP-Tabellen des Routers verwenden, um den Datenverkehr am Tag von umzuleiten, aber im Moment verwende ich nur die URL des Browsers, um den Port von Squid zu identifizieren, wie Sie hier sehen können.

Ich habe überprüft (wenn ich es anpinge), dass es auf die CentOS-Box trifft, auf der Squid / Apache ausgeführt wird. Ich habe auch überprüft, dass in den IP-Tabellen dieser Box eine Regel enthalten ist, die Port 3128 und Port 80 zulässt:

[root@centos6 squid]# cat /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3128 -j ACCEPT

Ich sehe dies in Squids Cache-Protokoll:

2012/03/30 16: 33: 26 | WARNUNG: Weiterleitungsschleife erkannt für: GET / HTTP / 1.1 ^ M Host: www.my-test-url.com:3128

Was glaubst du, was ich falsch mache oder vermisse? Irgendwelche Ideen, wie wir dies erreichen können?

David W.
quelle
Haben Sie sich diesen Beitrag ex-parrot.com/~pete/upside-down-ternet.html angesehen ?
Petrus
@petrus Yup, ich habe vergessen zu erwähnen, dass ich auch auf diese Seite verwiesen habe.
David W

Antworten:

4

Sie möchten einen transparenten Proxy einrichten, in dem Ihre Firewall Anforderungen an den Squid-Server umleitet.

Jeff Ferland
quelle
Ah, also würde ich in demselben Feld die IP-Tabellen-Befehle eingeben, die unter ex-parrot.com/~pete/upside-down-ternet.html und im Ubuntu-Handbuch, mit dem ich zuvor verlinkt habe, zu finden sind? Ich habe Squid bereits so eingerichtet, dass es mit der "transparenten" Direktive arbeitet.
David W
1
Jep. Wenn Sie festlegen, dass es transparent sein soll, und den Client darauf hinweisen, funktioniert es nicht. Das haben Sie getan, und es hat dazu geführt, dass der Server versucht hat, eine Seite von sich selbst zu erhalten, was bedeutet, dass er versucht hat, eine Seite von sich selbst zu erhalten, was bedeutet ... Wenn Sie sagen, dass es normal ist und der Client nicht darauf zeigt es wird nicht funktionieren. Da Ihre Clients nicht neu konfiguriert werden, müssen Sie Firewall-Regeln verwenden, um den Proxy in die Mitte der Verbindung zu stellen.
Jeff Ferland
Erwischt. Macht perfekt Sinn. Wir planen, die Leute über internes DNS auf den Proxyserver für die Sites zu verweisen, die wir manipulieren möchten, anstatt in diesem Fall mit den Routern herumzuspielen, und aktualisieren dann einfach die Firewall- / IP-Tabelleneinstellungen auf dieser tatsächlichen Box. Danke noch einmal! Ich werde dich wissen lassen, wie es geht. :)
David W
Ich markiere diese als akzeptierte Antwort, weil theoretisch alles großartig funktionierte ... bis ich eine wirklich schlimme Erkältung bekam und sie nicht rechtzeitig beenden konnte. Nach ein oder zwei Wochen ging ich hinein und entfernte die VM vollständig, da wir sie offensichtlich nicht brauchten. Vielen Dank für Ihre Hilfe, ich weiß das zu schätzen. Es war ein lustiges Projekt, solange es dauerte.
David W