转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> MySql >> 正文
用户认证功能的SQUID代理服务器         ★★★★

用户认证功能的SQUID代理服务器

作者:闵涛 文章来源:闵涛的学习笔记 点击数:677 更新时间:2009/4/22 20:43:13
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中需要修改的内容如下:

# 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****** < create_script

测试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


[SyBase]Linux代理服务全攻略——Squid篇(转载)  [MySql]Redhat Linux9.0中 Squid 代理安装笔记
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台