Linux:安全技术与防火墙

news2024/11/19 1:48:30

 

目录

 

一、安全技术

1.安全技术

2.防火墙的分类

3.防水墙

4.netfilter/iptables关系

二、防火墙

1、iptables四表五链

2、黑白名单

3.iptables命令

3.1查看filter表所有链 iptables -L

​编辑3.2用数字形式(fliter)表所有链 查看输出结果 iptables -nL 

 3.3 清空所有链 iptables -F

 3.4 不允许其他主机ping本机,给响应信息REJECT/不给回应DROP,ping所使用的协议为icmp

3.5 插入规则

​编辑​编辑3.6 删除规则

 3.7修改规则

3.8规则匹配

3.8.1 通用匹配

3.8.2 端口号匹配

3.8.3 ICMP类型匹配

3.8.4 多端口匹配


一、安全技术

1.安全技术

  • 入侵检测系统(Intrusion Detection Systems):特点是不阻断任何网络访问,量化、定位来自内外网络的威胁情况,主要以提供报警和事后监督为主,提供有针对性的指导措施和安全决策依据,类 似于监控系统一般采用旁路部署(默默的看着你)方式。

  • 入侵防御系统(Intrusion Prevention System):以透明模式工作,分析数据包的内容如:溢出攻击、拒绝服务攻击、木马、蠕虫、系统漏洞等进行准确的分析判断,在判定为攻击行为后立即予以 阻断,主动而有效的保护网络的安全,一般采用在线部署方式。(必经之路)

  • 防火墙( FireWall ):隔离功能,工作在网络或主机边缘,对进出网络或主机的数据包基于一定的规则检查,并在匹配某规则时由规则定义的行为进行处理的一组功能的组件,基本上的实现都是默 认情况下关闭所有的通过型访问,只开放允许访问的策略,会将希望外网访问的主机放在DMZ (demilitarized zone)网络中.

2.防火墙的分类

按保护范围划分:

  • 主机防火墙:服务范围为当前一台主机

  • 网络防火墙:服务范围为防火墙一侧的局域网

按实现方式划分:

  • 硬件防火墙:在专用硬件级别实现部分功能的防火墙;另一个部分功能基于软件实现,如:华为, 山石hillstone,天融信,启明星辰,绿盟,深信服, PaloAlto , fortinet, Cisco, Checkpoint, NetScreen(Juniper2004年40亿美元收购)等

  • 软件防火墙:运行于通用硬件平台之上的防火墙的应用软件,Windows 防火墙 ISA --> Forefront

按网络协议划分:

  • 网络层防火墙:OSI模型下四层,又称为包过滤防火墙

  • 应用层防火墙/代理服务器:proxy 代理网关,OSI模型七层

3.防水墙

防水墙
广泛意义上的防水墙:防水墙(Waterwall),与防火墙相对,是一种防止内部信息泄漏的安全产品。   网络、外设接口、存储介质和打印机构成信息泄漏的全部途径。防水墙针对这四种泄密途径,在事前、事  中、事后进行全面防护。其与防病毒产品、外部安全产品一起构成完整的网络安全体系。

4.netfilter/iptables关系

netfilter

位于Linux内核中的包过滤功能体系
称为Linux防火墙的“内核态”(内核空间)
是内核的一部分,由一些数据包过滤表组成,这些表包含内核用来控制数据包过滤处理的规则集。
iptables

位于/sbin/iptables
用来管理防火墙规则的工具称为Linux防火墙的“用户态”
它使插入、修改和删除数据包过滤表中的规则变得容易


二、防火墙

1、iptables四表五链

(1)四表

raw表:确定是否对该数据包进行状态跟踪。

mangel表:为数据包设置标记。

nat表:修改数据包中的源、目标IP地址或端口

filter表:确定是否放行该数据包(过滤)

(2)五链

INPUT链:处理发送到本站入站数据包。

OUTPUT链:处理出本站数据包。

FORWARD链:处理转发数据包。

PREROUTING链:在进行路由选择后处理数据包。

POSTROUTING链:在进行路由选择前处理数据包。
 

规则表的作用∶容纳各种规则链

规则链的作用∶容纳各种防火墙规则

 

2、黑白名单

①黑名单:默认全部允许通过,添加谁才不允许谁通过。

②白名单:默认全部不允许通过,添加谁允许谁通过。

3.iptables命令

