找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 19281|回复: 0

windows2003下简单配置squid代理服务器整理

[复制链接]
发表于 2013-5-31 12:33:08 | 显示全部楼层 |阅读模式
一、安装Squid到任意目录并注册为服务
. n, k: ^5 [- Z
3 V. y& w- X# x# l0 g5 f, }4 dSquidNT是Linux下Squid的Windows版本,默认必须安装在C:\Squid下面,通过修改Squid的配置文件就可以实现在系统的任意目录安装Squid。3 ~. q/ Z, A9 Q! l' I3 H8 V
举例,将Squid解压到d:\tools\winsqd,在d:\tools\winsqd\etc下有一个默认的配置文件squid.conf,将它另存为winsqd.conf,修改并启用以下的参数(去掉“#”就启用并覆盖默认值),保存。
9 o' P8 ]: \& F
" v( ^+ S; T+ i3 V' Y. C* F. xcache_dir ufs ../var/cache 100 4 4
! K. L! g0 K8 Y  o- l7 Z/ }+ ~& Caccess_log ../var/logs/access.log squid
% w. j9 c' P& `. r0 j- e! ?0 Dcache_log ../var/logs/cache.log+ V: I9 Y) _+ ]+ ^2 t7 k
cache_log ../var/logs/cache.log1 Z& l6 Z; Q, i6 g# t
mime_table ../etc/mime.conf* }$ i8 @, P) i( l7 M) p
pid_filename ../var/logs/squid.pid
' H$ b9 D  d9 O+ Munlinkd_program ../libexec/unlinkd.exe
+ L& g' q' [! f. J: \# ticon_directory ../share/icons& d3 t8 a" a1 G
error_directory ../share/errors/English' k8 `5 b5 _) X; |( \
coredump_dir none
, K0 o; _: P2 ~/ y- Y" S: |& q2 A# V
在命令提示符下,使用有管理员权限的用户,cd到d:\tools\winsqd\sbin,运行以下命令:
2 `; \* |" T; W" Y9 W+ ~4 I1、将squid安装并注册成服务,服务名称是WinSQD,使用配置文件在d:\tools\winsqd\etc\winsqd.conf,因为在sbin下启动squid,所以使用相对路径就成了../etc/winsqd.conf。+ @$ t$ h* b' ~% z
squid -i -f ../etc/winsqd.conf -n WinSQD4 d% |( T: ]3 T" G. T
* i. r* ~7 b$ x7 d% I0 F) }
Squid启动时有一个DNS测试,如果通过命令行启动可以使用“-D”参数禁止初始化时的DNS测试,但是在Windows平台下使用squidNT,将squid注册成服务来启动时,就无法通过设定“-D”参数禁止初始化DNS测试。除了将squid设置为任务计划,在开机时自动运行,暂时没有找到更好的方法。
: D/ \+ x- R" F2 ~5 I$ B9 N+ e: f3 V  I: c3 B
2、在Windows XP和Windows 2003下可以使用sc命令修改服务的属性,将Squid服务设置为手动启动;类型是服务以其自身的进程运行,不与其他服务共享可执行文件;错误处理方式是:错误已记录,启动继续,记录错误超出在事件日志的范围,不再给用户作出提示;服务的显示名称是“Windows SQD Service”
2 p$ v( @$ {* I- A5 O) Isc config winsqd start= demand type= own error= ignore DisplayName= "Windows SQD Service". I8 I. s* t- w# [
0 f. n5 U4 w1 n1 Q- Y  B
3、将Squid服务的描述修改成“Windows SQD Service”
; H% a% d' a2 [sc description winsqd "Windows SQD Service"5 ]: ]' o# Y7 Q* y) j) L5 ^6 k

5 M7 Q- P. Q* [; y二、简单安装配置4 y9 p, ^" M9 d" o6 C

- [& ^2 B7 o! V& Z3 U下载windwosNT版本的squid下载地址:6 P2 J2 U7 v5 h& `8 v& q9 Y
! S! e/ t6 e( y1 H. y+ Q  h" D
http://squid.acmeconsulting.it5 z  M3 i8 ]! \% e5 |- b
3 u  W. f. S8 M& j$ K6 @: F. b$ v
1.把squid-2.6.STABLE13-bin.zip解压缩,把里面的squid文件夹拷到c:/下(squid默认的是c:/squid)
- j& {+ l0 w( z2.squid/etc目录下把
; Q1 G$ D0 o/ x/ z
% i3 `5 F: _3 j" ?squid.conf.default拷贝一份重新命名为squid.conf4 ^$ }( J! Q0 X/ F

7 S1 g9 O, f( Wcachemgr.conf.default拷贝一份重新命名为cachemgr.conf
( D4 r, t7 o& c% K* N1 I" C$ S- c7 l. N$ K
mime.conf.default拷贝一份重新命名为mime.conf1 q$ w% M% @4 i+ y, H! |& a

, t" q% T4 e* r& K, f4 W9 t3.用文本编辑器打开squid.conf,需要修改的地方:
3 {& P3 S9 y- S9 s( O3 i' D
; c  ~9 P  C) M2 ]2 Z$ m- M3 @8 T2 {$ t找到http_port 3128在后面增加一行
  r* h7 A6 l+ y. N7 n6 S
% L3 _2 ?' K8 C- Bhttp_port 80 transparent
/ u: y5 _) N/ E
3 _$ e8 h- j$ q" s' ]% x找到#cache_peer sib2.foo.net sibling 3128 3130 [proxy-only]在后面增加一行
5 {9 I# }7 Q# T/ B
" H% n3 P& ?/ P! ccache_peer 192.168.1.8 parent 7001 0 no-query originserver
' y( ^0 l, |' i) B2 f$ U2 T, |
$ d, S/ f( d# B! W找到# TAG: visible_hostname在后面增加一行4 W$ F) r3 ~0 X8 f
6 j, S8 s5 P. J% P# d8 z! W" F
visible_hostname volcano(任意命名)
# k# l% e, a1 R9 i5 X: \
3 K: e6 U: c, A) |7 ]' E找到http_access deny all在其前面加#将这一行注释掉,然后增加一行
6 O* {) R- R3 G
" F9 u. N/ k/ E# _% w* Qhttp_access allow all
6 L' }' q0 B( t. P5 {
& z/ f4 `9 ]  g2 O2 Y! `4.从命令行到c:/squid/sbin目录下执行) b  k: g0 i2 p4 z

" R" h5 |# p4 z, U) p* x" h( m3 Ksquid -i(将squid服务加入到服务里面)
/ \+ A4 @' V' D1 I$ i" i; j& h$ O# y5 \
squid -z6 E$ Q1 B3 m  Y; U% D

: l/ J- x5 c+ G0 L# q" L- q: \调试可以用:squid -N -d1  Q. j$ Y5 n9 z

; y6 O% ~. R* d" i安装完成& I2 ~# F( p9 T8 I

4 w. z+ y1 N, B5.从服务里启动squid) i: e2 J9 @% O& ?8 Y2 V

+ v$ o, \& i* h访问squid服务器:
' O/ _- h. _+ H1 D# A/ D' a
8 V$ b2 j5 |6 phttp://192.168.1.2(你的squid服务器IP地址)>>>指向http://192.168.1.8:7001(web服务器地址)4 Y5 L4 s5 i( B, \
+ \6 R; |9 y! l- }; O" [6 z! \8 s
如果把#http_access deny all打开把http_access allow all注释掉,你的访问就会被拒绝
" Z: ?. y6 g' K+ q. Y5 q: c+ X  h- j: V; R4 r- W) d- ?
你需要配置一下:找到下面两行1 Q9 K: P: e$ V; j- p1 {) ?6 U

, Y# m7 H/ d3 f* j' R  ?2 |#acl our_networks src 192.168.1.0/24 192.168.2.0/24
, t& I, f2 n- Q#http_access allow our_networks
  y; [* G# K6 _) W' z
3 u( ]  W. V$ L% [% V5 x9 a打开注释,修改你的内网ip(段)可以设为192.168.1.0/24一个也可以如上面的一样设一段IP
6 |1 z3 O8 j& V$ ^' Y3 w3 \& j- \' w& X
三、反向代理配置( x) R. v, O$ y
  O0 e2 B" g$ s
注意:反向代理和透明代理不能同时使用  S$ O% X- H: W. U* s8 d  w
2 Q% Q4 M% o, p# j% r$ ~
步骤:  E7 X! ?# c% A1 j( Y2 q, B- r- V
a.  Squid服务器的设置,修改/etc/squid/squid.conf
+ U! U4 h) k1 y( q1 [0 O$ \同样反向代理aquid服务器上的配置与标准的代理缓冲服务器几乎一样 1 d/ c) ^/ ]( O/ ~$ w; }( X: U4 u1 R
不同之处:http_port 10.106.34.12:80 vhost* I2 H. G9 D5 n. X" r/ W% x
           Cache_peer 192.168.1.12 parent 80 0 originserver weight=5 max-conn=30! s4 b( U  ?% J+ a. Y8 c, ^
上一行的解释:定义web服务器 web服务器地址 服务器类型 http端口 icp端口  [可选项]
2 o% O! r# ^* I7 Q: k
6 Z6 _8 j0 k- z* [3 Z! r  [5 Gsquid –k parse
# Z0 T6 l7 m' M1 k& O! x                     service squid reload1 d& Z% b7 [' F! |  p4 x7 m4 D
6 p% O+ `0 N: |1 I5 v) C4 C+ s
b. 客服端的设置(注意:这时的客服端就是web服务器)
1 S! e& L8 \, y: s$ `. Z' R$ G               开启web服务
% I  Q4 ~+ u6 f. f6 Z6 i/ b6 L          好了通过以上配置外网即可访问你的web服务器了: I( \3 M( n+ a. Y* I0 U
, |# F9 b6 ]# e* a+ U
反向代理的简单配置文件(squid默认在c盘,将etc下mime.conf.default改为mime.conf):
! @! i: {5 K5 K9 i) [+ o
游客,如果您要查看本帖隐藏内容请回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站论坛 ( 蜀ICP备06004864号-6 )

GMT+8, 2026-6-25 12:49 , Processed in 0.080584 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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