basic_getpwnam_auth просто не работает на Squid - PullRequest
0 голосов
/ 13 октября 2018

Ребята!Это сводит меня с ума, поэтому я должен опубликовать это.Вот в чем дело: я просто пытаюсь настроить базовое http athenication для простого сервера squid.Операционная система - CentOS 6.5, а установочный пакет - yum:

[root@localhost squid]# cat ./squid.conf
#auth_param basic program /usr/lib64/squid/ttt.sh
auth_param basic program /usr/lib64/squid/basic_getpwnam_auth
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 5 minutes
auth_param basic casesensitive off
authenticate_ttl 2 hour
acl passwd proxy_auth REQUIRED
acl localnet src 10.0.0.0/8     # RFC1918 possible internal network
acl localnet src 172.16.0.0/12  # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl localnet src fc00::/7       # RFC 4193 local private network range
acl localnet src fe80::/10      # RFC 4291 link-local (directly plugged) machines
http_access allow passwd
http_access deny all
http_port 3128
coredump_dir /var/spool/squid
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320

Когда я пытался войти в систему, это всегда не удавалось.Поэтому я сделал этот ttt.sh, чтобы обернуть вспомогательную программу, чтобы увидеть, что именно произошло:

#!/bin/bash    
while read line
do
  echo "$line" | tee -a  /tmp/ttt.stdout | /usr/lib64/squid/basic_getpwnam_auth | tee -a /tmp/ttt.stdout 
done

Учетная запись, используемая для проверки с именем "ttt" с паролем "t", и результат говорит:

#/tmp/ttt.stdout
ttt t
ERR Wrong password

Имя учетной записи и пароль в порядке, когда я проверял его на cmdline, он тоже получился.

[root@localhost squid]# echo ttt t | ./ttt.sh
OK 
[root@localhost squid]# cat /tmp/ttt.stdout 
ttt t
OK 

Теперь я полностью потерян.Пожалуйста, кто-нибудь, спасите меня ...

...