大家先回顧一下我之前發的“ACL中的established選項”中關於TCP的內容。
之前說過,TCP建立連線的三次握手過程中,一方向另一方傳送的第一個報文設定了SYN位,當某臺裝置接收到一個請求服務的初始報文時,該裝置響應這個報文,發回一個設定了SYN和ACK位的報文,並等待源端來的ACK應答。那麼,如果傳送方並不回覆ACK,主機就會因為超時而結束連線。當主機在等待這個連線超時的過程中,連線處於半開(Half-open)狀態,半開連線消耗了主機的資源。在等待三次握手過程中耗盡主機資源就形成了SYN攻擊,尤其是將成千上萬的SYN發往某臺主機,則該主機將很快崩潰掉。
這時我就需要在路由器上配置TCP攔截(TCP intercept)來防止這種攻擊了。
在TCP連線請求到達目標主機之前,TCP攔截透過對其進行攔截和驗證來阻止這種攻擊,也就是說,路由器會代替主機進行連線。
TCP攔截(TCP intercept)可以在兩種模式上工作:攔截和監視。在攔截模式下(intercept mode),路由器攔截所有到達的T C P同步請求,並代表伺服器建立與客戶機的連線,並代表客戶機建立與伺服器的連線。如果兩個連線都成功地實現,路由器就會將兩個連線進行透明的合併。路由器有更為嚴格的超時限制,以防止其自身的資源被S Y N攻擊耗盡。在監視模式下(watch mode),路由器被動地觀察half-open連線的數目。如果超過了所配置的時間,路由器也會關閉連線。ACL則用來定義要進行TCP攔截的源和目的地址。www.3lian.com
基本配置命令:
ip tcp intercept mode {intercept/watch} '設定TCP攔截的工作模式,預設是intercept。
ip tcp intercept list ACL編號 '呼叫ACL(擴充套件的)用來定義要進行TCP攔截的源和目的地址。
其他命令:
當一個路由器因為其所定義的門限值被超出而確認伺服器正遭受攻擊時,路由器就主動刪除連線,直到half-open的連線值降到小於門限值。預設關閉的是最早的連線,除非使用了“ip tcp intercept drop-mode random”命令(隨機關閉半開連線)。當所設定的門限值被超時時,路由器進行下面的動作:
1) 每一個新的連線導致一個最早的(或隨機的)連線被刪除。
2) 初始的重傳超時時間被減少一半,直到0.5秒。
3) 如果處於監視模式,則超時時間減半,直到15秒。
有兩個因素用來判斷路由器是否正在遭受攻擊。如果超過了兩個高門限值中的一個,則表明路由器正遭受攻擊,直到門限值已經降至兩個低門限值以下。下面顯示了有關的引數及其預設值,並對其加以簡單描述。
1) ip tcp intercept max-incomplete high number 1100
在路由器開始刪除連線之前,能夠存在的half-open連線的最大數目。
2) ip tcp inercept max-incomplete low number 900
在路由器停止刪除half-open連線之前,能夠存在的最大half-open連線數目。
3) ip tcp intercept one-minute high number 1100
在路由器開始刪除連線之前,每分鐘內能存在的最大half-open連線數目。
4) ip tcp intercept one-minute low number 900
在路由器停止刪除連線之前,每分鐘內能存在的最小half-open連線數目。
half-open連線總數與每分鐘half-open連線的數量比率是相聯絡的。任何一個最大值到達,T C P攔截就被啟用並且開始刪除half-open連線。一旦TCP攔截被啟用,這兩個值都必須下降到TCP攔截的低設定值,以便停止刪除連線。
注意:
攔截模式下,路由器響應到達的SYN請求,並代替伺服器傳送一個響應初始源IP地址的SYN、ACK報文,然後等待客戶機的ACK。如果收到 ACK,再將原來的SYN報文發往伺服器,路由器代替原來的客戶機與伺服器一起完成三次握手過程。這種模式會增加路由器的記憶體和CPU的額外開銷,並且增加了一些初始會話的延時。
在監視模式下,路由器允許SYN請求直接到達伺服器。
如果這個會話在30秒鐘內(預設值)沒有建立起來,路由器就給伺服器傳送一個RST,以清除這個連線。
cisco路由器上配置TCP攔截
相關文章
- TCP標誌位詳解及tcp攔截配置TCP
- 在CISCO路由器上配置NAT功能路由器
- Cisco路由器VPN配置路由器
- Cisco路由器的安全配置簡易例項(上)路由器
- Cisco路由器基本配置命令路由器
- Spring MVC 中的攔截器的使用“攔截器基本配置” 和 “攔截器高階配置”SpringMVC
- Cisco路由器配置的常識路由器
- Cisco路由器上配置3A認證的故障除錯路由器除錯
- SpringMVC配置攔截器SpringMVC
- CISCO 2811 路由器配置命令全集路由器
- Cisco 路由器暫存器配置[轉貼]路由器
- nginx配置攔截指定國家IPNginx
- Cisco的路由器上進行埠對映路由器
- 攔截器,攔截器棧總結
- Cisco路由器的安全配置簡易例項(中)路由器
- Cisco路由器的安全配置簡易例項(三)路由器
- struts的常用配置以及自定義攔截器
- jpcap安裝與配置、資料包攔截PCA
- 用Json Template在Azure上建立Cisco CSR路由器JSON路由器
- SpringMVC攔截器,設定不攔截的URLSpringMVC
- MyBatis攔截器MyBatis
- Mybatis 攔截器MyBatis
- 導彈攔截
- sql攔截器SQL
- 前端架構之vue+axios 前端實現登入攔截(路由攔截、http攔截)前端架構VueiOS路由HTTP
- vue中用axios攔截器攔截請求和響應VueiOS
- win10 microsoft edge網址被攔截如何取消攔截Win10ROS
- 用python管理Cisco路由器Python路由器
- SpringBoot 2.X配置登入攔截器Spring Boot
- 配置filter攔截forward之類的內部轉發FilterForward
- 在Azure上通過Powershell建立多Interface的Cisco CSR路由器路由器
- axios攔截器iOS
- Mybatis Interceptor 攔截器MyBatis
- Xposed攔截抽象方法抽象
- WKCrashSDK - crash攔截工具
- axios 攔截器iOS
- spring攔截器Spring
- Java interceptor 攔截器Java