wiki:AdminProxy
close Warning: Can't synchronize with repository "keplertools" (/srv/svn/keplertools does not appear to be a Subversion repository.). Look in the Trac log for more information.

Version 19 (modified by Rüdiger Kupper, 14 years ago) ( diff )

--

Proxies im Kepler-Netzwerk

Im Kepler-Netzwerk existieren zwei ​Squid Proxy-Server und der IPCop der Linuxmusterlösung. Ihre Aufgaben sind

  • beschleunigen des Zugriffs auf Seiten außerhalb des Kepler-Netzwerkes (Web-Caching)
  • authentifizieren der Nutzer, die auf Seiten außerhalb des Kepler-Netzwerkes zugreifen
  • beschränken des Zugangs zu bestimmten Seiten.

WPAD

Damit die Browser die Proxies automatisch erkennen muss für das grüne und graue Netz das WPAD-Verfahren aktiviert sein (Automatische Suche der Einstellungen), dann erkennt der Browser den Proxy automatisch, im blauen Netz (WLAN) ist der Proxy transparent, hier ist die Einstellung im Browser egal.

Verweise: #156, #250

Proxies im grünen Netz

Aus #250:

Wir haben im grünen Netz zwei automatische Verfahren, wie man ins Internet kommt. Welches Anwendung findet entscheidet sich danach, welchen DNS-Sever per DHCP mitgeteilt wurde:

  1. DNS: paedml.kg-fds.de (10.32.1.1)
    WPAD: paedml.kg-fds.de
    Gateway: ipcop.kg-fds.de (10.32.1.254, transparent, deshalb DIRECT)
    liefert die folgende wpad.dat, da ​IPCop transparent ist:
    function FindProxyForURL(url, host)
    {
      return "DIRECT";
    }
    
    IPcop-Webadmin: ​https://10.32.1.254:445
  1. DNS: 10.32.1.251 (GreenProxy)
    WPAD: 10.32.1.251
    Gateway: 10.32.1.251 (Nicht transparent, Squid auf Port 3128)
    liefert folgende wpad.dat:
    function FindProxyForURL(url, host)
    {
    lurl = url.toLowerCase();
    
    if ((lurl.substring(0, 5) == "http:") ||
        (lurl.substring(0, 4) == "ftp:" ) ||
        (lurl.substring(0, 6) == "https:"))
      if ((isPlainHostName(host) && !localHostOrDomainIs(host, "www")) ||
          (dnsDomainIs(host, ".kg-fds.de") && !localHostOrDomainIs(host, "www.kg-fds
    .de")) ||
          (host.substring(0, 6) == "10.32."))
          return "DIRECT";
      else
         if (localHostOrDomainIs(host, "www.kg-fds.de"))
             return "PROXY 10.32.1.253:3128";
         else
             return "PROXY 10.32.1.251:3128";
    else
       return "DIRECT";
    }
    

In dieser wpad.dat werden alle Anfragen an die Domain kg-fds.de lokal beantwortet (ohne Proxy) lediglich www.kg-fds.de muss über den Proxy raus. Zusätzlich wäre das Netz 10.32.0.0 / 255.255.240.0 rauszunehmen.

Proxy an der Kommandozeile

Der folgende Aufruf sollte den Proxy an der Kommandozeile setzen:

export http_proxy=http://<username>:<password>@10.32.1.251:3128/
export https_proxy=https://<username>:<password>@10.32.1.251:3128/
export ftp_proxy=ftp://<username>:<password>@10.32.1.251:3128/

Werden username und password nicht angegeben, so werden sie im Terminal interaktiv abgefragt.

Update-Proxy auf 10.32.1.253

Auf 10.32.1.253 (ProxmoxS) läuft ein weiterer ​Squid. Dieser Proxy wird von den LTSP-Servern für Software-Updates benutzt (apt). Er kann ebenfalls auf der Kommandozeile gesetzt werden:

export http_proxy=http://10.32.1.253:3128/
export https_proxy=https://<10.32.1.253:3128/
export ftp_proxy=ftp://10.32.1.253:3128/

Nutzername und Passwort sind nicht nötig, der Proxy ist für alle Nutzer und Rechner frei erreichbar (aber er lässt eben nur Anfragen zu den Seiten durch, die für die Software-Updates nötig sind).

Adressen im Proxy freischalten

Adressen, die über den 253er Proxy ohne Authentifizierung zugänglich sein sollen, müssen in 10.32.1.253:/etc/squid/squid.conf eingetragen werden. Das ist z.B. sinnvoll für

  • die Adressen, auf die apt zum Software-Update zugreift
  • den Kepler-Kalender von Herrn Hilbert
  • die Kepler-Homepage (die ja extern liegt)

Danach muss Squid die Konfigurationsdatei neu einlesen (s.u.).

Squid-Konfigurationsdatei neu einlesen

    squid -k reconfigure

teilt Squid mit, dass die Konfigurationsdatei neu eingelesen werden soll. Das ist nach jeder Änderung an der squid.conf nötig.

Adressbereiche von Domains herausfinden

 ping URL

ergibt mal eine URL der Domain, damit kann man dann bei ​https://apps.db.ripe.net/search den Adressbereich herausfinden. Auch unter ​http://tcpiputils.com/ sind gute Ergebnisse erhältlich: Zunächst einen DNS-Lookup, die erhaltene IP dann bei WHOIS-Lookup abfragen.

Note: See TracWiki for help on using the wiki.