Lägg till Basic-autentisering i en Squid 6.13-proxy
Konfigurera Squid 6.13:s NCSA-hjälpare, kombinera tillåten klient-IP med giltig inloggning och förstå vad Basic skyddar.
Proceduren lägger till NCSA-baserad Basic-autentisering i en källbegränsad Squid 6.13-proxy. Debian 13:s hjälpare är /usr/lib/squid/basic_ncsa_auth; bekräfta sökväg och tjänstekonto för ditt paket.
Skapa det första kontot
Använd distributionens verktyg htpasswd och ange lösenordet interaktivt:
sudo htpasswd -c /etc/squid/users proxyuser
sudo chown root:proxy /etc/squid/users
sudo chmod 640 /etc/squid/usersÄgarskapet förutsätter Debians tjänstegrupp. Squid måste kunna läsa filen; andra användare bör inte. Utelämna -c för senare konton, eftersom det skapar en ny fil och kan ersätta befintliga poster.
Kräv källa och inloggning i samma tillåtelseregel
Placera dessa efter befintliga skydd för destinationsportar, administration, localhost och länklokala adresser:
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/users
auth_param basic realm PrivateProxy
acl proxy_client src 198.51.100.27/32
acl logged_in proxy_auth REQUIRED
http_access allow proxy_client logged_in
http_access deny allErsätt klientadressen med källan som Squid ser. Båda villkoren måste stämma. Ta bort tidigare breda klienttillåtelser som skulle kringgå inloggningsregeln men behåll lyssnar- och brandväggsbegränsningarna.
Tolka, läs in på nytt och jämför två begäranden
sudo squid -k parse -f /etc/squid/squid.confRätta tolkningsfel och läs in den hanterade Squid-tjänstens konfiguration på nytt före testning. Från en tillåten källa bör en begäran utan inloggningsuppgifter få en autentiseringsutmaning. Jämför med en auktoriserad begäran med proxyns riktiga värdnamn:
curl --proxy http://proxy.example:3128 --proxy-basic --proxy-user proxyuser --noproxy '' --connect-timeout 5 --max-time 15 https://example.com/Om bara användarnamnet anges får curl fråga efter lösenordet. En giltig begäran bör nå destinationen.
Basic-autentisering krypterar inte utbytet mellan klient och proxy. Senare HTTPS till destinationen kan inte skydda uppgifter som redan sänts till en klartextproxy; använd en lämpligt skyddad väg. Direktiven gäller Squid 6.13; se versionsspecifik konfiguration för Squid 8.