iptables基于包过滤的防火墙工具 ,Linux 内核集成的 IP 信息包过滤系统,对流入和流出服务器的数据包进行精细管理

规则是存储在专用信息包过滤表中 防火墙按照规则做出判断

而netfilter/iptables IP 信息包过滤系统是一款功能强大的工具,可用于添加、编辑和移除规则

这些过滤表是集成在linux内核中 ,在信息包过滤表中,规则被分组放在链(chain)中。

iptables规则链三种 输入 转发 输出

讲下filter表三种内建链 INPUT OUTPUT FORWARD

INPUT链 – 处理来自外部的数据;

OUTPUT链 – 处理向外发送的数据;

ORWARD链 – 将数据转发到本机的其他网卡设备上

iptables
-A 顺序添加
-I 插入一条新规则 后面加数字表示插入哪一行
-D 删除一条新规则 后面加数字表示删除哪一行
-L 查看
@1. iptables -L -n 以数字的方式显示
@2. iptables -L -v 显示详细信息
@3. iptables -L -x 显示精确信息
-F 清空链中所有规则

匹配条件
-p tcp udp icmp
--sport 指定源端口
--dport 指定目标端口
-s 源地址
-d 目的地址
-m state 模糊匹配一个状态

动作
-j
DROP 丢弃 无返回信息
ACCEPT 允许通过
REJECT 丢弃 返回信息

例子
-t filter 默认是filter 所以没有加
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
允许icmp包通过,也就是允许ping,
[root@www-jfedu-net ~]# iptables -A OUTPUT -p icmp -j ACCEPT (OUTPUT设置成DROP的话)
将本机的8080端口转发至其他主机,主机IP:192.168.0.141,目标主机IP和端口:192.168.0.142:80,规则如下;
iptables -t nat -A PREROUTING -d 192.168.0.141/32 -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.0.142:80
iptables -t nat -A POSTROUTING -d 192.168.0.142/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.0.141
echo 1 > /proc/sys/net/ipv4/ip_forward
同时开启iptables forward转发功能。

firewalld
被称为动态防火墙即修改其中一条规则不会重新加载全部规则,任何规则的变更都不需要对整个防火墙规则列表进行重新加载。
对应的iptables称为静态防火墙即首先对旧的防火墙规则进行了清空,然后重新完整地加载所有新的防火墙规则,这个动作很可能对运行中的系统产生额外的不良影响,特别是在网络非常繁忙的系统中。firewalld的出现很好的解决这个问题。

firewalld与iptables的关系
firewalld替代了 iptables service 部分,其底层还是使用 iptables 作为防火墙规则管理入口。规则还是使用的iptables规则。

firewalld有需要的人,我再补充总结吧。

浅谈iptables与firewalld防火墙的更多相关文章

  1. 第7章 Iptables与Firewalld防火墙。

    第7章 Iptables与Firewalld防火墙.     Chapter7_听较强节奏的音乐能够让您更长时间的投入在学习中. <Linux就该这么学> 00:00/00:00     ...

  2. 9.Iptables与Firewalld防火墙

    第9章 Iptables与Firewalld防火墙 章节简述: 保障数据的安全性是继保障数据的可用性之后最为重要的一项工作.防火墙作为公网与内网之间的保护屏障,在保障数据的安全性方面起着至关重要的作用 ...

  3. 第8章 Iptables与Firewalld防火墙

    章节简述: 红帽RHEL7系统已经用firewalld服务替代了iptables服务,新的防火墙管理命令firewall-cmd与图形化工具firewall-config. 本章节基于数十个防火墙需求 ...

  4. Linux系统iptables与firewalld防火墙

    iptables iptables服务用于处理或过滤流量的策略条目(规则),多条规则可以组成一个规则链,而规则链则依据数据包处理位置的不同进行分类. 在进行路由选择前处理数据包(PREROUTING) ...

  5. 浅谈iptables 入站 出站以及NAT实例

    --------------本文是自己工作上的笔记总结,适合的可以直接拿去用,不适合的,适当修改即可!--------------- iptbales默认ACCEPT策略,也称通策略,这种情况下可以做 ...

  6. 浅谈iptables防SYN Flood攻击和CC攻击

    ------------------------本文为自己实践所总结,概念性的东西不全,这里粗劣提下而已,网上很多,本文主要说下目前较流行的syn洪水攻击和cc攻击------------------ ...

  7. (转)浅谈AIX下IPFilter防火墙

    1    序言 AIX操作系统发行至今,经历数个版本,功能不断增强,就安全方面IP Security也变化不少,如动作中增加了If等功能,但这次暂且讨论配置防火墙策略及防火墙的基本操作,其他高级功能待 ...

  8. CentOS 7.0 关闭firewalld防火墙指令 及更换Iptables防火墙

    CentOS 7.0 关闭firewalld防火墙指令 及更换Iptables防火墙 时间:2014-10-13 19:03:48  作者:哎丫丫  来源:哎丫丫数码网  查看:11761  评论:2 ...

  9. Iptables&Firewalld防火墙

    一.IPtables 1.IPtables入门简介 Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的完全自由的基于包过滤的防火墙工具, ...

