05-TCP Proxy配置

目  录

1 TCP Proxy

1.1 概述

1.1.1 SYN Flood攻击简介

1.1.2 TCP Proxy功能简介

1.1.3 TCP Proxy处理流程

1.2 配置TCP Proxy

1.2.1 配置概述

1.2.2 配置TCP Proxy全局参数

1.2.3 使能TCP Proxy功能

1.2.4 新建静态受保护IP表项

1.2.5 查看受保护IP表项及统计信息

1.3 TCP Proxy典型配置举例

1.4 注意事项

1 TCP Proxy

 

目前,设备仅支持通过Web方式配置TCP Proxy。

1.1  概述

1.1.1  SYN Flood攻击简介

一般情况下,TCP连接的建立需要经过三次握手,即:

(1)      TCP连接请求的发起者向目标服务器发送SYN报文;

(2)      目标服务器收到SYN报文后,建立处于SYN_RECEIVED状态的TCP半连接,并向发起者回复SYN ACK报文,等待发起者的回应;

(3)      发起者收到SYN ACK报文后,回应ACK报文,这样TCP连接就建立起来了。

利用TCP连接的建立过程,一些恶意的攻击者可以进行SYN Flood攻击。攻击者向服务器发送大量请求建立TCP连接的SYN报文,而不回应服务器的SYN ACK报文,导致服务器上建立了大量的TCP半连接。从而达到耗费服务器资源,使服务器无法处理正常业务的目的。

1.1.2  TCP Proxy功能简介

TCP Proxy功能用来防止服务器受到SYN Flood攻击。客户端通过TCP代理请求与受保护的服务器建立连接时,TCP代理首先验证客户端的请求是否为SYN Flood攻击,验证通过后客户端和服务器之间才能建立TCP连接,从而避免服务器受到攻击。

TCP Proxy支持两种代理方式:单向代理和双向代理。单向代理方式是指仅对TCP连接的正向报文进行处理;双向代理是指对TCP连接的正向和反向报文都进行处理。用户可以根据实际的组网情况进行选择。

例如:在如图1-1所示的组网中,从客户端发出的报文经过TCP代理,而从服务器端发出的报文不经过TCP代理,此时只能使用单向代理方式;在如图1-2所示的组网中,从客户端发出的报文经和从服务器端发出的报文都经过TCP代理,此时可以使用单向代理方式,也可以使用双向代理方式。

图1-1 单向代理组网

图1-2 双/单向代理组网

1.1.3  TCP Proxy处理流程

1. 单向代理

单向代理方式下,TCP Proxy的处理流程如图1-3所示。

图1-3 单向代理方式的TCP Proxy处理流程

TCP代理收到某客户端发来的与受保护服务器(匹配某个受保护IP表项)建立TCP连接的请求(SYN报文)后,先代替服务器向客户端回应序号错误的SYN ACK报文。如果收到客户端回应的RST报文,则认为该TCP连接请求通过TCP代理的验证。一定时间内,TCP代理收到客户端重发的SYN报文后,直接向服务器转发,在客户端和服务器之间建立TCP连接。TCP连接建立后,TCP代理直接转发后续的报文,不对报文进行处理。

2. 双向代理

双向代理方式下,TCP Proxy的处理流程如图1-4所示。

图1-4 双向代理方式的TCP Proxy处理流程

TCP代理收到某客户端发来的与受保护服务器建立TCP连接的请求(SYN报文)后,先代替服务器向客户端回应正常的SYN ACK报文(窗口值为0)。如果收到客户端回应的ACK报文,则认为该TCP连接请求通过TCP代理的验证。TCP代理再向服务器发送同样的SYN报文,并通过三次握手与服务器建立TCP连接。双向代理方式中,在客户端和TCP代理、TCP代理和服务器之间建立两个TCP连接。由于两个TCP连接使用的序号不同,TCP报文交互过程中,TCP代理接收到客户端或服务器发送的报文后,需要修改报文序号,再转发给对端,这样才能保证通信正常。

1.2  配置TCP Proxy

