iptables filter表小案例

 

案例1:把80端口,22端口,21端口放行

22端口指定IP访问,其它IP拒绝。

 

shell脚本实现:

 

[root@centos7 ~]# vim /usr/local/sbin/iptables.sh

 

#!/bin/sh

ipt="/usr/sbin/iptables" #定义ipt 变量,绝对路径

$ipt -F # 清空之前的规则

$ipt -P INPUT DROP #拒绝接入数据包

$ipt -P OUTPUT ACCEPT #发送数据包

$ipt -P FORWARD ACCEPT #转发数据包

$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # 指定状态放行

$ipt -A INPUT -s 192.168.133.0/24 -p tcp --dport 22 -j ACCEPT #22端口

$ipt -A INPUT -p tcp --dport 80 -j ACCEPT #80端口

$ipt -A INPUT -p tcp --dport 21 -j ACCEPT #21端口

 

 

[root@centos7 ~]# sh /usr/local/sbin/iptables.sh 

 

[root@centos7 ~]# iptables -nvL

Chain INPUT (policy DROP 0 packets, 0 bytes)

 pkts bytes target     prot opt in     out     source               destination         

   61  4156 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED

    0     0 ACCEPT     tcp  --  *      *       192.168.133.0/24     0.0.0.0/0            tcp dpt:22

    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80

    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:21

 

 

 

 

 

 

案例2

 

自己可以ping通外网,但别人不可以ping通你:

[root@centos7 ~]# iptables -I INPUT -p icmp --icmp-type 8 -j DROP

 

 

删掉该条规则即可恢复:

[root@centos7 ~]# iptables -D  INPUT -p icmp --icmp-type 8  -j DROP

 

 

 

 

 

posted @   zhaocundang  阅读(285)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
历史上的今天:
2016-01-26 ZIP打包解包
点击右上角即可分享
微信分享提示