注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

itoedr的it学苑

记录从IT文盲学到专家的历程

 
 
 

日志

 
 

Cisco ASA and Squid with WCCP2  

2013-08-22 08:31:54|  分类: wccp使用 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
reference:csico asa wccps2-squid-configExample from squid-cache site .
   
Very important passage from the Cisco-Manual

 "The only topology that the security appliance supports is when client and cache engine are behind the same interface of the security appliance and the cache engine can directly communicate with the client without going through the security appliance."

该安全网关支持的唯一的拓扑结构是当客户端和缓存引擎是安全设备相同的接口后面,缓存引擎可以与客户端无需经过安全设备直接通信.


Cisco ASA and Squid with WCCP2 - lzdzhy-itoedr - itoedr的it学苑
 
Cisco ASA

#Bypass the Squid box from re-capture


$access-list wccp_redirect extended deny ip host $SQUID-IP any
#Note: This shouldn't be required, because the asa would build this rule itself, when adding the squid box.

... while capturing the local /24 network defined by "workstations".


$access-list wccp_redirect extended permit tcp workstations 255.255.255.0 any eq www

Intercept everything not prevented by the bypass list:

 $wccp web-cache redirect-list wccp_redirect password foo
 $wccp interface internal web-cache redirect in

p.s.(postscript:附言): you should deny other forwardings with iptables


Squid configuration for WCCP version 2

All the squid.conf options beginning with wccp2_* apply to WCCPv2 only

wccp2_router

wccp2_address

wccp2_forwarding_method

wccp2_return_method

wccp2_assignment_method

wccp2_service


Squid configuration

$IP-OF-ROUTER is used below to represent the IP address of the router sending the WCCP traffic to Squid.

Squid-2.6 to Squid-3.0 require magic numbers...
http_port 3129 transparent
wccp2_router $IP-OF-ROUTER
 wccp2_forwarding_method 1
wccp2_return_method 1
wccp2_service standard 0 password=foo
wccp2_assignment_method hash 
#此项表示任务调度的方式:非交换机环境下,多为hash(默认)

Squid-3.1 and later accept text names for the tunneling methods

http_port 3129 intercept  

wccp2_router $IP-OF-ROUTER 
#一般即直接联接的端口地址
wccp2_forwarding_method gre 
#包前向转发方式,非交换机多支持gre模式,router7609下启动硬件加速,变可以使用同MASK方式
wccp2_return_method gre            
 #包回传方式gre
wccp2_service standard 0 password=foo
 #在asa启动了认证模式才需要password=foo(约定密码)

wccp2_assignment_method hash 
#此项表示任务调度的方式:非交换机环境下,多为hash(默认)


**************************************
Squid_box_OS configuration:
    $ modprobe ip_gre
    $ ip tunnel add wccp0 mode gre remote $ASA-EXT-IP local $SQUID-IP dev eth0 
     #设置防火墙通讯的gre遂道
     $ ifconfig wccp0 $SQUID-IP netmask 255.255.255.255 up
      #设立gre tunnel的ip通讯参数

     #disable rp_filter, or the packets will be silently discarded
     ( 禁用rp_filter,或者数据包将被默默丢弃掉 )
       echo 0 >/proc/sys/net/ipv4/conf/wccp0/rp_filter
       echo 0 >/proc/sys/net/ipv4/conf/eth0/rp_filter

enable ip-forwarding and redirect packets to squid engine;
   #此处有IP欺骗环节,包路由功能必须开启
echo 1 >/proc/sys/net/ipv4/ip_forward

 iptables -t nat -A PREROUTING -i wccp0 -p tcp --dport 80 -j REDIRECT --to-port 3129
 iptables -t nat -A POSTROUTING -j MASQUERADE 
#出口作原地址自动动态改写,此作用与tproxy类似,仅支持ipv4;

注:一作者关于WCCP与asa防火墙的集成过程中的注意事项

#重要说明:因为cisco防火墙默认把IP地址值最大的一个值当做自己的Router Identifier,没法改变。我在刚开始的测试中,一直都无法成功,就是因为Router Identifier的问题,squid如果同asa的inside口建立gre的话,squid无法接受到客户端的代理请求,如果建立gre通道的时候 跟Router Identifier的IP地址建立,能接收到请求,但无法返回信息,因为网关设置的是防火墙inside口的ip,通道是跟DMZ口建立的,DMZ口无 法与内网的IP通信,所以造成这个原因。之后我把squid的网关改成了核心交换机的ip地址,问题解决了。
  评论这张
 
阅读(203)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017