iptables学习笔记

本文详细介绍了iptables的工作流程和主要表的功能,如filter、nat、mangle和raw。通过实例展示了如何设置规则来过滤、转发和限制网络流量,如禁止特定IP访问、端口转发、限制SSH连接数等。同时,提到了时间限制访问和内容过滤等高级应用,对于网络安全管理和运维具有重要指导意义。
摘要由CSDN通过智能技术生成

iptables并不是真正的防火墙,使用iptables在netfilter上面编写的规则才是防火墙。

iptables架构

 

iptables运行流程

 

其中prerouting(路由前),forward(转发),postrouting(路由后),input,output是出于netfilter上的链。

我们在链上编写了各种规则,那么这些规则可能有相同的作用,这些相同作用的规则合并起来的这个集合就叫做表。

表名作用
filter过滤
nat网络地址转换
row拆解报文,修改,重新分装
mangle关闭nat表启动的连接追踪机制

filter表上存在的链:INOPUT,FORWARD,OUTPUT

nat表上存在的链:PREROUTING,INPUT,OUTPUT,POSTROUTING

表执行的优先级:row>mangle>nat>filter

iptables基本用法

匹配条件

处理动作

常用操作参数

 

规则匹配

 

 

常见命令

不允许192.168.129.71使用tcp协议访问本机
iptables -I INPUT -p tcp -s 192.168.129.71 --dport 80 -j REJECT
[root@gzz~199 ~]# iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.129.200:8080
[root@gzz~199 ~]# iptables -t nat -A POSTROUTING -p tcp -d 192.168.129.200 --dport 8080 -j SNAT --to 192.168.129.199

1、ens33网卡入站时的icmp包不允许通过(如果你的网卡不是ens33,换成对应的网卡名称)

iptables -A INPUT -p icmp -j REJECT

2、禁止其他主机ping防火墙主机,但是允许从防火墙主机上ping其他主机

iptables -t filter -A INPUT -p icmp --icmp-type Echo-Request -j DROP

3、限制其他主机ssh登录你的主机

iptables -A INPUT -p tcp -s 192.168.129.1 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j REJECT

4、允许部分主机ssh登录你的主机

iptables -A INPUT -p tcp --dport 22 -m iprange --src-range 192.168.129.150-192.168.129.200 -j ACCEPT

5、对ssh登录主机的连接数做个数限制,如超过3个连接(不包括3),则拒绝连接登录

iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 4 -j REJECT

6、只允许指定(网段)的主机访问本机的22端口,拒绝来自其他所有主机的流量

iptables -A INPUT -p tcp --dport 22 -m iprange --src-range 192.168.129.190-192.168.129.200 -j ACCEPT
iptables -I INPUT -p tcp -j REJECT

7、允许外界能访问我的80端口httpd服务,其他拒绝

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT  -j REJECT

8、实现访问一个主机的80端口转发到另一个主机的8080端口

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.129.200:8080
iptables -t nat -I POSTROUTING -p tcp -d 192.168.129.200 --dport 8080 -j SNAT --to 192.168.129.199

9、要求每周的周三和周五做80端口的时间限制访问,不允许0:00-4:00的访问,这个时间我们可能在做系统运维更新,包括禁止非法IP登录(非法IP指的是除过你的主机白名单外的主机,比如你的网段是192.168.42.0/24,除过这个之外不能访问,或者使用ip范围的限制)

iptables -A INPUT -p tcp --dport 80  ! -s 192.168.129.0/24 -m time  --weekdays 3,5 --timestart 00:00:00 --timestop 04:00:00 -j REJECT

10、限制web请求如果为非法路径则禁止访问,同时网页内容包含密码信息的禁止访问(可给自己的index.html添加password:xxxx字段进行过滤这个字符串)

iptables -A OUTPUT -m string --algo kmp --string "passwd" -j REJECT
iptables -A INPUT -m string --algo kmp --string "/text.html" -j REJECT
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值