squid和mysql的安装采用了sun发布的二进制安装包,它在software_companion_x86 cd中可以找到;mysql_auth用google搜索就可以找到。 一、安装配置squid+mysql 1.建立用户和组 # groupadd squid # useradd -g squid -d /dev/null -s /bin/false squid # groupa
squid和mysql的安装采用了sun发布的二进制安装包,它在software_companion_x86 cd中可以找到;mysql_auth用google搜索就可以找到。 
一、安装配置squid+mysql 
1.建立用户和组 
# groupadd squid 
# useradd -g squid -d /dev/null -s /bin/false squid 
# groupadd mysql 
# useradd -g mysql -s /bin/false mysql 
2. 安装mysql 
# mount –f hsfs –o ro /dev/dsk/c1t0d0p0 /cdrom 
# cd /cdrom/components/i386/packages 
# pkgadd -d ./ -s /var/spool/pkg sfwmysql sfwgcmn 
# pkgadd sfwgcmn sfwmysql 
# chown -r root /opt/sfw/mysql 
# chgrp -r mysql /opt/sfw/mysql 
# chown -r mysql /opt/sfw/mysql/var 
# /opt/sfw/mysql/bin/mysql_install_db 
# /opt/sfw/mysql/bin/mysqld_safe & 
# cp /opt/sfw/mysql/share/mysql/my-medium.cnf /etc/my.cnf 
# vi /etc/my.cnf 
bind-address = 127.0.0.1
设置启动脚本: 
# cp /opt/sfw/mysql/share/mysql/mysql.server /etc/init.d/mysql.server 
# ln /etc/init.d/mysql.server /etc/rc3.d/s79mysql 
# ln /etc/init.d/mysql.server /etc/rc0.d/k00mysql 
# ln /etc/init.d/mysql.server /etc/rc1.d/k00mysql 
# ln /etc/init.d/mysql.server /etc/rc2.d/k00mysql 
# ln /etc/init.d/mysql.server /etc/rcs.d/k00mysql 
# chown root:sys /etc/init.d/mysql.server /etc/rc3.d/s79mysql 
# chmod 0744 /etc/init.d/mysql.server /etc/rc3.d/s79mysql
设置root密码: 
# mysqladmin -u root password llzqq 
3.安装squid 
# pkgadd -d ./ -s /var/spool/pkg sfwsquid 
# pkgadd sfwsquid 
# cd /opt/sfw/squid/etc 
# cp squid.conf.default squid.conf 
# cp mime.conf.default mime.conf
4.配置squid.conf 
http_port 192.168.0.1:3128 
cache_mgr llzqq@nero.3322.org 
error_directory /opt/sfw/squid/share/errors/simplify_chinese 
dns_nameservers 202.99.160.68 202.99.168.8 
visible_hostname nero.3322.org 
httpd_accel_uses_host_header on 
httpd_accel_host virtual 
httpd_accel_port 80 
httpd_accel_with_proxy on 
cache_mem 20 mb 
maximum_object_size 4096 kb 
minimum_object_size 0 kb 
maximum_object_size_in_memory 30 kb 
minimum_object_size_in_memory 0 kb 
cache_swap_low 85 
cache_swap_high 90 
cache_dir ufs /opt/sfw/squid/var/cache 
cache_effective_user squid 
cache_effective_group squid 
#http_access allow manager localhost 
#http_access allow localhost 
#http_access deny manager 
#http_access deny !safe_ports 
#http_access deny connect !ssl_ports 
#http_access deny all 
http_reply_access allow all 
icp_access allow all 
miss_access allow all 
-------------------------------------------------------- 
# chown –r squid:squid /opt/sfw/squid/var 
# /opt/sfw/squid/sbin/squid -z
5. squid启动脚本 
# vi /etc/rc3.d/s78squid 
====================== s78squid ===================== 
#!/sbin/sh 
# 
# copyright (c) 2004 by llzqq, inc 
# llzqq@126.com 
# all rights reserved. 
# 
#ident '@(#)squid 1.1 04/05/24 smi' 
case '$1' in 
start) 
/opt/sfw/squid/sbin/squid -s 
;; 
stop) 
/opt/sfw/squid/sbin/squid -k shutdown 
pkill squid 
;; 
*) 
echo 'usage: $0 { start | stop }' 
exit 1 
;; 
esac 
exit 0 
====================== s78squid ===================== 
# chown root:sys /etc/rc3.d/s78squid 
# chmod 744 /etc/rc3.d/s78squid 
# ln -s /etc/rc3.d/s78squid /etc/rc2.d/k78squid
二、 安装mysql_auth 
# gzip -d mysql_auth-0.6beta.tar.gz 
# tar vxf mysql_auth-0.6beta.tar 
# cd mysql_auth-0.6beta 
makefile中需要修改的内容如下: //from www.w3sky.com
# vi makefile 
cflags = -i/opt/sfw/mysql/include -l/opt/sfw/mysql/lib/mysql 
install = /usr/ucb/install 
$(install) -o root -g sys -m 700 mypasswd /usr/local/bin/mypasswd 
$(install) -o squid -g squid -m 755 mysql_auth /usr/bin/mysql_auth 
$(install) -o squid -g squid -m 600 $(conf) /etc/mysql_auth.conf 
$(install) -o squid -g squid -m 600 $(conf) /etc/mysql_auth.conf.default
src/define.h中需要修改的内容如下: 
# vi +5 src/define.h 
#define config_file '/etc/mysql_auth.conf' 
#define def_mysqld_socket '/tmp/mysql.sock'
src/mysql_auth.conf中需要修改的内容如下: 
# vi src/mysql_auth.conf 
mysqld_socket /tmp/mysql.sock 
# /usr/ccs/bin/make 
# /usr/ccs/bin/make install
创建用户数据库: 
# cd scripts 
# mysql -u root -p****** 
测试mysql_auth 
1.添加一个测试用户 
# mypasswd llzqq 123456 
password record added succesfully. 
2.验证刚才建立的用户 
# mysql_auth 
llzqq 123456 
0k 
3.删除一个已经建立的用户用这个命令 
# mypasswd –d username 
三、在squid.conf中增加mysql_auth认证部分
# vi /etc/squid/squid.conf 
添加下面的代码到squid.conf中“tag: acl”一节的后面 
auth_param basic program /usr/bin/mysql_auth 
auth_param basic realm llzqq’s caching server 
auth_param basic children 5 
auth_param basic credentialsttl 2 hours 
acl password proxy_auth required 
http_access allow password 
authenticate_ip_ttl 2 hours 
http_access deny all
四、客户端设置 
在浏览器的代理服务器设置中填写squid服务器的ip和端口: 
192.168.0.1:3218 
在下载软件flashget的代理服务器设置中填写squid服务器的ip、端口、用户和密码: 
192.168.0.1:3218 
user:llzqq 
passwd:123456 
五、注意事项 
在进行以上安装前要先安装gcc否则不能编译mysql_auth,另外在添加用户前需要设置root用户的ld_library_path变量中有这个路径:/opt/sfw/mysql/lib/mysql
   
 
   