LINUX的iptables防火墙知识点有哪些


这篇文章主要介绍“LINUX的iptables防火墙知识点有哪些”,在日常操作中,相信很多人在LINUX的iptables防火墙知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”LINUX的iptables防火墙知识点有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!位于Linux内核中的包过滤功能体系称为Linux防火墙的“内核态”位于/sbin/iptables,用来管理防火墙规则的工具称为Linux防火墙的“用户态”上述2种称呼都可以表示Linux防火墙规则的作用:对数据包进行过滤或处理链的作用:容纳各种防火墙规则链的分类依据:处理数据包的不同时机INPUT:处免费云主机域名理入站数据包OUTPUT:处理出站数据包FORWARD:处理转发数据包POSTROUTING链:在进行路由选择后处理数据包PREROUTING链:在进行路由选择前处理数据包表的作用:容纳各种规则链表的划分依据:防火墙规则的作用相似raw表:确定是否对该数据包进行状态跟踪mangle表:为数据包设置标记nat表:修改数据包中的源、目标IP地址或端口filter表:确定是否放行该数据包(过滤)规则表之间的顺序:rawmanglenatfilter规则链之间的顺序入站:PREROUTINGINPUT出站:OUTPUTPOSTROUTING转发:PREROUTINGFORWARDPOSTROUTING按顺序依次检查,匹配即停止(LOG策略例外)若找不到相匹配的规则,则按该链的默认策略处理iptables [-t 表名] 选项 链名 条件 -j 控制类型//表filter的INPUT链的开头写入拒绝(必要时会给出提示)以icmp协议的数据例: iptables -t filter -I INPUT -p icmp -j REJECT注意:如-t 表名不写,则默认是filter表不指定链名时,默认指表内的所有链除非设置链的默认策略,否则必须指定匹配条件选项、链名、控制类型使用大写字母,其余均为小写ACCEPT:允许通过DROP:直接丢弃,不给出任何回应REJECT:拒绝通过,必要时会给出提示LOG:记录日志信息,然后传给下一条规则继续匹配-A:在链的末尾追加一条规则-I:在链的开头(或指定序号)插入一条规则(大写的i)//表filter的INPUT链的末尾写入允许以tcp协议的数据入站规则例: iptables -t filter -A INPUT -p tcp -j ACCEPT//表filter的INPUT链的开头写入允许以tcp协议的数据入站规则iptables -t filter -I INPUT -p tcp -j ACCEPT//表filter的INPUT链的第2行写入允许以tcp协议的数据入站规则iptables -t filter -I INPUT 2 -p tcp -j ACCEPT-L:列出所有的规则条目-n:以数字形式显示地址、端口等信息-v:以更详细的方式显示规则信息–line-numbers:显示规则的序号例: iptables -nL INPUT //-nL不可调转位置-D:删除链内指定序号(或内容)的一条规则-F:清空所有的规则例: iptables -D INPUT3//删除表filter中的链INPUT中的第3条规则iptables -t nat -F //删除表nat中的所有链的所有规则-P:为指定的链设置默认规则注意:默认策略要么是ACCEPT、要么是DROP//表filter的默认规则是转发的数据都丢弃例: iptables -t filter -P FORWARD DROP可直接使用,不依赖于其他条件或扩展包括网络协议、IP地址、网络接口等条件要求以特定的协议匹配作为前提包括端口、TCP标记、ICMP类型等条件要求以“-m 扩展模块”的形式明确指出类型包括多端口、MAC地址、IP范围、数据包状态等条件协议匹配:-p 协议名地址匹配:-s 源地址、-d 目的地址接口匹配:-i 入站网卡、-o 出站网卡//表filter的INPUT链的开头写入丢弃以icmp协议入站的数据的规则例: iptables -I INPUT -p icmp -j DROP//表filter的FORWARD链末尾写入允许除了icmp协议转发的数据的规则iptables -A FORWARD -p !icmp -j ACCEPT//表filter的INPUT链末尾写入丢弃网卡eth2,网段1.0的入站数据规则iptables -A INPUT -i eth2 -s 192.168.1.0/24 -j DROP//意义同上iptables -A INPUT -i eth2 -s 172.16.0.0/12 -j DROP端口匹配:–sport 源端口、–dport 目的端口TCP标记匹配:–tcp-flags 检查范围 被设置的标记ICMP类型匹配:–icmp-type ICMP类型//链FORWARD末尾写入允许转发以udp协议,网段1.0,端口53的数据规则例:iptables -A FORWARD -s 192.168.1.0/24 -p udp –dport 53 -j ACCEPT//链INPUT末尾写入允许以协议tcp,端口20,21的入站数据规则iptables -A INPUT -p tcp –dport 20:21 -j ACCEPT//链INPUT末尾写入丢弃以协议icmp,类型为8的入站数据规则,8请求,0回显,3不可达iptables -A INPUT -p icmp –icmp-type 8 -j DROP//链INPUT末尾写入丢弃以协议icmp,类型为0的入站数据规则iptables -A INPUT -p icmp –icmp-type 0 -j ACCEPT//链INPUT末尾写入丢弃以协议icmp,类型为3的入站数据规则iptables -A INPUT -p icmp –icmp-type 3 -j ACCEPT多端口匹配:-m multiport –sports 源端口列表-m multiport –dports 目的端口列表IP范围匹配:-m iprange –src-range IP范围MAC地址匹配:-m mac –mac-source MAC地址状态匹配:-m state –state 连接状态//链INPUT开头写入允许以tcp协议,多端口(此处只有一个)80的入站数据规则例:iptables -I INPUT -p tcp -m multiport –dport 80 -j ACCEPT//链INPUT开头写入允许以tcp协议,连接状态ESTABLISHED,RELATED的入站数据规则iptables -I INPUT -p tcp -m state –state ESTABLISHED,RELATED -j ACCEPT//链INPUT末尾写入允许以tcp协议,多端口25,80,110,143的入站数据规则iptables -A INPUT -p tcp -m multiport –dport 25,80,110,143 -j ACCEPT//链RORWARD末尾写入默认允许以tcp协议,地址范围4.21-4.28的入站数据规则iptables -A FORWARD -p tcp -m iprange –src-range 192.168.4.21-192.168.4.28-j ACCEPT//链INPUT末尾写入丢弃来自mack地址为00:0c:29:c0:55:3f的入站数据规则iptables -A INPUT -m mac –mac-source 00:0c:29:c0:55:3f -j DROP应用环境:局域网主机共享单个公网IP地址接入Internet原理:源地址转换,修改数据包的源地址局域网各主机正确设置IP地址/子网掩码局域网各主机正确设置默认网关地址Linux网关支持IP路由转发//表nat的链POSTROUTING末尾写入以SNAT策略把源网段1.0的经出站网卡eth2出去的地址转成目标地址2.39出去的规则(转换内网的地址)iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth2 -j SNAT –to-source 192.168.2.39//192.168.1.0/24:内网网段//eth2:外网接口的名称//192.168.2.39:外网接口的IP地址在局域网主机 192.168.1.40 中能够访问外网的Web服务器192.168.2.40查看Web主机 192.168.1.40 的访问日志,记录的来访者应是网关主机的外网IP地址 192.168.2.39。也可用客户端ping服务端,看是否通应用环境:在Internet中发布位于企业局域网内的服务器原理:目标地址转换,修改数据包的目标地址局域网的Web服务器能够访问Internet网关的外网IP地址有正确的DNS解析记录Linux网关支持IP路由转发//表nat的链PREROUTING末尾写入以DNAT策略把以tcp协议,端口:80,目标地址2.39经入站网卡eth0来的转成源地址1.40的规则(转换的外网Internet地址)iptables -t nat -A PREROUTING -i eth0 -d 192.168.2.39 -p tcp –dport 80 -j DNAT–to-destination 192.168.1.40//192.168.2.39:外网接口的IP地址//80:发布的服务端口//192.168.1.46:Web:防火墙的内网IP地址在外网客户机 192.168.2.40 中能够访问位于企业内网的Web服务,访问地址为http://192.168.2.39查看Web服务器 192.168.1.40 的访问日志,记录了外网客户机的IP地址192.168.2.40,也可用外网客户机ping内网web服务机,看是否通DNAT规则中以“IP:Port”的形式指定目标地址//表nat的链PREROUTING末尾写入以DNAT策略把以tcp协议,端口:2346,目标地址2.39经入站网卡eth0来的地址转成源地址1.40,端口:22的规则(端口也改变)iptables -t nat -A PREROUTING -i eth2 -d 192.168.2.39 -p tcp –dport 2346 -j DNAT–to-destination 192.168.1.46:22//2346:访问的目标端口//22:实际提供服务的端口到此,关于“LINUX的iptables防火墙知识点有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注云编程开发博客网站,小编会继续努力为大家带来更多实用的文章!

相关推荐: python数据分析中如何进行Numpy入门

本篇文章为大家展示了python数据分析中如何进行Numpy入门,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一免费云主机域名、安装首先需要先搭建Python环境,在此基础上,打开cmd命令行输入安装好Numpy库之后…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 02/06 10:29
下一篇 02/06 10:29