千家信息网

iptables常用规则

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,iptables组成:四张表+五条链+规则四张表:filter表,nat表,mangle表,raw表五条链:INPUT OUTPUT FORWARD PREROUTING(DNAT) POSTROUT
千家信息网最后更新 2024年09月22日iptables常用规则

iptables组成:四张表+五条链+规则

四张表:filter表,nat表,mangle表,raw

五条链:INPUT OUTPUT FORWARD PREROUTING(DNAT) POSTROUTING(SNAT)

nat表Nat表主要用于网络地址转换。根据表中的每一条规则修改网络包的IP地址。流中的包仅遍历一遍Nat表。例如,如果一个通过某个接口的包被修饰(修改了IP地址),该流中其余的包将不再遍历这个表。通常不建议在这个表中进行过滤,由NAT表支持的链称为PREROUTING 链,POSTROUTING 链和OUTPUT 链。

mangle表这个表用于校正网络包。它用来对特殊包的包头和内容(TTL,TOS,MARK)进行标记修改。Mangle表不能用于地址伪装。支持的链包括PREROUTING链,OUTPUT链Forward链Input链和POSTROUTING链

filter表如果没有定义任何规则,Filter表则被当作默认的表,并且基于它来过滤。它用来访问控制,规则匹配,过滤网络包。支持的链有INPUT 链,OUTPUT 链,FORWARD 链。

raw表在我们想要配置之前被豁免的包时被使用。它支持PREROUTING 链和OUTPUT 链

数据包规则:

数据包访问控制:ACCEPT(接收,回复通过),REJECT(接收,回复拒绝),DROP(丢弃)

数据包改写:SNAT(源地址改写),DNAT(目标地址改写)

信息记录:LOG



-i eth0:从这块网卡流入的数据

流入一般用在INPUT和PREROUTING上

-o eth0:从这块网卡流出的数据

流出一般在OUTPUT和POSTROUTING上

**********************************************************************************************************

一、

规则1:对10.10.188.233开放本机的tcp 80,25,110端口的访问

iptables -I INPUT -i eth2-p tcp -s 10.10.188.233 -m multiport --dports 80,25,110 -j ACCEPT

规则2:对所有的地址开放本机的tcp(22:ssh,10-21(10:21))端口的访问

iptables -I INPUT -p tcp --dport 22 -j ACCEPT

iptables -I INPUT -p tcp --dport 10:21 -j ACCEPT

规则3:允许对所有的地址开放本机的基于icmp协议的数据包访问

iptables -I INPUT -p icmp -j ACCEPT

规则4:其他未被允许的端口则禁止访问

iptables -A INPUT -j REJECT(iptables -P INPUT DROP)

二、默认需要配置

规则1:允许所有通过lo网卡传来的数据包

iptables -I INPUT -i lo -j ACCEPT

规则2:允许本地主动发起请求能得到回复

iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

三、拓展

1.设置我能ping通别人,别人不能ping通我(相反则为echo-reply)

iptables -A INPUT -p icmp -s 192.168.1.0/24 -m icmp --icmp-type echo-request -j DROP

2.限制每个客户端最大并发数不超过3个(xshell终端)

iptables -A INPUT -p tcp --dport 22 -s 192.168.1.0/24 -m connlimt -connlimit-above 2 -j DROP

3.限制速度(-m limit --limit匹配速率| --burst缓冲数量)

iptables -A INPUT -d 192.168.1.63 -m limit --limit 5/s --burst 100-j ACCEPT(在100个包内不限速,超过一百个包限制每秒只传5个包)

iptables -A INPUT -d 192.168.1.63 -j DROP

例如icmp洪水***(多主机ping包占满内存)

iptables -A INPUT -d 192.168.1.63 -m icmp --icmp-type echo-request -m limit --limit 5/s -j ACCEPT(限制每秒20个包)

iptables -A INPUT -d 192.168.1.63 -m icmp --icmp-type echo-request -j DROP

********************************************************************************************

允许ftp规则模式

(主动)加入21号端口放行规则

iptables -I INPUT -p tcp --dport 21 -j ACCEPT

(被动)

1.在vsftpd服务端配置文件中加入vsftpd来访的虚拟端口范围

vim /etc/vsftpd/vsftpd.conf

#listen_port=21

#pasv_enable=YES

#pasv_min_port=50000

#pasv_max_port=60000

加入Iptables -I INPUT -p tcp --dport 50000:60000 -j ACCEPT

2.加入内核的连接追踪模块

modprobe nf_conntrack_ftp

modprobe ip_nat_ftp

查看内核模块:modprobe -l|grep ftp(lsmod | grep nat_ftp)

永久修改:IPTABLES_MODULES="nf_conntrack_ftp ******************************************************************************************** 员工在公司内部(10.10.155.0/24)能访问服务器上的任何服务,允许所有人访问1723***端口,允许公网访问门户网站(80端口) iptables -P INPUT DROP iptables -I INPUT -p tcp -i lo -j ACCEPT iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -I INPUT -p icmp -j ACCEPT iptables -A INPUT -p tcp -s 10.10.155.0/24 -j ACCEPT iptables -A INPUT -p tcp -s 10.10.188.0/24 -j ACCEPT iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 1723 -j ACCEPT ******************************************************************************************** Ip地址转换SNAT(当多台客户端访问一台web服务端时使用,源地址可为网段,需开启内核参数ip_forward) iptables -t nat -A POSTROUTING -p tcp -s 10.10.177.0/24 -j SNAT --to 10.10.188.232 Ip地址转换DNAT(当1台客户端访问多台web服务端时使用,目的地址可为网段) iptables -t nat -A PREROUTING -p tcp -d 10.10.188.232/24 --dport 80 -j DNAT --to 10.10.177.232:80

规则 地址 数据 端口 服务 网络 支持 限制 内核 客户 客户端 网卡 本机 开放 配置 主动 多台 模块 网段 控制 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 江干区直销软件开发 事业单位网络安全制度 数据库快照的创建 xp系统时间连接新的服务器 ps5服务器代理 小程序用的是云服务器吗 三赢科技软件开发 开淘宝店 软件开发 数据库安全日志表设计 报业网络安全等级保护指导意见 幻塔华为端和官网端服务器能转吗 以色列的网络安全性 一个应用要建几个数据库 当今前言的网络技术有哪些 服务器系统错误码6008 新建学生数据库的学生档案 打电话怎么显示服务器出错 数据库中人员名字重复的如何区别 上海必游网络技术有限公司 空间数据库设计 linux查看服务器编码 根服务器和数据中心的关系 小程序服务器和域名一年多少钱 软件开发什么是前端和后端 小程序用的是云服务器吗 鹤壁直播软件开发哪家好 数据库处理数据数量 创建数据库数据表的例子 西南大学数据库技术作业 如何查询自己数据库字符集
0