控制类型作用
ACCEPT允许数据包通过(默认)
DROP允许数据包通过(默认)
REJECT拒绝数据包通过,会给数据发送端一个响应信息
SNAT修改数据包的源地址
DNAT修改数据包的目的地址
MASQUERADE伪装成一个非固定公网IP地址
LOG在/var/log/messages文件中记录日志信息,然后将数据包传递给下一条规则。LOG只是一种辅助动作,并没有真正处理数据包
管理选项用法示例
-A在指定链末尾追加一条 iptables -A INPUT (操作)
-I在指定链中插入一条新的,未指定序号默认作为第一条 iptables -I INPUT (操作)
-P指定默认规则 iptables -P OUTPUT ACCEPT (操作)
-D删除 iptables -t nat -D INPUT 2 (操作)
-p服务名称 icmp tcp
-R修改、替换某一条规则 iptables -t nat -R INPUT (操作)
-L查看 iptables -t nat -L (查看)
-n所有字段以数字形式显示(比如任意ip地址是0.0.0.0而不是anywhere,比如显示协议端口号而不是服务名) iptables -L -n,iptables -nL,iptables -vnL (查看)
-v查看时显示更详细信息,常跟-L一起使用 (查看)
--line-number规则带编号 iptables -t nat -L -n --line-number /iptables -t nat -L --line-number
-F清除链中所有规则 iptables -F (操作)
-N新加自定义链
-X清空自定义链的规则,不影响其他链 iptables -X
-Z清空链的计数器(匹配到的数据包的大小和总和)iptables -Z
-S看链的所有规则或者某个链的规则/某个具体规则后面跟编号

3.1查看filter表所有链 iptables -L

3.2用数字形式(fliter)表所有链 查看输出结果 iptables -nL 

 

 3.3 清空所有链 iptables -F

 3.4 不允许其他主机ping本机,给响应信息REJECT/不给回应DROP,ping所使用的协议为icmp

 

切换另一台

 

 不回应

 

3.5 插入规则

3.6 删除规则

 

 3.7修改规则

 

 

3.8规则匹配

3.8.1 通用匹配

  • 协议匹配:-p 协议名
  • 地址匹配:-s 源地址、-d 目的地址   可以是IP、网段、域名、空(任何地址)
  • 接口匹配:-i 入站网卡、-o出站网卡

3.8.2 端口号匹配

端口匹配: --sport 源端口、--dport 目的端口,可以是个别端口、端口范围
--sport 1000                               匹配源端口是1000的数据包
--sport 1000:3000                      匹配源端口是1000-3000的数据包
--sport :3000                              匹配源端口是3000及以下的数据包
--sport 1000:                              匹配源端口是1000及以上的数据包
--sport和--dport 必须配合 -p <协议类型> 使用
 

3.8.3 ICMP类型匹配

  • "Echo-Request”(代码为8)表示请求
  • "Echo- -Reply”(代码为0)表示回显
  • "Dest ination-Unreachable" (代码为3)表示目标不可达
  • 关于其它可用的ICMP 协议类型,可以执行“iptables -P icmp -h”命令,查看帮助信息

3.8.4 多端口匹配

  • -m multiport --sport 源端口列表
  • -m multiport --dport 目的端口列表

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/905514.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

宇宙原理:黑洞基础。

宇宙原理&#xff1a;黑洞基础TOC 黑洞的数理基础&#xff1a;一个由满数组成的数盘&#xff0c;经过自然演进&#xff0c;将会逐步稀疏化、最终会向纯数方案发展&#xff1b;纯数方案虽然只有{2}、无数&#xff08;虚拟&#xff09;、{0,1,2,3}&#xff08;虚拟&#xff09;、…

wustoj2007标准体重和身高的对应关系

#include <stdio.h> int main() {int n;double f;scanf("%d",&n);f(n-100)*0.9*2;printf("%.1lf",f);return 0;}

读发布!设计与部署稳定的分布式系统(第2版)笔记34_读后总结与感想兼导读

1. 基本信息 发布&#xff01;设计与部署稳定的分布式系统 第2版 Release It! Design and Deploy Production - Ready Software,Second Edition [美]迈克尔尼加德(MichaelT.Nygard) 人民邮电出版社,2020年1月出版 1.1. 读薄率 2版书籍总字数426千字&#xff0c;笔记总字数…

wustojc2011计算终止时间

#include <stdio.h> int main() {int n,m,a,b,c,d;scanf("%d%d",&n,&m);an%100;c0;bam;while(b>60&&b>0){bb-60;c;}while(b<0){bb60;c--;}dn/100c;if(d>24)dd-24;printf("%d%02d",d,b);return 0; }

【硬件设计】INA282电流采集电路

文章目录 1. 电流采集电路介绍1.1 电流采集电路是什么1.2 电流采集电路的作用和特点1.3 电流采集电路的应用场景 2. 电流采集芯片INA282AQDRQ12.1 INA282AQDRQ1特性和基本参数2.2 INA282AQDRQ1原理2.3 INA282AQDRQ1的注意事项 3. INA282单向电流采集电路4. INA282双向电流采集电…

计算机技术与软件专业技术资格(水平)考试----系统架构设计师

【原文链接】计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试----系统架构设计师 考试简介 计算机软件资格考试是由国家人力资源和社会保障部、工业和信息化部领导下的国家级考试。计算机软件资格考试既是职业资格考试&#xff0c;又是职称资格考试。考试合格…

vue3、react组件数据传值对比分析——父组件传递子组件,子组件传递父组件

文章目录 ⭐前言⭐react 组件传值实例&#x1f496;父组件传值给子组件&#xff08;props&#xff09;&#x1f496;子组件传递事件给父组件props绑定事件&#x1f496;父组件触发子组件的事件Ref ⭐vue3 组件传值实例&#x1f496; 父组件传递数据给子组件props&#x1f496; …

