iptables常用规则

发布时间:2020-07-08 16:31:18 作者:Jecht1995
来源:网络 阅读:567

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

iptables常用规则 

iptables常用规则


 

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

流入一般用在INPUT和PREROUTING上

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

流出一般在OUTPUT和POSTROUTING上

 

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

 

 

一、

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

iptables I INPUT i eth2p 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 100j 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常用规则                        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常用规则                                iptables –t nat A PREROUTING p tcp d 10.10.188.232/24 --dport 80 j DNAT --to 10.10.177.232:80 

推荐阅读:
  1. 关于iptables -m选项以及规则的理解
  2. Wireshark 常用规则

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

nat filter mangle

上一篇:解决mysql中insert乱码的方法

下一篇:在notepad中运行Python的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》