J'utilise actuellement ip dans acl, et je souhaite utiliser un nom d'utilisateur et un mot de passe pour ce faire.
J'utilise actuellement ip dans acl, et je souhaite utiliser un nom d'utilisateur et un mot de passe pour ce faire.
Réponses:
Voici ce que j'ai dû faire pour configurer l'authentification de base sur Ubuntu 14.04 ( je n'ai trouvé de guide nulle part ailleurs)
/etc/squid3/squid.conf
au lieu du fichier de configuration par défaut super gonflé
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
Veuillez noter le programme basic_ncsa_auth au lieu de l'ancien ncsa_auth
Pour squid 2.x, vous devez éditer le /etc/squid/squid.conf
fichier et placer:
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
et entrez un mot de passe deux fois pour le nom d'utilisateur choisi puis
sudo service squid3 restart
sudo htpasswd -c /etc/squid/passwords username_you_like
et entrez un mot de passe deux fois pour le nom d'utilisateur choisi puis
sudo service squid restart
Pour les nombreuses personnes qui m'ont posé la question: les 2 outils produisent différents formats de fichiers:
htdigest
stocke le mot de passe en texte brut.htpasswd
stocke le mot de passe haché (divers algos de hachage sont disponibles)Malgré cette différence de format, vous basic_ncsa_auth
pourrez toujours analyser un fichier de mot de passe généré avechtdigest
. Par conséquent, vous pouvez également utiliser:
sudo htdigest -c /etc/squid3/passwords realm_you_like username_you_like
Attention, cette approche est empirique, non documentée et peut ne pas être prise en charge par les futures versions de Squid.
Sur Ubuntu 14.04 htdigest
et htpasswd
sont tous deux disponibles dans le [apache2-utils][1]
package.
La même chose que ci-dessus s'applique, mais les chemins de fichiers sont différents.
Installer squid
brew install squid
Démarrer le service de calmar
brew services start squid
Le fichier de configuration Squid est stocké dans /usr/local/etc/squid.conf
.
Commentez ou supprimez la ligne suivante:
http_access allow localnet
Ensuite, similaire à la configuration Linux (mais avec des chemins mis à jour), ajoutez ceci:
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
Notez que le chemin vers basic_ncsa_auth
peut être différent car il dépend de la version installée lors de l'utilisation brew
, vous pouvez le vérifier avec ls /usr/local/Cellar/squid/
. Notez également que vous devez ajouter ce qui précède juste en dessous de la section suivante:
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
Maintenant, générez vous-même un utilisateur: mot de passe des informations d'authentification de base (note: htpasswd
et htdigest
sont également disponibles sur MacOS)
htpasswd -c /usr/local/etc/squid_passwords username_you_like
Redémarrez le service squid
brew services restart squid
htpasswd
, faites-le sudo apt-get install apache2-utils
.