Transformer---ViT:vision transformer

记录一下对transformer方法在计算机视觉任务中的应用方法的理解 参考博客:https://blog.csdn.net/weixin_42392454/article/details/122667271 参考代码:https://gitcode.net/mirrors/Runist/torch_vision_transformer?utm_sourcecsdn_github_accelerator 模型训练流程: imp…

【数据结构与算法】克鲁斯卡尔算法

克鲁斯卡尔算法 介绍 克鲁斯卡尔&#xff08;Kruskal&#xff09;算法是用来求加权连通图的最小生成树的算法。基本思想&#xff1a;按照权值从小到大的顺序选择 n - 1 条边&#xff0c;并保证这 n - 1 条边不构成回路。具体做法&#xff1a;首先构造一个只含 n 个顶点的森林…

文本三剑客sed grep awk

目录 1、sed 1.1、基本用法 1.2、sed脚本格式 1.3、搜索与替换 1.4、变量 2、awk 2.1、基础用法 2.2、常见的内置变量 2.3、模式 2.4、判断 2.5、for计算 2.6、数组 3、grep 1、sed sed 即 Stream EDitor&#xff0c;和 vi 不同&#xff0c;sed是行编辑器 Sed是从…

leetcode刷题之283:移动零

问题 实现思路 首先, 将dest指向-1 位置, cur指向下标为0 的位置, 在cur遍历的过程中: 1) 遇到非零元素则与下标dest1 位置的元素交换, 2) 若遇到零元素则只继续cur遍历. 下标为1 的位置上是 非零元素 执行1) 交换得到右图结果 随后cur 得到下图结果 下标为2 的位置上是零…

day-27 代码随想录算法训练营(19)part03

78.子集 画图分析&#xff1a; 思路&#xff1a;横向遍历&#xff0c;每次遍历的时候都进行一次添加&#xff0c;然后进行纵向递归&#xff0c;递归完之后进行回溯。 注意&#xff1a;空集也是子集。 90.子集|| 分析&#xff1a;和上题一样&#xff0c;区别在于有重复数字 …

LeetCode283.移动零

这道题还是很简单的&#xff0c;我用的是双指针&#xff0c;左指针i从头开始遍历数组&#xff0c;右指针j是从i后面第一个数开始遍历&#xff0c;当左指针i等于0的时候&#xff0c;右指针j去寻找i右边第一个为0的数和i交换位置&#xff0c;交换完了就break内层循环&#xff0c;…

STM8遇坑[EEPROM读取debug不正常release正常][ STVP下载成功单运行不成功][定时器消抖莫名其妙的跑不通流程]

EEPROM读取debug不正常release正常 这个超级无语,研究和半天,突然发现调到release就正常了,表现为写入看起来正常读取不正常,这个无语了,不想研究了 STVP下载不能够成功运行 本文摘录于&#xff1a;https://blog.csdn.net/qlexcel/article/details/71270780只是做学习备份之…

每周AI大事件 百度文心一言上线搜索、文生视频、图表制作等5大插件

每周AI大事件 | 百度文心一言上线搜索、文生视频、图表制作等5大插件 文章目录 一、百度文心一言简介二、百度文心一言五大插件功能详解三、 开启文心一言 体验览卷文档E言易图 &#xff08;貌似不太理想&#xff0c;可能指令姿势不对&#xff09;说图解画&#xff08;貌似不太…

「第2讲」正版PyCharm但是免费,安装教程来了,还有中文插件哦~

大家好&#xff0c;这里是程序员晚枫。 免费的【50讲Python自动化办公】持续更新中&#xff0c;关注我学习吧&#x1f447;想了解更多精彩内容&#xff0c;快来关注程序员晚枫 上一讲&#xff1a;「第1讲」Python的下载、安装和卸载&#xff0c;有手就能学 装完了Python&#…

char *str,char str,char * str和char str的区别

1.char *str是一个指向字符或字符串的指针&#xff0c;总是指向一个字符的起始地址&#xff0c;例如 char *str "Hello"; cout << *str << endl; // 输出&#xff1a;H cout << str << endl; // 输出&#xff1a;Hello str "World…

5.4 webrtc的线程

那今天呢&#xff1f;我们来了解一下webrtc中的threed&#xff0c;首先我们看一下threed的类&#xff0c;它里边儿都含了哪些内容&#xff1f;由于threed的类非常大啊&#xff0c;我们将它分成两部分。 那第一部分呢&#xff0c;是我们看threed的类中都包含了哪些数据之后呢&a…

linux设备驱动:kset、uevent、class

目录 kset&#xff1a;驱动的骨架 kset_create_and_add()函数 设备驱动模型实验2-kobject点灯&#xff08;加入kset&#xff09; kset.c文件 Makefile文件 执行过程 uevent&#xff1a;内核消息的快递包 uevent机制 kobject_uevent()函数 设备驱动模型实验3-kobject点…