Eu atualmente uso ip em acl e quero usar nome de usuário e senha para fazer isso.
Eu atualmente uso ip em acl e quero usar nome de usuário e senha para fazer isso.
Respostas:
Aqui está o que eu tive que fazer para configurar a autenticação básica no Ubuntu 14.04 (não encontrei um guia em nenhum outro lugar)
/etc/squid3/squid.conf
em vez do arquivo de configuração padrão super inchado
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
Observe o programa basic_ncsa_auth em vez do antigo ncsa_auth
Para o squid 2.x você precisa editar o /etc/squid/squid.conf
arquivo e colocar:
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 digite uma senha duas vezes para o nome de usuário escolhido e
sudo service squid3 restart
sudo htpasswd -c /etc/squid/passwords username_you_like
e digite uma senha duas vezes para o nome de usuário escolhido e
sudo service squid restart
Para as muitas pessoas que me perguntaram: as 2 ferramentas produzem formatos de arquivo diferentes:
htdigest
armazena a senha em texto simples.htpasswd
armazena o hash da senha (vários algoritmos de hash estão disponíveis)Apesar dessa diferença de formato basic_ncsa_auth
, ainda será possível analisar um arquivo de senha gerado comhtdigest
. Portanto, você pode usar alternativamente:
sudo htdigest -c /etc/squid3/passwords realm_you_like username_you_like
Esteja ciente de que esta abordagem é empírica, não documentada e pode não ser suportada por versões futuras do Squid.
No Ubuntu 14.04 htdigest
e htpasswd
ambos estão disponíveis no [apache2-utils][1]
pacote.
Semelhante ao anterior se aplica, mas os caminhos dos arquivos são diferentes.
Instale o squid
brew install squid
Iniciar serviço de squid
brew services start squid
O arquivo de configuração do Squid está armazenado em /usr/local/etc/squid.conf
.
Comente ou remova a seguinte linha:
http_access allow localnet
Em seguida, semelhante à configuração do Linux (mas com caminhos atualizados) adicione isto:
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
Observe que o caminho para basic_ncsa_auth
pode ser diferente, pois depende da versão instalada ao usar brew
, você pode verificar isso com ls /usr/local/Cellar/squid/
. Observe também que você deve adicionar o acima logo abaixo da seguinte seção:
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
Agora gere para você mesmo uma credencial de autenticação básica usuário: senha (observação: htpasswd
e htdigest
também estão disponíveis no MacOS)
htpasswd -c /usr/local/etc/squid_passwords username_you_like
Reinicie o serviço squid
brew services restart squid
htpasswd
, faça sudo apt-get install apache2-utils
.