- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Squid代理务器应用案例 多出口多用户认证上网
【51CTO独家特稿】最近帮朋友接了个小项目,客户在他们的美国机房租了几台服务器,然后想在上面做上网用的代理服务器,供客户在国内使用。具体需求如下:
1、客户的这台服务器具有多个出口ip地址
2、客户希望使用认证的方式使用代理服务器上网
3、客户希望通过不同的认证用户实现从不同的出口ip访问网络
4、隐藏代理信息,隐藏真实上网ip
此客户需求相当明确,根据上面罗列,条理也很清晰。本文的目的就是向大家介绍笔者实现这个需求的思路和步骤。
这里先看下我设计的逻辑图:
根据图中所示,红色的用户1会通过红色的出口ip1访问internet,绿色的用户2会通过绿色的出口ip2访问internet,用户3和用户4同样对应相应颜色的出口访问internet。
接下来根据上面的需求进行逐一的分解。
一、需求分析
1、服务器具有多个出口ip地址
这个没什么可说的,客户的出口ip为:
2、使用认证的方式使用代理服务器上网
这里要用到squid的认证功能。squid的认证功能大类包括basic_auth,digest_auth,external_acl,negotiate_auth,ntlm_auth这5种(注:squid-2.7.STABLE9版本),每个大类下面还有具体的认证方式,如NCSA,LDAP,DB等等,具体支持哪些可以去这些目录下面看。
笔者在这里主要介绍的是NCSA的方式,此种认证方式类似apache的auth认证方式,通过用户名密码来验证,密码文件也是通过htpasswd程序来创建。后面会给出具体配置。
3、通过不同的认证用户实现从不同的出口ip访问网络
先说实现不同出口ip访问网络,这个主要是依靠squid的tcp_outgoing_address配置实现的,此参数可以根据source ip或者用户名的不同,分配不同的出口ip出去。
如此一来,搭配第二个需求中的用户验证,正好就可以实现第三个需求了。后面会给出具体的配置。
4、隐藏代理信息,隐藏真实上网ip
这个需求很多人应该都想到使用什么配置文件了,对,就是squid的header_access这个参数。主要就是隐藏掉HTTP_VIA,VIA和X-forwarded-for。后面会给出具体配置。
二、安装配置
首先要做的就是下载一个squid安装包(下载地址)。笔者这里使用的是2.7 STABLE9,操作的当前目录是/tmp,下面所有涉及到目录的都是基于此目录。squid源文件路径是/tmp/squid-2.7.STABLE9.tar.gz
安装步骤如下:
tar zxvf squid-2.7.STABLE9.tar.gz
cd squid-2.7.STABLE9
./configure --prefix=/usr/local/squid --enable-async-io=320 --enable-icmp --enable-delay-pools --enable-kill-parent-hack --enable-snmp --enable-arp-acl --enable-htcp --enable-cache-digests --enable-removal-policies=heap,lru --enable-default-err-language=Simplify_Chinese --enable-x-accelerator-vary --enable-follow-x-forwarded-for --with-aufs-threads=320 --with-pthreads --with-dl --with-maxfd=65536 --enable-basic-auth-helpers=DB,NCSA --enable-digest-auth-helpers=password --enable-large-cache-files --with-large-files
make
make install
如果以上步骤中无报错,squid就被正确安装完毕了。
接下来执行:
cd /usr/local/squid/
#(之后的所有操作均在此目录下完成)
grep -v ^# etc/squid.conf.default|uniq etc/squid.conf
将创建一份未注释的配置文件。
接下来编辑此文件
vi etc/squid.conf
修改编辑的内容如下:
在
20 acl CONNECT method CONNECT
21
22 http_access allow manager localhost
这两行中间加入:include /usr/local/squid/etc/auth.conf。auth.conf文件的内容
您可能关注的文档
- scrum敏捷发学习笔记.doc
- SCVMM202部署之三:安装VMM自助服务门户.docx
- SD-1501用木炭无烟环保烧烤炉车和电气两用烧烤炉价格.docx
- section 2.咨询,预定,失物,存款,面试.doc
- sensit气检测仪和二氧化硫浓度报警器价格.docx
- SF6抽真空充装置说明书.doc
- sf6气体报警置和可燃性气体报警价格.docx
- SharePont项目实例学习10、列表与栏的管理.docx
- SHCORS系服务协议书(2013年3月).doc
- Ships i the Desert 课外补充练习题 EXERCISES.doc
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
最近下载
- 文献综述中小企业成本控制研究.docx VIP
- (2025春新版本)人教版七年级历史下册全册教案.pdf
- 北京市一零一中学2023-2024学年七年级下学期期中考试英语试卷(含答案).pdf
- 物业管理服务报价表完整优秀版 .pdf VIP
- 文献综述--中小企业成本控制的研究.doc VIP
- 莒县鸿瑞矿业有限公司新型节能环保型石灰窑项目(三期)竣工环境保护验收监测报告.docx VIP
- 第9课 近代西方的法律与教化 教案-统编版(2019)高中历史选择性必修1国家制度与社会治理.pdf
- ZOOM声乐乐器L-12 快速入门 (Chinese)说明书用户手册.pdf
- 基于单片机的宠物喂养系统的设计与实现.docx
- 中小学(三阶魔方的复原)校本教材.doc VIP
文档评论(0)