随机推荐

  1. 【数据结构&算法】10-串基础&KMP算法源码

    目录 前言 串的定义 串的比较 串的抽象类型数据 串与线性表的比较 串的数据 串的存储结构 串的顺序存储结构 串的链式存储结构 朴素的模式匹配算法 模式匹配的定义 朴素的匹配方法(BRUTE FORC ...

  2. Java线程状态及同步锁

    线程的生命历程 线程的五大状态 创建状态:简而言之,当创建线程对象的代码出现的时候,此时线程就进入了创建状态.这时候的线程只是行代码而已.只有调用线程的start()方法时,线程的状态才会改变,进入就 ...

  3. 大一C语言学习笔记(9)---指针篇--从”内存的使用“和“流程控制”的角度来理解“指针变量的使用‘

    #深入理解指针变量 举个错误栗子: //以下代码的目的是输出100和1000,但输出结果只有一个100 #include<stdio.h> #include<malloc.h> ...

  4. 暑假算法练习Day4

    已经坚持第四天啦,Fighting!!! 1008 数组元素循环右移问题 (20 分) 一个数组\(A\)中存有\(N\)\((>0)\)个整数,在不允许使用另外数组的前提下,将每个整数循环向右 ...

  5. Hi3516开发笔记(一):海思HI3516DV300芯片介绍,入手开发板以及Demo测试

    前言   目前主流国产芯片为RV11XX.RK33XX.Hi35XX系列,本系列开启Hi3516系列的开发教程.   Hi3516DV300芯片介绍   Hi3516DV300为专业行Smart IP ...

  6. python爬取豆瓣电影第一页数据and使用with open() as读写文件

    # _*_ coding : utf-8 _*_ # @Time : 2021/11/2 9:58 # @Author : 秋泊酱 # @File : 获取豆瓣电影第一页 # @Project : 爬 ...

  7. c语言1左移32位(1<<32)是多少,左移-1位呢

    C语言中 << 是逻辑移位,不是循环移位.1 左移 32 位后为 0,左移 -1 位实际是左移 255 位(互补),当然也是0.这种问题可以写一段小程序,单步执行,看一下每一步的结果.先说 ...

  8. <C#任务导引教程>练习三

    /*Convert.ToInt("213165");int a=12345;string sn=a.ToString();//把a转换成字符串snint b=int.Parse(s ...

  9. [atARC101E]Ribbons on Tree

    令$f(E')$表示强制$E'$中的边不被覆盖的方案数,根据容斥,$ans=\sum_{E'\subseteq E}(-1)^{|E'|}f(E')$ 对于给定的$E'$,$f(E')$即将$E'$中 ...

  10. [bzoj1081]超级格雷码

    手动模拟一组样例,可以理解大致应该如何操作具体实现中,记录每一位当前应该+1还是-1,然后操作最低的位并将后面的+1和-1全部取反即可 1 #include<bits/stdc++.h> ...