解决不对称流量经过JUNIPER防火墙,tcp连接重置丢失问题

背景:公司网络增加一台JUNIPER防火墙,用于外网网关使用,其实配置上网配置很简单,配置完成后,外网连接测试也都正常,但在特殊的测试环境中会出现一种情况,该环境如图所示:

现象:当PC机的网关指定为防火墙的内网接口后(而不是核心交换机地址),当pc在telnet或者ssh连接10.10.2.*网段的服务器(网关在核心交换机上)等时,tcp连接均会在20s后重置。我的环境中其实存在一些问题的,就是流经防火墙的流量并不对称,其中pc→服务器的流量经过防火墙,而服务器→pc的流量不经过防火墙,造成的流量往返路径不一致。

问题排查

① 在pc上通过wireshark进行抓包,会发现在20s到来的时候,会收到一个tcp的rst报文,tcp_rst报文源地址为连接的10.10.2.*的目标主机所发。这个现象很奇怪,为什么目标服务器会无缘无故的发送rst报文,我再次在服务器上进行抓包,但是发现一个奇怪的问题,抓包的结果发现,服务器并没有发送tcp_rst报文,所以先将问题定位到juniper防火墙上。

② 在防火墙的network>zones>edit选项中存在一个“If TCP non SYN, send RESET back”选项,系统默认是开启的。该选项的功能是,tcp在3次握手建立连接时,如果防火墙没有检测到完整的3次握手报文,将认为该连接时不安全或者不完整的,防火墙将在tcp的连接time_out时间到达后,代替目标服务器发送一个tcp_rst的报文(报文源ip封装的为服务器的地址)。。

③ 将上文中的功能勾选去掉,但我在下面的测试中又遇到了其他的问题,虽然tcp的连接不会再提示重置,但连接在20s后,会卡死在连接状态,无法输入输出设备。没办法继续查。。。在juniper的web管理页面寻找无果,所以登录到命令行模式,查找有关tcp的参数配置命令,其中发现三条有意思的命令:unset flow no-tcp-seq-check ;set flow tcp-syn-check ;unset flow tcp-syn-bit-check ;其中set flow tcp-syn-check命令是默认开启的,我通过“unset flow tcp-syn-check”命令,关闭该功能后,发现问题解决,tcp连接不会再出现重置或者卡死的情况。

④ set flow tcp-syn-check的作用是,正常tcp在建立连接时需要进行3次握手,而我的测试环境中,流量出入防火墙的路径并不匹配,所以导致3次握手中的第2个报文没有经过防火墙,所以该命令告诉防火墙这是一个不严谨的tcp连接,防火墙将拒绝这种不严谨的tcp连接,过滤到相关的通信报文。“unset flow tcp-syn-check”将不再做tcp syn 3次握手的检查,因为该命令是在全局配置下配置的,所以关闭后这个防火墙的所有zones都将关闭该功能,从而降低了防火墙的安全性。但是启用NAT的接口则一定会做syn的检查。

问题回顾

到现在基本的问题已经解决,至于tcp连接为什么会在20s重置或者卡死,应该是其他相关参数的配置,在哪里配置我没有找到。我在网上查到一条相关命令:set security screen ids-option untrust-screen tcp syn-flood timeout 20 这一条其意义是:TCP 连接的建立必须在20秒内完成,否则该连接请求将被丢弃。该命令是用于防范syn泛洪攻击的。我防火墙的版本是6.2.0r5.0,并没有在配置中找到该配置,并且也无法配置该命令。

在这里吐槽一下juniper的防火墙,能配置的内容太多了,对于新手来说真的不太容易。自定义服务(并指定tcp连接的超时时间);对于不同zones指定相关的防护功能(Security>screening>screen);配置同zones内的互访规则(只需要在zones配置中勾选);配置同接口下一个网段内用户的互访(接口下配置进行勾选)。。。不过juniper的确是我用过的安全性和多功能性最强大的企业级防火墙了。

时间: 2024-10-19 04:54:28

解决不对称流量经过JUNIPER防火墙,tcp连接重置丢失问题的相关文章

为什么Google不返回我的搜索结果(无状态TCP连接重置)

1.Great Firewall 它的存在会对境外涉及敏感内容的网站.IP地址.关键词.网址等进行过滤 结果就是:国内网络用户无法访问某些国外网站,国外网络用户也无法访问某些国内网站,其中有可以分成2类 永久性无法访问 暂时性无法访问 2.主要技术 域名劫持 特定IP地址封锁 特定IP地址端口封锁 无状态TCP连接重置 特定TLS证书阻断 明文HTTP协议关键字过滤阻断 对破网软件的反制 本文主要介绍无状态TCP连接重置 3.DNS小测试 引入:客户端如何获得Baidu, Bing, Googl

