1.防火墙

防火墙,其实就是一个隔离工具:工作于主机或者网络的边缘

对于进出本主机或者网络的报文根据事先定义好的网络规则做匹配检测,

对于能够被规则所匹配的报文做出相应处理的组件(这个组件可以是硬件,也可以是软件)

主机防火墙:1->2->5->6

网络防火墙:1->3->4->6

2.四表五链

1)功能(也叫表)

filter:过滤,防火墙

nat:network address translation,网络地址转换

mangle:拆分报文,做出修改,在封装起来

raw:关闭nat表上启用的连接追踪功能

2)链

PREROUTING

INPUT

FORWARD

OUTPUT

POSTROUTING

3)各功能可以在哪些表上实现

filter: INPUT,FORWARD,OUTPUT

nat:PREROUTING(DNAT),OUTPUT,INPUT,POSTROUTING(SNAT)

mangle: PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING

raw:PREROUTING,OUTPUT

4)添加规则时的考量点

(1)要实现什么功能:判断添加在哪张表上;

(2)报文流经的路径:判断添加在哪个链上;

5)firewalld优先级

策略应用优先级:raw, mangle, nat, filter

策略常用优先级:filter,nat,mangle,raw

3.iptables命令

-L 列出指定链上的所有规则

-t 指定表,默认为filter

-n 以数字格式显示地址和端口号

-v 显示详细信息

--line-number 显示规则编号

-F 清空规则链,省略链表示清空指定表上的所有链

-N 创建新的自定义规则链

-X 删除用户自定义的空的规则链

-P 指定链的默认策略,包括accept、drop

-A 将新规则追加至指定链的尾部

-I 将新规则插入链的指定位置

-D 删除指定链上的指定规则

4.匹配规则

-s 指定源ip(也可以指定网段)

-d 指定目标ip(也可以指定网段)

-p 指定协议

--dport 指定端口

-j jump至指定的targrt

-j target:jump至指定的target

ACCEPT:接受

DROP:丢弃

REJECT:拒绝

RETURN:返回调用链

REDIRECT:端口重定向

LOG:记录日志

MARK:做防火墙标记

DNAT:目标地址转换

SNAT:源地址转换

MASQUERADE:地址伪装

5.防火墙规则实例

清空所有策略:                                  iptables -F

清空自定义链:                                  iptables -X

自定义一个链                                   iptables -N old_forward

修改自定义链的名字                             iptables -E old_forward new_forward

把filter中forward链的默认策略打成drop          iptables -P FORWARD DROP

查看filter表中的策略并且显示行数:              iptables -L -n --line-number

删除filter表中forward链中的第9条策略:          iptables -t filter -D FORWARD 9

限制所有主机(0.0.0.0)拒绝ping本主机

iptables -t filter -A INPUT -s 0.0.0.0 -d 192.168.254.24 -p icmp -j REJECT

显示所有主机(0.0.0.0)拒绝通过ens33网卡ping本主机      

iptables -t filter -A INPUT -d 192.168.254.24 -i ens33 -p icmp -j REJECT

设置转发规则使内网主机可以访问外网主机

iptables -t nat -A POSTROUTING -s 192.168.200.2 -d 172.16.100.2 -p tcp --dport 80 -j SNAT --to-source 172.16.100.1:80

防火墙也可以用于端口转发

firewalld防火墙简介的更多相关文章

  1. Linux firewalld 防火墙

    Linux firewalld 防火墙  简介 RHEL 7 系统中集成了多款防火墙管理工具,其中 firewalld(Dynamic Firewall Manager of Linux system ...

  2. CentOS 7 打开关闭FirewallD防火墙端口命令

    CentOS 7 使用firewalld代替了原来的iptables,使用方法如下: >>>关闭防火墙 systemctl stop firewalld.service        ...

  3. Iptables&Firewalld防火墙

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

  4. 第8章 Iptables与Firewalld防火墙

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

  5. CentOS7使用firewalld防火墙配置端口

    安装启用firewalld防火墙 CentOS7默认的防火墙是firewalld 如果没有firewalld防火墙,可以执行yum install firewalld 命令进行安装 firewalld ...

  6. CentOS7、REHL7的firewalld防火墙使用简单说明

    title: CentOS7.REHL7的firewalld防火墙使用简单说明 categories: Linux tags: - Linux timezone: Asia/Shanghai date ...

  7. linux iptables 防火墙简介

    iptables防火墙简介 Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的安全自由的基于包过滤的防火墙工具,它的功能十分强大,使用非 ...

  8. Linux防火墙简介 – iptables配置策略

    Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...

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

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

随机推荐

  1. 构建的Web应用界面还不够好看?DevExtreme v19.1全新主题来袭

    行业领先的.NET界面控件DevExpress 正式发布了v19.1版本,本文将主要介绍介绍DevExtremev19.1中的数据可视化和主题控件,其中主要包含图表注释.增强图例功能等.欢迎下载v19 ...

  2. 阅读之Java多线程

    Java多线程 用多线程只有一个目的,就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现. 多线程:指的是这个程序(一个进程)运行时产生了不止一个线程 并行与并发: 并行:多个cpu ...

  3. Android Studio 创建项目后“Cannot resolve symbol” 解决办法

    报错位置显示 “Cannot resolve symbol XXX”, 解决方法如下: 点击菜单中的 “File” -> “Invalidate Caches / Restart”,然后点击对话 ...

  4. js/html 判断ie浏览器版本

    1.html判断浏览器:<!--[if !IE]><!-->除ie外都可以识别<!--<![endif]--><!--[if IE]>所有ie可以 ...

  5. 【LuoguP5383】[模板]普通多项式转下降幂多项式

    传送门 Sol (怎么老是有人喜欢出新的多项式毒瘤板子,懒得整到一起了) 核心就是把 幂用下降幂来代替. 使用斯特林数展开幂为下降幂: \[x^n=\sum_{i=0}^n{x\choose i}i! ...

  6. 在vue2.0中使用bootstarpTable(jquery+bootstarp+bootstarpTable)

    ​ 要想使用bootstarp-table就需要按顺序引入 jquery > bootstarp > bootstarp-table //路径可能会有变动 最好在node_modules ...

  7. Qt之去除窗口的标题栏、通过鼠标移动窗口

    设置标题栏图标,位置与大小示例 #include<QApplication> #include<QWidget> #include<QDebug> #include ...

  8. .netcore mongodb 分页+模糊查询+多条件查询

    .netcore MongoDB.Driver 版本才2.8 与aspnet差距太大,网上找很多资料没有现成的代码. public override async Task<PagerList&l ...

  9. React-native 环境配置及项目创建

    https://reactnative.cn/docs/next/getting-started.html 看到  安装 Android Studio 安装 Android Studio http:/ ...

  10. POJ 3683 神父赶婚宴 2-SAT+输出模板

    题意:一个小镇里面只有一个牧师,现在有些新人要结婚,需要牧师分别去主持一个仪式,给出每对新人婚礼的开始时间 s 和结束时间 t ,还有他们俩的这个仪式需要的时间(每对新人需要的时间长短可能不同) d ...