Linux防火墙设置——iptables
防火墙用于监控往来流量,并根据用户定义的规则来过滤数据包以保证安全。iptables是Linux下设置防火墙规则的常用工具,它可以让你设置、维护以及查看防火墙的规则表。你可以定义多个表,每个表可以包含多个链。每个链都是一系列规则,而每个规则定义了如何处理匹配的数据包。对于匹配的数据包要为其指定“目标”。目标可以是另一条链,也可以是如下特殊值(动作)之一:
- ACCEPT:意味着数据包允许通过。
- DROP:意味着数据包不允许通过。
- RETURN:意味着跳过当前链并且回到调用链的下一条规则。
下面我们来探究一下iptables中的过滤表。过滤表有3条链:
- INPUT:用来控制传入的数据包,你可以针对某个端口、协议或源ip地址来中断或允许连接。
- FORWARD :用来过滤传入此地但将要被转发至别处的数据包。
- OUTPUT:用来过滤传出的数据包。
实践出真知,下面来简单感受一下iptables的使用。
1. 查看当前iptables状态
通过这个命令可以查看当前iptables配置状态。-L选项用来列出所有规则,-v选项用来显示详细信息。输出示例如下图所示。可以看到3条链都被设置为默认的ACCEPT策略。当前每条链还没有规则。接下来我们会修改INPUT链来过滤进入的流量。
2. 定义规则
定义规则意味着把它追加到列表(链)的末尾。iptables命令完整的选项格式长得像这样。我们不必所有的选项。
这里 -A表示追加。interface是想要在其上过滤的网络接口。protocol是你想过滤的数据包所用的网络协议,你也可以指定端口号。
首先,启用本机内部的流量通信。这样应用和数据库之间的所有通信都能正常进行。
输出示例:
然后,我们启用HTTP、SSH和SSL端口连接。
想要HTTP(80端口),HTTPS(443端口),SSH(22端口)连接正常工作,输入以下命令来实现。我们用-p选项指定协议,-dport(destination port)选项指定相应的端口。
现在,这些指定端口上的TCP连接都能被接受。
接下来,基于源地址过滤数据包。
如果你想基于ip源地址或者地址范围来接受或拒绝数据包,那么你可以通过-s选项来指定。比如,接受来自192.168.1.3的数据。
你可以丢弃来自这一地址的数据包,只要将ACCEPT改为DROP:
如果对于来自某一地址范围的数据包你都想丢弃,则需要使用iprange模块,并通过--src-range指定地址范围。
最后,丢弃所有其他流量通信。这是十分重要的步骤,因为这样可以阻止其他端口的未授权访问。以下命令丢弃了除上述端口外其他所有的流入数据。
定义完以上规则后,再来看一看iptables中INPUT状态:
3. 删除规则
如果你想移除所有规则,可以使用flush命令:
如果你想删除指定规则,可以使用-D选项。在这之前,列出所有规则,使用下面的命令可以显示规则对应的行号:
输出如下图:
最后通过行号删除对应的规则:
4. 设置的持久化
目前为止我们对防火墙设置的规则都还只是保存在内存中。这意味这一旦重启变动都会消失。在Debian/Ubuntu系统中,可以使用一下命令保持设置:
该命令将当前规则保存到系统配置文件,它会在重启时重设规则表。每次设置规则后都应该运行这个命令。
Linux防火墙设置——iptables的更多相关文章
- Linux防火墙(iptables/firewalld)
Linux防火墙(iptables/firewalld) 目录 Linux防火墙(iptables/firewalld) 一.iptables 1. iptables概述 2. netfilter和i ...
- Linux防火墙简介 – iptables配置策略
Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...
- linux防火墙之iptables
linux防火墙之iptables 1.1.1 关于iptables简介 IPTABLES 是与最新的 3.5 版本 Linux 内核集成的 IP 信息包过滤系统.如果 Linux 系统连接到因特网或 ...
- Linux防火墙配置(iptables, firewalld)
netfilter和底层实现 iptables firealld Linux中的防火墙 RHEL中有几种防火墙共存: iptables firewalld ip6tables ebtables 这些软 ...
- Linux防火墙:iptables禁IP与解封IP常用命令
在Linux服务器被攻击的时候,有的时候会有几个主力IP.如果能拒绝掉这几个IP的攻击的话,会大大减轻服务器的压力,说不定服务器就能恢复正常了. 在Linux下封停IP,有封杀网段和封杀单个IP两种形 ...
- Linux防火墙设置
对于Internet上的系统,不管是什么情况都要明确一点:网络是不安全的.因此,虽然创建一个防火墙并不能保证系统100%安全,但却是绝对必要的. Linux提供了一个非常优秀的防火墙工具-netfil ...
- SUSE Linux 防火墙设置
1.vim /etc/sysconfig/SuSEfirewall2 #编辑防火墙设置 FW_SERVICES_EXT_TCP="22 5901" #开启 ...
- Linux 防火墙设置,禁止某个ip访问
service iptables status 查看防火墙状态 service iptables start 开启防火墙 service iptables ...
- linux防火墙相关 iptables
1. root用户查看防火墙状态(非root用户无权限查看) 查看防火墙状态: service iptables status 2.开启和关闭防火墙 //开启防火墙: service iptables ...
随机推荐
- js error监控
window.onerror = function(message, source, lineno, colno, error) { ... } 功能参数: message:错误消息(字符串).eve ...
- POJ1149PIGS
传送门 貌似是最大流建图优化入门题(可惜我还是不会) 最暴力的建图当然是源点连每个猪圈然后猪圈需要拆成n个点分给每个人这个必定是跑不过的 所以我们可以进行优化 很明显没有被动过的猪圈一直是不变的可以不 ...
- python 数组元素个数
list=[1,2,3,{1,4,5,6,7}] print(len(list)) 输出4
- python 常用技巧 — 列表(list)
目录: 1. 嵌套列表对应位置元素相加 (add the corresponding elements of nested list) 2. 多个列表对应位置相加(add the correspond ...
- 西电源ubuntu12
deb http://linux.xidian.edu.cn/mirrors/ubuntu/ precise main restricted universe multiverse #deb-src ...
- 致第一次安装(yong)小小输入法的你
目录 强大全开放的外挂内置输入平台 支持各种编码 方便的词库维护功能 最温情的输入法 小鹤双拼自定义 本文的题目就参考了百度贴吧「致第一次安装 RIME 的你」,因为最近使用小小输入法,感觉很好用,所 ...
- MAT内存分析
先下载 http://www.eclipse.org/mat/downloads.php 配置环境参数 分析一个堆转储文件需要消耗很多的堆空间,为了保证分析的效率和性能,在有条件的情况下,建议分配给 ...
- Java中的小知识。
package jicheng; public class Animal { //定义一个成员变量name. private String name; public String getName() ...
- Kubernetes 健康检查的两种机制:Liveness 探测和 Readiness 探测
Kubernetes 健康检查的两种机制:Liveness 探测和 Readiness 探测,并实践了健康检查在 Scale Up 和 Rolling Update 场景中的应用.kubelet使用启 ...
- Selenium之Android使用学习
20140507 Selenium一般用在web自动化上,为什么Android上也能用呢? 如图,手机端和DB联动:手机端的客户端给server发数据流,进行增删改查操作,这种写数据用update更新 ...