总部与多分支VPN解决方案(hub to spoke拓扑结构)juniper防火墙为例

企业案例: 总部与多分支VPN解决方案(hub to spoke拓扑结构) 第1章 hub to spoke应用场景介绍: IPsec VPN可以将公司分散在各地的办公场地安全的连接在一起,用户体验就如同专线连接.各地只需要有互联网接入和支持ipsec vpn功能的路由器或者防火墙. ipsec vpn只能够两两互联,如果企业有10个分散的机构,两两互联,每个点都需要与其他9个点互联,共需要建立45条,公式为:n*(n-1)/2 .我晕了个去,还让网管活不. 那有没有更加高效的解决办法呢?答案是

juniper防火墙基础应用学习笔记

基于tpc/ip 2-4层 防火墙设备的设置步骤:1.确定部署模式(透明.路由.NAT模式)2.设置设备的IP地址(接口地址.管理地址)3.设置路由信息4.确定ip地址信息止(基于策略的源.目标地址)5.确定网络应用6.配置防问控制策略 默认帐号密码:netscreen 防火墙三个接口的安全区域:ethernet1:trustethernet2:dmzethernet3:untrustethernet4:null 防火墙三种应用模式:透明模式NAT模式路由模式特殊模式:二层模式与三层模式混合部署

zabbix自动监控网络设备juniper防火墙

1.配置juniper防火墙SNMP 登陆到juniper页面或使用SSH链接配置,此处使用web界面配置 1)定位到Configuration > Report Settings > SNMP,配置端口管理信息如图 2)点击New Community创建团体名,配置版本等,如图: 3)在Host IP Address/Netmask填写链接IP地址和子网,选择版本,点击Add添加 4)定位到Network > Interfaces (List)选择链接接口编辑,勾选允许snmp链接 到

Juniper 防火墙建立VPN不成功:Phase1:Retransmission

Juniper防火墙建立VPN不成功,日志中出现下面的提示:Phase 1: Retransmission limit has been reached. 下面是从Juniper资料库中查到的相关资料,按照Juniper资料库的办法好像并没有彻底解决问题,不过可以参考一下Juniper防火墙的排错思路. Synopsis: VPN won't come up; It is failing in Phase 1, with Retransmission limit has been reached

juniper防火墙基于路由的IPsec VPN配置

一.环境说明 北京公司需要和上海分公司建立安全通信的VPN,便于北京总公司与上海分公司资源共享安全. 需建立两条子网通道规划地址如下: 北京总公司地址规划: 外网接口地址:218.23.23.23/24 内部VLAN地址:10.0.0.0/24  10.0.1.0/24 上海分公司地址规划: 外网接口地址:218.241.241.23/24 内部VLAN地址:172.173.0.0/24  172.173.3.0/24 二.开始配置IPsec VPN 北京总公司配置: 配置外网接口地址为非信任区

-分公司网络建设----Juniper防火墙SRX240支持宽带拨号

Juniper防火墙SRX240支持宽带拨号     分公司网络建设,平时我们本地外网开通的是互联网专线,但如果公司的员工允许访问外网的人数比较少,开通专线费用较高,那么我们可以使用家庭宽带的方式解决这个问题,但是你会配置吗?我们配置过Juniper的netscreen系列的防火墙,这个系列的设备通过界面化的操作就能实现宽带拨号,但是SRX系列的防火墙也支持宽带拨号,以下面的拓扑为例,进行配置.     防火墙的ge-0/0/15口接本地外网宽带,来访问Internet,需要如下配置: set

Juniper 防火墙端口映射设置

首先我们登陆到juniper防火墙控制界面 默认地址大家都知道(192.168.1.1) 默认用户和密码netsscreen 下面介绍登陆界面: 让我们开始配置吧 依次展开policy → Policy Elements → Services → Custom 下面是我建立的远程桌面 点击新建New按钮进入自定义服务添加页面 在Service Name处填写自定义的服务名称,在Transport protocol处选择需要使用的协议,在Destination Port 处填写自定义服务的目的端口

Juniper 防火墙核心技术-Zone

Juniper防火墙核心技术--Zone 分三类zone 1.安全zone 2.功能zone 3.隧道zone 以下为ISG-2000防火墙默认的zone NS_ISG2000-> get zone Total 14 zones created in vsys Root - 8 are policy configurable. Total policy configurable zones for Root is 8. --------------------------------------