Linux, einfacher HTTP-Proxy

Linux, einfacher HTTP-Proxy

Ich habe einen Linux-Server in einem Rechenzentrum laufen, das über zusätzliche Bandbreite und Ressourcen verfügt.

Ich möchte einen Proxy-Dienst einrichten, damit ich meinen gesamten HTTP/HTTP-Verkehr von zu Hause darüber leiten kann. Ich weiß, wie ich meinen Browser so konfiguriere, dass er mit dem Proxy kommuniziert, ich weiß nur nicht, wie ich ihn serverseitig einrichte. Ich hätte auch gerne eine Authentifizierung, damit nur ich sie verwenden kann.

Antwort1

Am liebsten verwende ich hierfür ssh/SOCKS und SOCKS-Tunneling.

Wenn auf Ihrem Colocation-Server SSHD läuft, ist das alles, was Sie brauchen.

Verwenden

ssh -D 9000 yourhost.foo.com

Und optimieren Sie dann Ihren Browser so, dass er einen SOCKS-Proxy auf 127.0.0.1, Port 9000 verwendet.

Bei Firefox verwende ich gerne Foxyproxy, um die Proxy-Konfiguration schnell zu ändern.

Hier ist eine OK-Seite mit weiteren Einzelheiten. SSH-Proxy-Details

Antwort2

Ein bisschen spät für die Diskussion …

Ich finde, dass Tinyproxy einfacher einzurichten und leichter ist als Squid, insbesondere für einen Server, der nur für den eigenen Gebrauch bestimmt ist.

Entscheidend ist, ob auf Ihrem Rechenzentrumsserver SSHD läuft.

Wenn dies der Fall ist, lösen die Antworten hier, die SSH zur Portweiterleitung verwenden, das Autorisierungsproblem automatisch. Stellen Sie tinyproxy so ein, dass es an 127.0.0.1 gebunden wird und nur Benutzer mit SSH-Zugriff eine Verbindung damit herstellen können.

Wenn dies nicht der Fall ist, können Sie tinyproxy so konfigurieren, dass nur Verbindungen von bestimmten Hosts oder IP-Adressen akzeptiert werden. Wenn Sie zu Hause eine statische IP-Adresse haben, ist das Problem gelöst.

Wenn Sie eine dynamische Adresse haben, sind Sie möglicherweise bereit, Verbindungen von einem Teil Ihrer Heimverbindung zu akzeptieren. Wenn Ihr ISP Ihre Heimverbindung beispielsweise so einstellt, dass sie wie 192-192-192-192-area1-san-fran-cal-usa aussieht, können Sie tinyproxy so einstellen, dass nur Verbindungen von area1-san-fran-cal-usa akzeptiert werden (wobei der IP-Teil der Verbindung ignoriert wird). Das Risiko besteht darin, dass andere Abonnenten von area1 Ihren Proxy entdecken und ihn verwenden.

Das ist, was ich für meinen VPS-Proxy verwende und es funktioniert gut, insbesondere, da ich mich in einem relativ kleinen Einzugsbereich meines ISP befinde. Ich habe noch nie jemanden anderen den Proxy verwenden lassen, aber ich weiß, dass es ein Risiko ist (eines, das ich bereit bin einzugehen – ich kann tinyproxy immer ändern, wenn ich herausfinde, dass jemand anderes es verwendet).

Antwort3

Vielleicht, aber nur vielleicht ist es in solchen Situationen eine gute Wahl, eine Art allgemeine Lösung zu verwenden. Daher empfehle ich Squid so oft ich kann, wenn jemand einen Proxy-Dienst benötigt. Die Gründe sind vielfältig: Dokumentation ist überall, es ist eine allgemeine Lösung für einfache und viel spezifischere Anfragen, und das Wichtigste: Meine Erfahrung hat gezeigt, dass Kunden mit einfachen Anfragen in kürzester Zeit zu Kunden mit sehr anspruchsvollen Anfragen in Bezug auf den Proxy-Dienst wurden.

Antwort4

Der einfachste Weg, dies zu tun, ist über einen SSH-Tunnel:

ssh -D 8080 yourserver.com

Jetzt können Sie Ihren Browser auf den (SOCKS)-Proxy richten localhost:8080.
SSH bindet 8080 nur an 127.0.0.1 (und ::1), sodass es niemand sonst verwenden kann.

Wenn Sie Windows verwenden, können Sie diesen Tunnel auch mit Putty einrichten.

verwandte Informationen