您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > FGT1_08_显式代理
©CopyrightFortinetInc.Allrightsreserved.FortiGateI显式代理FortiGate5.2.12什么是web代理?代理把用户的访问请求转发给网站»可能会缓存很多响应包»代理可以使用缓存中的内容来响应客户端请求,而无需转发给网站2个TCP连接1.从client到proxy2.从proxy到serverConnection1Connection2ClientHTTPProxyServer3隐式(透明)代理客户端无需更改配置»请求包依然发送给服务器的IP地址,而不是发给代理隐式代理拦截请求报文,尽管报文的目的IP地址不是代理上的»代理监听80端口和443端口192.168.0.2192.168.0.1:8010.0.0.50:80Requestsentto10.0.0.50:80Requestsentto10.0.0.50:80onbehalfof192.168.0.2ClientsendsrequesttoserverIP+port,notproxy,butproxyintercepts4显式代理客户端把请求包发送给代理的IP+端口,而不是直接发送给网站客户端必须配置显式代理代理监听设备自身的IP+端口号»通常是8080端口或4443端口Connection1Connection2192.168.0.2Requestsentto192.168.0.1:8080Requestsentto10.0.0.50:80ClientsendsrequesttoproxyIP+port,notserver192.168.0.1:808010.0.0.50:805怎样配置浏览器为了实现显式代理,需要对浏览器进行配置3种方法»浏览器设置»PAC文件(Proxyautomaticconfiguration)»Web代理自动发现协议webproxyautodiscoveryprotocol(WPAD)6浏览器代理设置手动配置代理IP地址和一个端口号可配置一些例外»这些例外的目的地址,浏览器不会发送给代理7ProxyAutomaticConfiguration(PAC)支持多个代理定义了浏览器如何选择一个代理»通常存储在某一个代理商»指定了哪些流量发送给哪个代理通过PAC文件的URL配置浏览器默认情况下,FortiGate把PAC文件存储在文件举例functionFindProxyForURL(url,host){if(shExpMatch(url,*.example.com/*)){returnDIRECT;}if(shExpMatch(url,*.example.com:*/*)){returnDIRECT;}if(isInNet(host,10.0.0.0,255.255.255.0)){returnPROXYfastproxy.example.com:8080;}returnPROXYproxy.example.com:8080;DIRECT;}到10.0.0.0/24的访问使用fastproxy.example.com:8080这个代理其他流量全部使用proxy.example.com:8080Connectionstoanysubdomain/URL/portnumberofexample.comdon’tusetheproxy任何到这个URL子域的连接都不使用代理9WebProxyAuto-discoveryProtocol(WPAD)浏览器查找PAC文件2种方法»DHCP查询»DNS查询通常情况下,浏览器优先使用DHCP»如果失败,再使用DNS查询»但有些浏览器只支持DNS方式10WPADDHCP方式1.浏览器向DHCPserver发起查询(DHCPINFORM)2.回复PAC文件的URL3.浏览器下载PAC文件4.浏览器通过代理访问网页DHCPServerFortiGatew/PACFile123WebServer411WPADDNS方式1.浏览器向DNS服务器解析wpad.local-domain2.回复PAC文件的URL浏览器下载PAC文件4.浏览器通过代理访问网页DNSServerFortiGatew/PACFile123WebServer412代理的Web缓存代理可以提供缓存功能»不同型号的设备支持的情况不一样当第一个请求到达时,代理会缓存一份网页的静态内容当请求同样内容时,客户端接收到的是缓存中的内容配置缓存可以:»提高广域网的带宽使用率»减轻了服务器的负载压力»提高网页的响应能力13web缓存Part1对于第一个请求,回应报文还不在缓存中代理:»从服务器上获取内容»如果内容不是动态变化的,则可以存储在内存中»向客户端转发这些内容FirstRequestFirstRequestContentContentResponseincache?No.14ContentWeb缓存Part2后续的请求,其回应报文通常都已经在缓存中»代理把缓存中的内容转发给客户端»不再从服务器下载内容»动态内容是一个例外,由于经常变化,所以代理总是像处理第一个请求报文一样处理动态内容SecondRequestContentResponseincache?Yes.15显式代理认证基于IP»使用同一个源IP地址发起的IP会话,可以看成一个用户»如果有多个用户在NAT设备内部,则不建议使用基于源IP的认证Internetaccesssharing,Citrix,terminalservers基于会话»HTTP的会话可以看成是一个用户»可以区分出使用同一个源IP地址的多个用户»认证成功后,浏览器把用户信息储存在sessioncookie中»而每一个后续的请求都带有相同的sessioncookie»Cookie会一直生效,直到浏览器被关闭或者用户删除cookie»需要消耗更多的资源16每session认证17如何配置显式web代理1.在全局下开启显式web代理2.指定显式代理监听的接口3.修改防火墙策略,以允许web代理流量通过4.配置客户端浏览器,连接到代理18显式代理设置显式web代理设置默认在GUI上隐藏19全局开启web代理EnabletheproxyandthePACfileProxylisteningTCPportEditthePACfileDefaultactionforproxytrafficthatdoesnotmatchanypolicy20在接口上开启web代理设置接口上监听指向代理的连接21显式代理策略TrafficcanbeinspectedWebcachesupportedinsomemodels22显式代理认证ActionisAuthenticateCreateauthenticationrulesSelectIPorsessionbasedauthentication23显式代理认证规则跟其他认证规则不同,显式代理没有fall-through不管用户认证是否成功,FortiGate使用第一条匹配的策略:»SourceIP»DestinationIP»OutgoingInterface当第一条规则匹配以后,后面的规则不会再去进行匹配24举例:显式代理认证Policy#1规则支出10.0.1.0/24网段的用户都需要进行认证»每次都会检查是否匹配这条策略Policy#2规则允许任何从10.0.0.0/8子网发起的访问,但由于10.0.1.*会匹配第一条策略,所以FortiGate策略永远不会去尝试匹配第二条policy25访客用户如果一个用户不属于policy中任何一个用户组,且strict-guest被禁用,FortiGate会认为这个用户属于SSO_guest_user这个组configweb-proxyexplicitsetstrict-guestdisableend26URL模式类型只适用于显式代理策略FortiGate会和HTTPGETrequest报文中的URL进行比较»/path/to/file»不包括HTTPHost:header中的主机名或IP地址27举例:URL地址对于访问FQDN,认证不是必须的update.microsoft.com28WPADDNS方式配置Part1DNS方式需要解析wpad.localdomain成FortiGate代理的IP地址需要匹配PAC文件名称和80端口configweb-proxyexplicitsetpac-file-server-statusenablesetpac-file-server-port80setpac-file-namewpad.datend29WPADDNS方式配置Part2此外,如果FortiGate就是DNSserver,则配置本地域名suffix:30监控代理的用户GUI:»User&DeviceMonitorFirewallCLI:#diagnosewaduserliststudent10.0.1.10id:40VD:root,duration:18清除所有代理认证会话#diagnosewaduserclear
本文标题:FGT1_08_显式代理
链接地址:https://www.777doc.com/doc-3326781 .html