Squid-Kit-1

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Installation

Installiert den Squid Proxy inkl. HTTPS-Unterstützung.
Ohne SSL-Unterstützung funktioniert CONNECT nicht korrekt.
  • apt install squid-openssl

Erste Schritte

Configdir

Hier liegt die zentrale Konfigurationsdatei squid.conf.
Alle Anpassungen erfolgen in diesem Verzeichnis.
  • cd /etc/squid

Default Konfiguration sichern

Sichert die Originalkonfiguration.
Ermöglicht schnelles Zurücksetzen bei Fehlern.
  • cp squid.conf squid.conf.org

Kommentare entfernen

Entfernt Kommentare für bessere Übersicht.
Zeigt nur aktive Konfiguration.
  • grep "^[^#]" squid.conf.org > squid.conf

Bereinigte squid.conf

Erlaubt allen internen Netzen Zugriff auf den Proxy.
Am Ende blockiert "deny all" alles nicht explizit Erlaubte.
| acl localnet src 10.0.0.0/8
| acl localnet src 172.16.0.0/12
| acl localnet src 192.168.0.0/16
| acl localnet src fc00::/7
| acl localnet src fe80::/10
|
| acl SSL_ports port 443
|
| acl Safe_ports port 80
| acl Safe_ports port 21
| acl Safe_ports port 443
| acl Safe_ports port 70
| acl Safe_ports port 210
| acl Safe_ports port 1025-65535
| acl Safe_ports port 280
| acl Safe_ports port 488
| acl Safe_ports port 591
| acl Safe_ports port 777
|
| acl CONNECT method CONNECT
|
| http_access deny !Safe_ports
| http_access deny CONNECT !SSL_ports
|
| http_access allow localhost manager
| http_access deny manager
|
| http_access allow localnet
| http_access allow localhost
|
| http_access deny all
|
| http_port 3128
| coredump_dir /var/cache/squid
|
| refresh_pattern ^ftp:           1440    20%     10080
| refresh_pattern ^gopher:        1440    0%      1440
| refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
| refresh_pattern .               0       20%     4320

Prinzip der ACL

Squid arbeitet von oben nach unten – erste passende Regel gewinnt.
Falsche Reihenfolge führt häufig zu unerwartetem Verhalten.
  • Squid arbeitet von oben nach unten – die erste passende Regel gewinnt.

Konfiguration anpassen (eigene Netze)

Ziel ist es, Zugriff gezielt zu steuern.
Die Default-Konfiguration ist zu offen.

Neue squid.conf

RFC1918 wurde entfernt, damit nicht jeder Zugriff bekommt.
Nur definierte Netze dürfen den Proxy nutzen.
| # acl localnet src 10.0.0.0/8
| # acl localnet src 172.16.0.0/12
| # acl localnet src 192.168.0.0/16
|
| acl localnet src fc00::/7
| acl localnet src fe80::/10
|
| acl it-dmz src 10.88.213.0/24
| acl it-lan src 172.26.213.0/24
|
| acl SSL_ports port 443
|
| acl Safe_ports port 80
| acl Safe_ports port 21
| acl Safe_ports port 443
| acl Safe_ports port 70
| acl Safe_ports port 210
| acl Safe_ports port 1025-65535
| acl Safe_ports port 280
| acl Safe_ports port 488
| acl Safe_ports port 591
| acl Safe_ports port 777
|
| acl CONNECT method CONNECT
|
| http_access deny !Safe_ports
| http_access deny CONNECT !SSL_ports
|
| http_access allow localhost manager
| http_access deny manager
|
| # http_access allow localnet
|
| http_access allow it-dmz
| http_access allow it-lan
|
| http_access allow localhost
|
| http_access deny all
|
| http_port 3128
| coredump_dir /var/cache/squid
|
| refresh_pattern ^ftp:           1440    20%     10080
| refresh_pattern ^gopher:        1440    0%      1440
| refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
| refresh_pattern .               0       20%     4320

First run

läuft squid?

Zeigt ob Squid auf Port 3128 lauscht.
Kein Output bedeutet, der Dienst läuft nicht.
  • ss -lntp | grep 3128

starten

Startet den Proxy-Dienst.
Fehler können im Journal eingesehen werden.
  • systemctl start squid

Kontrolle

Zeigt Live-Traffic durch den Proxy.
Wichtig zum Debuggen und Verständnis.
  • tail -f /var/log/squid/access.log
TCP_MISS bedeutet kein Cache wurde genutzt.
CONNECT zeigt HTTPS-Tunnelverkehr.

Hinweis

HTTPS wird nur getunnelt und nicht analysiert.
Caching spielt heute kaum noch eine Rolle.
  • HTTPS wird nur getunnelt (CONNECT)
  • Caching ist heute meist irrelevant