tcp 代理的作用的更多相关文章

  1. nginx TCP 代理& windows傻瓜式安装

    一.下载nginx Windows http://nginx.org/en/download.html 二.解压到目录 三.进入目录并start nginx.exe即可启动 cd d:/java/ng ...

  2. nginx : TCP代理和负载均衡的stream模块

    一直以来,Nginx 并不支持tcp协议,所以后台的一些基于TCP的业务就只能通过其他高可用负载软件来完成了,比如Haproxy. 这算是一个nginx比较明显的缺憾.不过,在1.90发布后这个认知将 ...

  3. iOS进阶之TCP代理鉴权过程

    这段时间接触了网络代理,而自己的任务是完成TCP和UDP的网络代理,所以在这里写些自己的理解吧. 这篇文章先介绍一下TCP代理的鉴权过程(采用的是用户名和密码鉴权),下一篇文章再介绍UDP代理的鉴权过 ...

  4. 早期nginx tcp代理(基于patch实现)

    nginx tcp代理功能由nginx_tcp_proxy_module模块提供,同时监测后端主机状态.该模块包括的模块有: ngx_tcp_module, ngx_tcp_core_module, ...

  5. Nginx 配置TCP代理

    Nginx 1.9 版本以后增加了stream模块,可以对tcp,udp请求进行代理和负载均衡了,今天来体验一下首先编译安装过程configure的时候增加选项 --with-stream --wit ...

  6. nginx做TCP代理实现群集

    nginx做TCP代理实现群集 nginx从版本1.9开始,既能做HTTP代理,又能做TCP代理,这就非常完美了. 配置nginx.conf. 为了简单起见,笔者故意去掉了HTTP代理配置部分,只保留 ...

  7. 一个简单的tcp代理实现

    There are a number of reasons to have a TCP proxy in your tool belt, bothfor forwarding traffic to b ...

  8. Nginx TCP代理

    nginx 在1.9.0 版本发布以前如果要想做到基于TCP的代理及负载均衡需要通过打名为nginx_tcp_proxy_module的第三方patch来实现,该模块的代码托管在github上 网址: ...

  9. 创建一个TCP代理

    代理技术 代理一般被我们用于"穿墙",具体来说可以看这里,或者查wiki.理解代理背后的原理之后,便很容易知道,代理的作用不仅仅只是"穿墙".例如我们可以把经过 ...

随机推荐

  1. [YC703]ゴミ拾い Easy

    [YC703]ゴミ拾い Easy 题目大意: 二维平面内有\(n(n\le3\times10^5)\)个人和\(n\)个物品,第\(i\)个人在\((a_i,0)\)上,第\(i\)个物品在\((x_ ...

  2. Ubuntu14.04 安装中文输入法

    1 安装fcitx   sudo  apt-get install fcitx-table-py    这里py是拼音的意思,安装关依赖库和框架都会自动安装  2 把Ubuntu的系统环境改成中文  ...

  3. bzoj 1433: [ZJOI2009]假期的宿舍 -- 最大流

    1433: [ZJOI2009]假期的宿舍 Time Limit: 10 Sec  Memory Limit: 162 MB Description Input Output Sample Input ...

  4. js异步处理工作机制(setTimeout, setInterval)

    经常谈到异步,但是发现自己一直没深入理解setTimeout, setInterval,逛论坛的时候发现了这篇好文章,分享一下. ————————————————————以下为原文—————————— ...

  5. JDK源码(1.7) -- java.util.Deque<E>

    java.util.Deque<E> 源码分析(JDK1.7) -------------------------------------------------------------- ...

  6. 【弱省胡策】Round #0 Flower Dance DP

    Flower Dance Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://162.105.80.126/contest/%E3%80%90%E ...

  7. 2015 UESTC 搜索专题K题 秋实大哥の恋爱物语 kmp

    秋实大哥の恋爱物语 Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/61 De ...

  8. 一步一步创建JAVA线程

    (一)创建线程 要想明白线程机制,我们先从一些基本内容的概念下手. 线程和进程是两个完全不同的概念,进程是运行在自己的地址空间内的自包容的程序,而线程是在进程中的一个单一的顺序控制流,因此,单个进程可 ...

  9. Programmable current source requires no power supply

    Engineering labs are usually equipped with various power supplies, voltmeters, function generators, ...

  10. SQL Server性能调优:资源管理之内存管理篇(上)

    http://www.cnblogs.com/caspnet/archive/2011/02/21/1959539.html 对SQL Server来说,最重要的资源是内存.Disk和CPU,其中内存 ...