一、概念

此处先描述一些相关概念。

从逻辑上讲。防火墙可以大体分为主机防火墙和网络防火墙。
主机防火墙:针对于单个主机进行防护。
网络防火墙:往往处于网络入口或边缘,针对于网络入口进行防护,服务于防火墙背后的本地局域网。
网络防火墙和主机防火墙并不冲突,可以理解为,网络防火墙主外(集体), 主机防火墙主内(个人)。

从物理上讲,防火墙可以分为硬件防火墙和软件防火墙。
硬件防火墙:在硬件级别实现部分防火墙功能,另一部分功能基于软件实现,性能高,成本高。
软件防火墙:应用软件处理逻辑运行于通用硬件平台之上的防火墙,性能低,成本低。

Linux的iptables

iptables其实不是真正的防火墙,我们可以把它理解成一个客户端代理,用户通过iptables这个代理,将用户的安全设定执行到对应的"安全框架"中,这个"安全框架"才是真正的防火墙,这个框架的名字叫netfilter

netfilter才是防火墙真正的安全框架(framework),netfilter位于内核空间。

iptables其实是一个命令行工具,位于用户空间,我们用这个工具操作真正的框架。
netfilter/iptables(下文中简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。

Netfilter是Linux操作系统核心层内部的一个数据包处理模块,它具有如下功能:
网络地址转换(Network Address Translate)
数据包内容修改以及数据包过滤的防火墙功能

所以说,虽然我们使用service iptables start启动iptables"服务",但是其实准确的来说,iptables并没有一个守护进程,所以并不能算是真正意义上的服务,而应该算是内核提供的功能。

二、iptable工作流图解

三、常用命令

1. 初始化

命令 作用
iptables -F flush 清除所有的已定规则
iptables -X delete 删除所有用户“自定义”的链(tables)
iptables -Z zero 将所有的chain的计数与流量统计都归零
iptables -S 查看整个iptable表

初始化完成如图

2. 保存iptable

service iptables save

若提示服务不存在,则执行
iptables-save

若提示命令不存在,则执行
/sbin/iptables-save

若还是找不到命令,重新确认iptables安装路径。

3. 禁止和开放端口

关闭所有的 INPUT FORWARD OUTPUT (端口)
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

打开端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT

-A 参数就看成是添加一条 INPUT 的规则
-p 指定是什么协议 我们常用的tcp 协议,当然也有udp 例如53端口的DNS
到时我们要配置DNS用到53端口 大家就会发现使用udp协议的
而 --dport 就是目标端口 当数据从外部进入服务器为目标端口
反之 数据从服务器出去 则为数据源端口 使用 --sport
-j 就是指定是 ACCEPT 接收 或者 DROP 不接收

禁止某个IP访问
iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP

这里意思就是 -A 就是添加新的规则, 怎样的规则呢? 由于我们访问网站使用tcp的,
我们就用 -p tcp , 如果是 udp 就写udp,这里就用tcp了, -s就是 来源的意思,
ip来源于 192.168.1.2 ,-j 怎么做 我们拒绝它 这里应该是 DROP

如何删除规则
通过 iptables -L -n --line-number 可以显示规则和相对应的编号
num target prot opt source destination
1 DROP tcp – 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306
2 DROP tcp – 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
3 DROP tcp – 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
多了 num 这一列, 这样我们就可以 看到刚才的规则对应的是 编号2

那么我们就可以进行删除了
iptables -D INPUT 2
删除INPUT链编号为2的规则。

再 iptables -L -n 查看一下 已经被清除了。

补充资料:

iptables 添加,删除,查看,修改 https://www.cnblogs.com/jsonevery/articles/10122273.html

centos7后可以使用firewall

【Linux】开放指定端口 https://blog.csdn.net/yw_1207/article/details/89959357?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.control

参考资料

  1. iptables详解(1):iptables概念 http://www.zsythink.net/archives/1199/
  2. 保存iptables规则 https://blog.csdn.net/weixin_33749131/article/details/91912549
  3. Linux下iptables 禁止端口和开放端口 https://blog.csdn.net/buster2014/article/details/50070747

Linux - iptable(防火墙)相关推荐

  1. linux IPtable防火墙 禁止和开放端口

    linux IPtable防火墙 禁止和开放端口 转载自:http://hi.baidu.com/zplllm/item/f910cb26b621db57c38d5983 1.关闭所有的 INPUT ...

  2. linux防火墙开放所有端口命令,linux centos7 防火墙及端口开放相关命令

    一.防火墙相关命令 1.查看防火墙状态 : systemctl status firewalld.service 注:active是绿的running表示防火墙开启 2.关闭防火墙 :systemct ...

  3. 写了个Linux包过滤防火墙

    花几天写了个so easy的Linux包过滤防火墙,估计实际意义不是很大.防火墙包括用户态执行程序和内核模块,内核模块完全可以用iptable代替.由于在编写的过程一开始写的是内核模块所以就直接用上来 ...

  4. linux防火墙ddos,Linux iptables防火墙详解 + 配置抗DDOS***策略实战

    Linux iptables防火墙详解 + 配置抗DDOS***策略实战 Linux 内核中很早就实现了网络防火墙功能,在不同的Linux内核版本中,使用了不同的软件实现防火墙功能. 在2.0内核中, ...

  5. linux下防火墙iptables用法规则详解

    linux下防火墙iptables用法规则详解 分享者: du52.com 邮件: wangaibo168@163.com 主页: http://www.du52.com linux下防火墙iptab ...

  6. Linux 下防火墙的作用

    电脑上防火墙是用来干什么的? 1.所谓"防火墙",是指一种将内部网和公众访问网bai(如Internet)分开的方法,它实际上是一种隔离技术.防火墙是在两个网络通讯时执行的一du种 ...

  7. Linux之防火墙策略

    linux之防火墙策略 什么是防火墙 众所周知,相较于企业内网,外部的公网环境更加恶劣,罪恶丛生.在公网与企业内网之间充当保护屏障的防火墙虽然有软件或硬件之分,但主要功能都是依据策略对穿越防火墙自身的 ...

  8. linux路由器转发效率,如何使用Intel 10 Gbe解决Linux路由器/防火墙转发性能问题?...

    我们有一个 Linux防火墙,带有两个面向外部的10Gbe适配器(Intel 82599EB)和一个面向内部的10Gbe适配器(Intel 82598EB). 我遇到的问题是防火墙只会以非常低的速率转 ...

  9. linux关闭防火墙stop,linux如何关闭防火墙

    我的linux不想开启防火墙了,想要关闭,该怎么办呢?下面由学习啦小编给你做出详细的linux关闭防火墙方法介绍!希望对你有帮助! linux关闭防火墙方法一: 重启后生效 开启: chkconfig ...

  10. Linux iptables防火墙设置与NAT服务配置

    Linux iptables防火墙设置与NAT服务配置 - 摘要: linux教程,NAT服务器,iptables防火墙设置与NAT服务配置, 防火墙是指设置在不同网络或网络安全域之间的一系列部件的组 ...

最新文章

  1. 通向未来:物联网+人工智能将成为人类的进化方向
  2. Docker操作系统理解
  3. jQuery 元素操作——遍历元素
  4. 第三章:lambda表达式
  5. IDEA JetBrains Mono字体介绍和安装
  6. python的变量与注释
  7. 输出指定个数所有枚举_【一天一大 lee】区间和的个数 (难度:困难) Day20201107
  8. uboot环境变量(设置bootargs向linux内核传递正确的参数)
  9. 《UVM实战》代码示例
  10. batchplot插件用法_batchplot插件怎么安装 batchplot插件安装教程
  11. DSA数字签名原理及JAVA实现
  12. Java获取某年某月的第一天
  13. 外汇交易:哪个货币对比较好做?
  14. Linux 基金会宣布成立下一代架构基金会 ——构建适合多样化计算场景的下一代架构...
  15. 【UE4笔记】蓝图联机游戏制作
  16. 备案过的域名解析到别的服务器,教你如何解析未备案的域名到国内服务器
  17. softlayer 端口开放
  18. tl-wn821n linux驱动程序,tl-wn821n驱动下载
  19. php 实现查询百度排名,php查询网站关键词百度排名函数
  20. vCenter补丁升级

热门文章

  1. NightWatchJS
  2. 英文视频字幕生成和翻译工具、AI拟声工具
  3. 记录一次es7.8.1报错解决过程 unknown key [column] for create index
  4. c语言中%if是什么意思,C语言中if(!a)表示什么意思?
  5. Apache HAWQ集群的安装部署
  6. 接口测试-免费开放的api
  7. 前程无忧:2021节后招聘高峰是否回来
  8. 第五章人间深情,公母为山
  9. k8s(十二)、分布式存储Ceph RBD使用
  10. 微信小程序官方组件展示之基础内容icon源码