网路防火墙iptables
linux操作系统自身可以充当交换机,还可以当路由器,也就是说linux多网卡之间拥有互相转发数据包的能力,这种能力的实现主要依靠的是防火墙的功能进行数据包的转发和入站。
路由选择点,就是在一个点分辨出事转发还是入站,在路由选择点之前的路叫路由选着前,出站之后的路叫路由选择后
存储链的表示filter 和nat
filter里村的是入站出站,和转发
nat存的是路由前,路由后和出站。
入站叫INPUT
出站叫OUTPUT
转发叫FORWARD
入站前叫PREROUTING
出站叫之后叫POSTROUTING
保存防火墙规则的配置文件/etc/sysconfig/iptables
导出备份的命令
iptables-save > 文件路径
导入还原命令
iptables-restore < 文件路径
iptables的命令用法和参数
iptables -t 【表名】 选项 【链名】 【条件】 【-j控制类型】
注意事项:
不指定表名时:默认的是filter表
不指定链名时:默认是表内所有的链
除非设置链的默认匹配,否则必须知道匹配条件
选项、链名、控制类型使用大写字母、其余的均为小写
控制类型常用的参数
ACCEPT:允许通过
DROP:直接丢包,不给出任何的回应
REJECT:拒绝通过 ,必要时会给出提示
LOG:记录日志信息,然后传给下一条规则继续匹配
选项类的参数
-A:在链的末尾追加一条规则,
-I:在链的开头(或指定序号)插入一条规则
查看表规则参数。
-L:列出所有的规则条目
-n:以数字形式显示地址,端口等信息
-v:以更详细的方式显示规则信息
--line-numbers:查看规则时,显示规则的序号。--line与之同效
删除清空规则的参数
-D:删除链内指定序号(或内容)的一条规则
-F:清空所有的规则
iptables -D INPUT 3 删除input链上的序号是3的规则
修改、替换规则
-R:修改替换规则
修改链规则
-P:修改链的规则
iptables -P FORWARD -j DROP所有的转发链都丢包
通用匹配参数
-p:协议匹配,指定协议
-s:来源地址匹配,指定来源
-d:目标地址匹配,指定目标
-i:指定入站的网卡匹配
-o:指定出站的网卡匹配
隐含的匹配
隐含的匹配需要在有通用的匹配后才能使用,--开头
--sport:来源端口,需要指定协议后才能匹配
--dport:目标端口,需要指定协议后才能匹配
iptables -A INPUT -s 192.168.200.0/24 -p tcp --sport 22:21 -dport 53 -j ACCEPT例句的意思是在input链上追加一条,来源ip为200网段的tcp协议,来源端口是22~21,目标端口是53的都同一通过
--tcp-flags:检查范围被设置的标记
iptables -I INPUT -i eth1 -p tcp --tcp-flags SYN,RST,ADK,SYN -j DROP例句的意思是在input链上插入一条从eth1网卡进来的tcp协议,被标记的syn等包都丢掉
icmp协议的隐含匹配
--icmp-type 类型
8 Echo request 请求包
0 Echo reply 应答包
3 错误回显
iptables -A INPUT -p icmp --icmp-type 8 -j DROP例句的意思是最近一条规则在input链,所有的icmp协议的请求包都丢掉
状态匹配 -m state --state 连接状态
常见的连接状态
NEW:新连接
ESTABLISHED:响应请求,或已经建立连接的
RELATED:与已连接有相关性的,如ftp数据连接
iptables -A INPUT -p tcp --dport 80 -m state --state ESTABLISHED,RELATED,NEW -j DROP命令的意思是在input链上追加一条tcp规则已经连接和有关联的连接新的连接都拒绝
SNAT将来源的ip转换成自己设定的ip
iptables -t nat -A POSTROUTING -s 192.168.200.0/24 -o eth1 -j SNAT --to-source 192.168.100.100例句的意思是指定nat表最近一条针对出站后的链来源ip是200网段的从eth1出的,统统把来源ip换成192.169.100.100
DNAT将目标ip转换成自己设定的ip
iptables -t nat -A PREROUTING -i eth0 -d 192.168.100.100 -p tcp --dport 80 -j DNAT --to-destination 192.168.200.88:8080 例句的意思是将nat表 入站前 从eth网卡来的目标ip是192.168.100.100 端口是80来的tcp协议都改成目标ip为192.168.200.88端口是8080
转载于:https://www.cnblogs.com/cash-su/p/10002469.html
网路防火墙iptables相关推荐
- 架构-防火墙iptables
内容详细 架构图 架构图详解 架构: 把一个整体(完成人类生存的所有工作)切分成不同的部分(分工),由不同角色来完成这些分工,并通过建立不同部分相互沟通的机制,使得这些部分能够有机的结合为一个整体,并 ...
- Linux下防火墙iptables用法规则详及其防火墙配置
原博主文章更美丽: http://www.cnblogs.com/yi-meng/p/3213925.html iptables规则 规则--顾名思义就是规矩和原则,和现实生活中的事情是一样的,国有国 ...
- Linux防火墙iptables学习
http://blog.chinaunix.net/uid-9950859-id-98277.html 要在网上传输的数据会被分成许多小的数据包,我们一旦接通了网络,会有很多数据包进入,离开,或者经过 ...
- linux 防火墙iptables简明教程
前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...
- 共创Linux防火墙,Linux防火墙iptables简明教程
前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...
- CentOS6.7防火墙(Iptables)的开启与关闭
Linux防火墙(iptables)的开启与关闭 . Linux中的防火墙主要是对iptables的设置和管理. 1. Linux防火墙(Iptables)重启系统生效 开启: chkconfig i ...
- linux防火墙策略文件夹,Linux防火墙iptables的策略
iptables策略 iptables -L #查看现有防火墙所有策略 iptables -F #清除现有防火墙策略 只允许特定流量通过,禁用其他流量 1.允许SSH流量(重要) iptables - ...
- linux防火墙--iptables(三)
七.SNAT源地址转换 ·Source Network Address Translation ·修改数据包的源地址 ·仅用于nat表的POSTROUTING链 Example:局域网共享公网IP上网 ...
- linux 防火墙 iptables的简单使用
linux 防火墙 iptables的简单使用 [root@web web]# uname -a Linux web 2.6.9-67.ELsmp #1 SMP Wed Nov 7 13:58:04 ...
最新文章
- c#大圣之路笔记——c# SqlDataReader和SqlDataAdapter区别
- c语言随机三位数,【分享代码】弥补c语言随机数不足
- postfix+mysql+dovecot
- 【研发管理】结构化流程框架
- 超美的文件夹图标,右键秒改,实用方便适合文件夹分类
- MySQL5.5多实例编译安装——mysqld_multi
- 35款让你爱不释手的网页元素PSD素材
- WINCE 下配置 QT 的方法
- AltiumDesigner(三):PCB导出Gerber文件及各个Gerber文件说明
- 如何在win10上显示隐藏文件
- 菜鸟落泪:debian 9 安装 python 库记录
- mysql读取股票数据_读取股票数据存储到本地MySQL数据库(一)
- [渝粤教育] 四川大学 模拟电子技术基础(Ⅰ) 参考 资料
- markdown化学方程式
- 帝国CMS插件自动采集发布文章插件
- 10年百度的T6,现在应该挣几两银子?
- matlab如何找到音乐节拍,beatTrackMaster matlab实现的节拍感知音乐工具。可以 较有 规律的一小段 当做ma 238万源代码下载- www.pudn.com...
- electron 打开调试_【Electron】Electron 调试
- 我们一起学linux之V4L2摄像头应用流程
- Github项目推荐:网易云音乐 API
热门文章
- java泛型与c 泛型,Java泛型代码编译与javac,失败与Eclipse Helios
- 计算机系统的优化具体操作,从八个方面来探讨计算机操作系统的优化
- left join,right join,inner join,full join之间的区别
- 大学c语言基本程序,一个大学C语言试题的简单实现--员工信息管理程序
- shell 批量生成随机文件
- 我对java的理解(二)——反射是小偷的万能钥匙
- Opengl学习笔记——顶点数组
- ASP.NET的内置对象
- 《Linux内核设计与实现》读书笔记(12)--- 内存管理(2)
- 【JAVASCRIPT】javascript获取屏幕,浏览器,网页高度宽度