云小课 | 守护网络安全不是问题,iptables的四表五链为你开启“八卦阵”
摘要:担心网络基本安全?iptables八卦阵为您守护!本文带您一起了解iptables的相关知识。

网络世界就和现实世界一样,总是会有些不怀好意的“人”出现,扫扫你的端口啊,探测探测你的应用情况啊,看看有没有什么漏洞啊,然后趁虚而入......
像不像个小偷,这瞅瞅那瞅瞅,门有没有上锁,窗户有没有关严,看准时机就悄悄潜入了。
所以为了保障网络环境的安全,我们得“武装”起来,守住各个入口。
怎么“武装”呢?
使用iptables就可以做到,您可以根据业务需要设计一套自己的“八卦阵”,每一个报文要进来或者出去都得经过“八卦阵”里的障碍,能经过严格筛选的报文才是“好”报文。
iptables是什么?
iptables是Linux 防火墙工作在用户空间的管理工具,是netfilter/iptablesIP 信息包过滤系统的一部分,用来设置、维护和检查Linux内核的IP数据包过滤规则。它是免费的,可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。
特点:iptables是基于内核的防火墙,功能非常强大;iptables内置了filter,nat,mangle和raw四张表。所有规则配置后,立即生效,不需要重启服务。
iptables组成
iptables的结构是由表(tables)组成,而tables是由链(chains)组成,链又是由具体的规则组成。因此我们在编写iptables规则时,要先指定表,再指定链。tables的作用是区分不同功能的规则,并且存储这些规则。

iptables的四表五链
四个表包括:raw表、mangle表、nat表、filter表。
这四个优先级依次降低,raw不常用,主要功能都在其他三种表里实现。每个表可以设置多个链。
- mangle:主要用于修改数据包,表内包括五个链:PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD
- nat:不经内核,用于网络地址转换(IP、端口),表内包括三个链:PREROUTING、POSTROUTING、OUTPUT
- filter:经过本机内核的数据,负责过滤数据包,表内包括三个链:INPUT、FORWARD、OUTPUT
五个链如下:
- INPUT:输入,过滤所有目标地址是本机的数据包。
- FORWARD:转发,过滤所有路过本机的数据包。
- OUTPUT:输出,过滤所有由本机产生的数据包。
- PREROUTING:路由前,可以在数据包到达防火墙时改变目标地址。
- POSTROUTING:路由后,在数据包离开防火墙时改变数据包的源地址。
iptables处理数据包的流程

数据包有两种:目的地址是本机内核的数据包和经过本机内核的数据包。
- 数据包进入的时候,首先进入PREROUTING链,本机内核根据数据包目的地址判断是否需要转送出去。
- 如果数据包是进入本机内核的,就进入INPUT链。数据包到了INPUT链后,按条件过滤限制进入。
- 之后进入本机内核,再进入OUTPUT链,按条件过滤限制出去,然后到达POSTROUTING 链输出。
- 如果数据包只是经过本机内核,需要转发出去的,且本机内核允许转发,数据包就会进入FORWARD链,按条件过滤限制转发,然后到达POSTROUTING链输出。
iptables命令
iptables [ -t 表名 ] 管理选项 [ 链名 ] [ 条件匹配 ] [ -j 目标动作或跳转 ]
注意:
1.不指定表名时,默认表示filter表。
2.不指定链名时,默认表示该表内所有链,除非设置规则链的缺省策略,否则需要指定匹配条件

