Denne fremgangsmåten legger NCSA-basert Basic-autentisering til en kildebegrenset Squid 6.13-proxy. Debian 13s hjelper er /usr/lib/squid/basic_ncsa_auth; bekreft sti og tjenestekonto for pakken din.

Opprett den første kontoen

Bruk distribusjonens htpasswd-verktøy og skriv passordet interaktivt:

sudo htpasswd -c /etc/squid/users proxyuser
sudo chown root:proxy /etc/squid/users
sudo chmod 640 /etc/squid/users

Eierskapet forutsetter Debians tjenestegruppe. Squid må lese filen; andre brukere bør ikke. Utelat -c for senere kontoer, siden det lager en ny fil og kan erstatte eksisterende oppføringer.

Krev kilde og innlogging i samme tillatelsesregel

Plasser disse etter eksisterende vern for destinasjonsporter, administrasjon, localhost og link-local-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 all

Erstatt klientadressen med kilden Squid ser. Begge betingelser må stemme. Fjern tidligere brede klienttillatelser som ville omgå innloggingsregelen, men behold lytter- og brannmurbegrensninger.

Analyser, last på nytt og sammenlign to forespørsler

sudo squid -k parse -f /etc/squid/squid.conf

Rett parserfeil og last den administrerte Squid-tjenestens konfigurasjon på nytt før testing. Fra en tillatt kilde bør en forespørsel uten påloggingsdata få en autentiseringsutfordring. Sammenlign med en autorisert forespørsel med proxyens virkelige vertsnavn:

curl --proxy http://proxy.example:3128 --proxy-basic --proxy-user proxyuser --noproxy '' --connect-timeout 5 --max-time 15 https://example.com/

Oppgis bare brukernavnet, ber curl om passordet. En gyldig forespørsel bør nå destinasjonen.

Basic-autentisering krypterer ikke utvekslingen mellom klient og proxy. Senere HTTPS til destinasjonen kan ikke beskytte påloggingsdata som allerede er sendt til en klartekstproxy; bruk en tilstrekkelig beskyttet rute. Direktivene gjelder Squid 6.13; se versjonsspesifikk konfigurasjon for Squid 8.

Relaterte artikler