網站首頁 編程語言 正文
Iptables防火墻connlimit模塊擴展匹配規則
connlimit模塊的作用是限制請求報文對特定服務的并發連接數限制的,例如Telnet服務,默認情況下沒有并發連接數的限制,可以允許n個客戶端同時連接,如果應用了connlimit模塊,可以對并發連接數進行限制。
connlimit模塊常用參數:
-
--connlimit-upto
:如果現有連接數小于或等于設置的并發連接數值,那么就放行。 -
--connlimit-above
:如果現有連接數大于設置的并發連接數值,那么就放行。
案例:每個客戶端主機僅允許同時對本機發起兩個ssh連接。
數據流入的操作,在INPUT鏈的filter表添加相應的規則。
1)編寫具體的防火墻規則
[root@jxl-1 ~]# iptables -t filter -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 2 -j REJECT
2)查看設置的規則
[root@jxl-1 ~]# iptables -L -n -v --line-number Chain INPUT (policy ACCEPT 52358 packets, 43M bytes) num pkts bytes target prot opt in out source destination 1 0 0 REJECT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 #conn src/32 > 2 reject-with icmp-port-unreachable Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 52598 packets, 68M bytes) num pkts bytes target prot opt in out source destination
3)測試效果
同時登陸兩個ssh沒問題,第三個時就提示無法連接了。
Iptables防火墻time模塊擴展匹配規則
time模塊的作用是根據時間范圍來匹配報文,例如在上午的8點30到下午18點30關于瀏覽淘寶的報文都拒絕。
time模塊的常用參數:
-
--timestart
:指定開始時間。 -
--timestop
:指定結束時間。 -
--monthdays
:指定一個月中的某一天。 -
--weekdays
:指定一周中的周期,例如1-7。 -
--kerneltz
:使用內核時區的時間。
可以在參數前面加!號表示去反。
time模塊默認使用的實際UTC時間,UTC時間比我們正常的時間慢8小時。
案例:在周一到周五的8:00到18:00禁止訪問淘寶網站。
此案例也是將防火墻看做了是路由器,在流量流出時定義防火墻規則,也就是在防火墻的OUTPUT鏈定義規則。
1)編寫防火墻規則
在周一到周五的8點到18點時間段,所有發往taobao.com的TCP 80端口的報文都會被拒絕。
[root@jxl-1 ~]# iptables -t filter -I OUTPUT -p tcp -d taobao.com --dport 80 -m time --timestart 00:00 --timestop 10:00 --weekdays 1,2,3,4,5 -j DROP
2)查看設置的防火墻規則
淘寶網的地址有很多,寫入防火墻后,會將解析出來的多個IP地址都寫入到表中,如下圖所示。
3)測試效果
在周一到周五的早上8點到晚上18點的范圍之間,再想訪問淘寶網,則會被攔截。
原文鏈接:https://juejin.cn/post/7128219903613468708
相關推薦
- 2022-08-11 python面積圖之曲線圖的填充_python
- 2022-06-17 Go語言學習之函數的定義與使用詳解_Golang
- 2022-08-20 在?pytorch?中實現計算圖和自動求導_python
- 2022-09-29 go日志庫logrus的安裝及快速使用_Golang
- 2022-10-10 YOLOv5改進之添加SE注意力機制的詳細過程_python
- 2022-03-26 C++缺省參數的具體使用_C 語言
- 2022-10-27 使用python+pandas讀寫xlsx格式中的數據_python
- 2021-12-03 C++類和對象實戰之Date類的實現方法_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支