举个例子,比如:需要拒绝IP地址为10.10.10.8的主机访问本机。
iptables -A INPUT -s 10.10.10.8 -j DROP
更多命令详情请参见:iptables语法规则。
课堂练习
iptables规则都可以在云服务器里自己配置。但是如果云服务器数目非常多,每个都要配置,那就太麻烦了,如何实现同样需求的云服务器配置相同的iptables规则?
安全组?网络ACL?
没错!!!
它们都通过控制Linux iptables来控制进出云服务器或者用户网络的数据包,在不同的位置使用不同的方法来实现不同的目的,可以同时部署网络ACL和安全组实现双重防护。
安全组将具有相同安全保护需求并相互信任的云服务器加入同一个安全组。不同安全组的虚拟机之间的访问以及外网访问虚拟机,都需要通过安全组进行过滤。
网络ACL则作用于子网上,可以在安全组之前隔离外部过来的恶意流量,对进出用户网络的流量进行过滤。
那么,实践一下,为您的弹性云服务器设置一套“八卦阵”吧~
为云服务器配置安全组与网络ACL,请戳这里了解。
本文分享自华为云社区《云小课 |担心网络基本安全?iptables八卦阵为您守护》,原文作者:云小萌。
云小课 | 守护网络安全不是问题,iptables的四表五链为你开启“八卦阵”的更多相关文章
- 云小课|DGC数据开发之基础入门篇
阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:欢迎来到DGC数据 ...
- 云小课|MRS基础原理之MapReduce介绍
阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:MapReduce ...
- 云小课|云小课教您如何选择Redis实例类型
阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:购买Redis实例 ...
- 云小课|MRS数据分析-通过Spark Streaming作业消费Kafka数据
阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:Spark Str ...
- 云小课 | 搬迁本地数据至OBS,多种方式任你选
摘要:搬迁本地数据至OBS,包括OBS工具方式.CDM方式.DES磁盘方式.DES Teleport方式和云专线方式,每种方式特点不同,本节课我们就一起看看有什么区别. 已有的业务数据可能保存在本地的 ...
- 云小课|带你揭开IP地址的神秘身份
摘要:本文带你了解网络云产品和相关的知识内容. 华为云网络服务大家族提供了丰富的云产品,可以满足用户的各种网络互联需求.相应地,华为云帮助中心也贴心的奉上了你想了解的所有网络云产品知识. 可是小课最近 ...
- 云小课 | IPv4枯了,IPv6来了
摘要:本篇主要分享IPv4与IPv6的区别和IPv6的应用场景,助您快速理解华为云IPv6双栈及IPv6 EIP. IPv6的由来 上节课我们讲了公网IP与私网IP,了解了IP地址的一些知识. 我们一 ...
- 云小课 | WAF反爬虫“三板斧”:轻松应对网站恶意爬虫
描述:反爬虫是一个复杂的过程,针对爬虫常见的行为特征,WAF反爬虫三板斧——Robot检测(识别User-Agent).网站反爬虫(检查浏览器合法性)和CC攻击防护(限制访问频率)可以全方位帮您解决业 ...
- 云小课 | 需求任务还未分解,该咋整!项目管理Scrum项目工作分解的心酸谁能知?
温馨提醒:本文约3000字,需要阅读5分钟,共分为8个部分,建议分段阅读! 软件开发过程中,从产品概念形成到产品规划.往往要做详细的需求分析和项目规划等,因此,选对一款项目管理工具对开发者就显得尤为重 ...
- 云小课 | “VPC连接”知多少
摘要:华为云提供了丰富的网络服务,可满足多种网络互连场景. 同Region的两个VPC怎么连通?” “跨Region的两个VPC又怎么连通?” “VPC内的ECS搭建了一个应用,需要访问Interne ...
随机推荐
- 给wordpress后台侧栏菜单添加自定义字段的方法
我们在使用wordpress做网站的时候,难免有一些需要在后台设置侧栏菜单下添加自定义字段的情况.下面就简单说说一下,如何在后台设置侧栏菜单下添加自定义字段? 在这里我们主要是使用wordpress的 ...
- 一款简单漂亮的WPF UI - AduSkin
前言 经常会有同学会问,有没有好看简单的WPF UI库推荐的.今天就给大家推荐一款简单漂亮的WPF UI,融合多个开源框架组件:AduSkin. WPF是什么? WPF 是一个强大的桌面应用程序框架, ...
- React生命周期函数(迭代合并:react 16.3)
本文分两部分,上面的是react16.3,下部分是老版本 react 16.3生命周期更新解析 ------ 老react版本生命周期 1.组件生命周期的执行次数 只执行一次: constructor ...
- VSCODE中无法搜索插件的解决办法
当前我的使用环境是虚拟机, 如果无法搜索插件但是网络连接是正确的极有可能是代理设置的问题. 解决办法如下: ctrl+, 打开设置 这里填写正确的代理设置.
- Codeforces Round #699 (Div. 2) A~C题解
写在前边 链接:Codeforces Round #699 (Div. 2) 好自闭哈哈,\(B\)题暴力fst了,第二天改了一个字母就A了,第3题写了一个小时,然后又调了三四个小时,看不到样例,最终 ...
- Webpack.devServer 配置项如何使用?附devServer完整示例
前言: 我们在平常本地开发时,可能经常需要与后端进行联调,或者调用一些api,但是由于浏览器跨域的限制.开发与生产环境的差异.http与https等问题经常让联调的过程不够顺畅.所以本文介绍一下web ...
- 生产实践:Redis与Mysql的数据强一致性方案
公众号「架构成长指南」,专注于生产实践.云原生.分布式系统.大数据技术分享. 数据库和Redis如何保持强一致性,这篇文章告诉你 目的 Redis和Msql来保持数据同步,并且强一致,以此来提高对应接 ...
- Java中的try-catch
try里面放入可以尝试的操作,而catch则是接受try里面的异常,从而进行的操作,其目的是为了不让程序因为异常而中断,具体的流程是 抛出异常是可以自己设置,这里是自己设置的异常类fg,catch括号 ...
- [ABC245G] Foreign Friends
Problem Statement There are $N$ people and $K$ nations, labeled as Person $1$, Person $2$, $\ldots$, ...
- 安装华企盾DSC防泄密软件:编辑文件不加密常见问题,运维工程师必看
1.先查看客户端日志主进程是否是加密进程.日志中是不是勾选智能半透明.加密类型是否有添加 2.用procmon监控保存的文件找出writefile的进程是否有添加,进程树是否有父进程,加密类型是否正确 ...