LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: Snoopy

squid 配置详解 + 认证 !

[复制链接]
发表于 2005-11-23 06:55:01 | 显示全部楼层
抛砖引玉,按照楼主的文章,再参考了 squid FAQ 以及 man,装了一个 PAM 认证。因为用NCSA太麻烦了,还要用那个htpasswd什么的,我不会。(羞ing)。

squid 版本:squid-2.5.STABLE12

1. 解压,编译,安装。

  1. ./configure \
  2.         --prefix=/opt/Squid --sysconfdir=/etc/squid \
  3.         --enable-storeio=ufs,null --enable-arp-acl \
  4.         --enable-linux-netfilter --enable-underscore \
  5.         --enable-pthreads --enable-ssl \
  6.         --enable-large-file --enable-large-cache-file \
  7.         --disable-ident-lookups \
  8.         --enable-auth=basic --enable-basic-auth-helpers='PAM NCSA' \
  9.         &&
  10. make -j2 &&
  11. make install
复制代码

2. 编辑 squid.conf 文件。


  1. http_port 193.168.0.1:3128
  2. icp_port 0
  3. hierarchy_stoplist cgi-bin ?
  4. acl QUERY urlpath_regex cgi-bin \?
  5. acl QUERY urlpath_regex bbs \?
  6. no_cache deny QUERY
  7. cache_mem 64 MB
  8. cache_swap_low 90
  9. cache_swap_high 95
  10. maximum_object_size 4096 KB

  11. cache_replacement_policy lru
  12. memory_replacement_policy lru

  13. cache_dir ufs /var/cache/Squid  1000 16 256
  14. cache_access_log /var/log/Squid/access.log
  15. cache_log /var/log/Squid/cache.log
  16. cache_store_log /var/log/Squid/store.log

  17. pid_filename /var/run/squid.pid

  18. auth_param basic program /opt/Squid/libexec/pam_auth -o
  19. auth_param basic children 5
  20. auth_param basic realm Tell me who you are!
  21. auth_param basic credentialsttl 12 hours
  22. auth_param basic casesensitive off

  23. refresh_pattern ^ftp:           1440    20%     10080
  24. refresh_pattern ^gopher:        1440    0%      1440
  25. refresh_pattern .               0       20%     4320


  26. acl all src 0.0.0.0/0.0.0.0
  27. acl manager proto cache_object
  28. acl localhost src 127.0.0.1/255.255.255.255
  29. acl to_localhost dst 127.0.0.0/8
  30. acl SSL_ports port 443 563
  31. acl Safe_ports port 80          # http
  32. acl Safe_ports port 21          # ftp
  33. acl Safe_ports port 443 563     # https, snews
  34. acl Safe_ports port 70          # gopher
  35. acl Safe_ports port 210         # wais
  36. acl Safe_ports port 1025-65535  # unregistered ports
  37. acl Safe_ports port 280         # http-mgmt
  38. acl Safe_ports port 488         # gss-http
  39. acl Safe_ports port 591         # filemaker
  40. acl Safe_ports port 777         # multiling http
  41. acl CONNECT method CONNECT

  42. acl our_networks src 192.168.0.0/24
  43. acl emailClient browser Outlook  #让outlook不用认证。也许存在漏洞!
  44. acl authbody proxy_auth REQUIRED

  45. http_access allow manager our_networks
  46. http_access deny manager
  47. http_access deny !Safe_ports
  48. http_access deny CONNECT !SSL_ports

  49. http_access allow emailClient
  50. http_access allow authbody
  51. http_access allow our_networks

  52. http_access deny all
  53. http_reply_access allow all

  54. icp_access allow all
  55. cache_mgr william
  56. cache_effective_user squid
  57. cache_effective_group squid
  58. visible_hostname FantasySquid
  59. forwarded_for off
  60. coredump_dir /var/cache/Squid
复制代码


3. 配置 /etc/pam.d/squid

  1. # Begin /etc/pam.d/squid

  2. auth            sufficient      pam_unix.so     shadow md5 nullok likeauth

  3. account         required        pam_access.so
  4. account         required        pam_unix.so

  5. session         sufficient      pam_unix.so

  6. # End /etc/pam.d/squid
复制代码


4. 因为用到了UNIX local password,所以要把pam_auth程序setuid。
    这个步骤 在 man pam_auth 里边提及到的。

  1. chown root /opt/Squid/libexec/pam_auth
  2. chmod u+s  /opt/Squid/libexec/pam_auth
复制代码


5。重启 squid。测试。应该就没问题的了。
回复 支持 反对

使用道具 举报

发表于 2005-11-23 09:22:46 | 显示全部楼层
请教一下吖,为什么访问控制列表
acl advance 192.168.0.2-192.168.0.10/32
acl normal src 192.168.0.11-192.168.0.200/32
acl baduser src 192.168.0.100/32
中,后面的数字都是32呢,32代表什么意思?不是24吗?
谢谢!
回复 支持 反对

使用道具 举报

发表于 2005-11-23 12:23:50 | 显示全部楼层
32的话,就是本机咯。
回复 支持 反对

使用道具 举报

发表于 2005-12-13 13:37:00 | 显示全部楼层
官方网站上有很多版本!

下那个好啊?

多谢!
回复 支持 反对

使用道具 举报

发表于 2006-10-10 15:59:27 | 显示全部楼层
UBUNTU 怎么弄呢?
回复 支持 反对

使用道具 举报

发表于 2006-11-2 11:20:28 | 显示全部楼层
OK THANK YOU
回复 支持 反对

使用道具 举报

发表于 2007-2-28 20:07:50 | 显示全部楼层
谢谢楼主啊!正需要呢
回复 支持 反对

使用道具 举报

发表于 2007-3-1 11:47:18 | 显示全部楼层
不错 收藏先
学习中……
回复 支持 反对

使用道具 举报

发表于 2007-5-16 10:37:19 | 显示全部楼层
hao tie
回复 支持 反对

使用道具 举报

发表于 2007-5-20 16:59:47 | 显示全部楼层
顶一个,好文章,学习了.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表