Attualmente utilizzo ip in acl e desidero utilizzare nome utente e password per farlo.
Risposte:
Ecco cosa ho dovuto fare per configurare l'autenticazione di base su Ubuntu 14.04 (non ho trovato una guida da nessun'altra parte)
/etc/squid3/squid.conf
invece del file di configurazione predefinito super gonfio
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
# Choose the port you want. Below we set it to default 3128.
http_port 3128
Si prega di notare il programma basic_ncsa_auth invece del vecchio ncsa_auth
Per squid 2.x è necessario modificare il /etc/squid/squid.conf
file e posizionare:
auth_param basic program /usr/lib/squid/digest_pw_auth /etc/squid/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
sudo htpasswd -c /etc/squid3/passwords username_you_like
e inserisci una password due volte per il nome utente scelto, quindi
sudo service squid3 restart
sudo htpasswd -c /etc/squid/passwords username_you_like
e inserisci una password due volte per il nome utente scelto, quindi
sudo service squid restart
Per le molte persone che me lo hanno chiesto: i 2 strumenti producono diversi formati di file:
htdigest
memorizza la password in testo normale.htpasswd
memorizza l'hash della password (sono disponibili vari algoritmi di hashing)Nonostante questa differenza di formato basic_ncsa_auth
sarà comunque in grado di analizzare un file di password generato conhtdigest
. Quindi puoi alternativamente usare:
sudo htdigest -c /etc/squid3/passwords realm_you_like username_you_like
Fai attenzione che questo approccio è empirico, non documentato e potrebbe non essere supportato dalle versioni future di Squid.
Su Ubuntu 14.04 htdigest
e htpasswd
sono entrambi disponibili nel [apache2-utils][1]
pacchetto.
Si applica come sopra, ma i percorsi dei file sono diversi.
Installa i calamari
brew install squid
Avvia il servizio di calamari
brew services start squid
Il file di configurazione di Squid è archiviato in /usr/local/etc/squid.conf
.
Commenta o rimuovi la riga seguente:
http_access allow localnet
Quindi simile alla configurazione di Linux (ma con percorsi aggiornati) aggiungi questo:
auth_param basic program /usr/local/Cellar/squid/4.8/libexec/basic_ncsa_auth /usr/local/etc/squid_passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
Tieni presente che il percorso basic_ncsa_auth
potrebbe essere diverso poiché dipende dalla versione installata durante l'utilizzo brew
, puoi verificarlo con ls /usr/local/Cellar/squid/
. Nota anche che dovresti aggiungere quanto sopra appena sotto la seguente sezione:
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
Ora genera un utente: credenziale di autenticazione di base password (nota: htpasswd
e htdigest
sono disponibili anche su MacOS)
htpasswd -c /usr/local/etc/squid_passwords username_you_like
Riavvia il servizio di calamari
brew services restart squid
htpasswd
, fallo sudo apt-get install apache2-utils
.