Linux系统——防火墙

Linux系统中配置防火墙 开启Firewall防火墙后,默认情况下,只有本机可以访问本机的容器和应用。 阅读详情

目录

一、防火墙的认识

1.防火墙定义

2.防火墙分类

二、Linux系统防火墙

1.Netfilter

2.防火墙工具介绍

2.1iptables

2.2firewalld

2.3nftables

2.4netfilter的五个勾子函数和报文流向

2.4.1五个勾子

2.4.2三种报文流向

3.1iptables概述

3.2iptables和netfilter

3.3包过滤的工作层次

4.iptables的表、链结构——四表五链(实际为五表五链)

4.1规则表

4.1.1规则表内容

4.2规则链

4.2.1规则链内容

5.实际操作

5.1前提准备工作

5.2基本语法

5.3数据包的常见控制类型

5.4管理选项

5.4.1-A 添加新的防火墙规则

5.4.2查看防火墙规则

5.4.3删除清空替换规则

清空规则

删除规则 -D

替换规则

5.4.4设置默认策略

白名单

5.5语法总结

6.通用匹配

6.1不允许另一台主机通过icmp协议来ping本机

7.模块

7.1隐含扩展

7.1.1实验 控制目的主机  不想让其访问本机的httpd服务

192.168.241.11主机操作 

192.168.241.22主机操作 

7.1.2如何实现主机1可以ping主机2,但是主机2无法ping主机1

7.2显式扩展

 7.2.1multiport扩展

举例——主机1拒绝主机2的远程登录和访问页面服务

7.2.2iprange扩展

举例——指明具体主机不可以访问本机

 7.2.3mac地址

7.2.4string字符串

举例——如果想拒绝主机2来访问本机的地址


一、防火墙的认识

引言

安全技术

  • 入侵检测系统(Intrusion Detection Systems):特点是不阻断任何网络访问,量化、定位来自内外网络的威胁情况,主要以提供报警和事后监督为主,提供有针对性的指导措施和安全决策依据,类 似于监控系统一般采用旁路部署(默默的看着你)方式。
  • 入侵防御系统(Intrusion Prevention System):以透明模式工作,分析数据包的内容如:溢出攻击、拒绝服务攻击、木马、蠕虫、系统漏洞等进行准确的分析判断,在判定为攻击行为后立即予以 阻断,主动而有效的保护网络的安全,一般采用在线部署方式。(必经之路)
  • 防火墙( FireWall ):隔离功能,工作在网络或主机边缘,对进出网络或主机的数据包基于一定的规则检查,并在匹配某规则时由规则定义的行为进行处理的一组功能的组件,基本上的实现都是默 认情况下关闭所有的通过型访问,只开放允许访问的策略,会将希望外网访问的主机放在DMZ (demilitarized zone)网络中.

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

1.防火墙定义

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

简单理解为是筛选和过滤流量,对需要的流量进行放行,对不需要或者有威胁的流量进行拒绝

2.防火墙分类

按保护范围划分:

  • 主机防火墙:服务范围为当前一台主机
  • 网络防火墙:服务范围为防火墙一侧的局域网

按实现方式划分:

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

按网络协议划分:

  • 网络层防火墙:OSI模型下四层,又称为包过滤防火墙(协议端口号  ip  mac)
  • 应用层防火墙/代理服务器:proxy 代理网关,OSI模型七层

防火墙是一个解包和重新装包的过程

包过滤防火墙

网络层对数据包进行选择,选择的依据是系统内设置的过滤逻辑,被称为访问控制列表(ACL),通过检查数据流中每个数据的源地址,目的地址,所用端口号和协议状态等因素,或他们的组合来确定是否 允许该数据包通过

  • 优点:对用户来说透明,处理速度快且易于维护
  • 缺点:无法检查应用层数据,如病毒等

应用层防火墙

应用层防火墙/代理服务型防火墙,也称为代理服务器(Proxy Server)

将所有跨越防火墙的网络通信链路分为两段

内外网用户的访问都是通过代理服务器上的“链接”来实现优点:在应用层对数据进行检查,比较安全

  • 缺点:增加防火墙的负载
  • 提示:现实生产环境中所使用的防火墙一般都是二者结合体,即先检查网络数据,通过之后再送到应用 层去检查

二、Linux系统防火墙

1.Netfilter

Linux防火墙是由Netfilter组件提供的,Netfilter工作在内核空间,集成在linux内核中

Netfilter 是Linux 2.4.x之后新一代的Linux防火墙机制,是linux内核的一个子系统。Netfilter采用模块化设计,具有良好的可扩充性,提供扩展各种网络服务的结构化底层框架。Netfilter与IP协议栈是无缝契合,并允许对数据报进行过滤、地址转换、处理等操作

Netfilter官网文档:https://netfilter.org/documentation/

2.防火墙工具介绍

2.1iptables

由软件包iptables提供的命令行工具,工作在用户空间,用来编写规则,写好的规则被送往netfilter,告诉内核如何去处理信息包

2.2firewalld

从CentOS 7 版开始引入了新的前端管理工具

软件包:

  • firewalld
  • firewalld-config

管理工具:

  • firewall-cmd 命令行工具
  • firewall-config 图形工作

2.3nftables

  • 此软件是CentOS 8 新特性,Nftables最初在法国巴黎的Netfilter Workshop 2008上发表,然后由长期的netfilter核心团队成员和项目负责人Patrick McHardy于2009年3月发布。它在2013年末合并到Linux内核中,自2014年以来已在内核3.13中可用。
  • 它重用了netfilter框架的许多部分,例如连接跟踪和NAT功能。它还保留了命名法和基本iptables设计的几个部分,例如表,链和规则。就像iptables一样,表充当链的容器,并且链包含单独的规则,这些规则可以执行操作,例如丢弃数据包,移至下一个规则或跳至新链。从用户的角度来看,nftables添加了一个名为nft的新工具,该工具替代了iptables,arptables和ebtables中的所有其他工具。从体系结构的角度来看,它还替换了内核中处理数据包过滤规则集运行时评估的那些部分。

2.4netfilter的五个勾子函数和报文流向

2.4.1五个勾子
  • Netfilter在内核中选取五个位置放了五个hook(勾子) function(INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING),而这五个hook function向用户开放,用户可以通过一个命令工具(iptables)向其写入规则。
  • 由信息过滤表(table)组成,包含控制IP包处理的规则集(rules),规则被分组放在链(chain)上
  • 提示:从 Linux kernel 4.2 版以后,Netfilter 在prerouting 前加了一个 ingress 勾子函数。可以使用这个新的入口挂钩来过滤来自第2层的流量,这个新挂钩比预路由要早,基本上是 tc 命令(流量控制工具)的替代品。

链chain:

内置链:每个内置链对应于一个勾子函数

自定义链:用于对内置链进行扩展或补充,可实现更灵活的规则组织管理机制;只有Hook勾子可以调用,用自定义链使才生效。 

2.4.2三种报文流向

内核中数据包传输过程

  1. 当一个数据包进入网卡时,数据包首先进入PREROUTING链,内核根据数据包目的IP判断是否需要 转送出去
  2. 如果数据包是进入本机的,数据包就会沿着图向上移动,到达INPUT链。数据包到达INPUT链后, 任何进程都会收到它。本机上运行的程序可以发送数据包,这些数据包经过OUTPUT链,然后到达postrouting
  3. 如果数据包是要转发出去的,且内核允许转发,数据包就会向右移动,经过FORWARD链,然后到达POSTROUTING链输出

三种报文流向

  • 流入本机:PREROUTING --> INPUT-->用户空间进程(访问我的服务)
  • 流出本机:用户空间进程 -->OUTPUT--> POSTROUTING(穿过我)
  • 转发:PREROUTING --> FORWARD --> POSTROUTING(分摊流量)

用户空间进程:例如,用户通过http协议来访问我的80端口,实际上访问我的httpd服务 

3.iptables

3.1iptables概述

Linux 的防火墙体系主要工作在网络层,针对 TCP/IP 数据包实施过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙)。Linux 系统的防火墙体系基于内核编码实现, 具有非常稳定的性能和高效率,也因此获得广泛的应用。

3.2iptables和netfilter

netfilter/iptables:IP 信息包过滤系统,它实际上由两个组件 netfilter 和 iptables组成。 主要工作在网络层,针对IP数据包,体现在对包内的IP地址、端口等信息的处理。

netfilter:

  • 位于Linux内核中的包过滤功能体系
  • 称为Linux防火墙的“内核态”

属于“内核态”又称内核空间(kernel space)的防火墙功能体系。linux 好多东西都是内核态 用户态,那我们运维人员关注的是用户态, 内核我们关注不是很多,内核基本是我们开发人员关心的事情是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。

iptables :

  • 位于/sbin/iptables,用来管理防火墙规则的工具
  • 称为Linux防火墙的“用户态”

属于“用户态”(User Space, 又称为用户空间)的防火墙管理体系。是一种用来管理Linux防火墙的命令程序,它使插入、修改和删除数据包过滤表中的规则变得容易,通常位于/sbin/iptables目录下。 netfilter/iptables后期简称为iptables。iptables是基于内核的防火墙,其中内置了raw、mangle、 nat和filter四个规则表。表中所有规则配置后,立即生效,不需要重启服务。

3.3包过滤的工作层次

  • 主要是网络层,针对IP数据包
  • 体现在对包内的IP地址、端口等信息的处理上

4.iptables的表、链结构——四表五链(实际为五表五链)

4.1规则表

  • 表的作用:容纳各种规则链
  • 表的划分依据:防火墙规则的作用相似
4.1.1规则表内容
  • raw表:确定是否对该数据包进行状态跟踪(关闭启用的连接跟踪机制,加快封包穿越防火墙速度)
  • mangle表:为数据包设置标记(修改数据标记位规则表)
  • nat(network address translation)表:修改数据包中的源、目标IP地址或端口
  • filter:确定是否放行该数据包(过滤规则表根据定义的规则过滤符合条件的数据包,默认表)
  • security:用于强制访问控制(MAC)网络规则,由Linux安全模块(如SElinux)实现

总结:

raw 跟踪数据包;mangle 标记数据包;nat 地址转换(公网私网地址转换);filter 地址过滤(允许/拒绝) 

security  >  raw  >  mangle  >  nat  >filter 

4.2规则链

  • 规则的作用:对数据包进行过滤或处理
  • 链的作用:容纳各种防火墙规则
  • 链的分类依据:处理数据包的不同时机
4.2.1规则链内容
  • INPUT:处理入站数据包
  • OUTPUT:处理出站数据包
  • FORWARD:处理转发数据包
  • POSTROUTING:在进行路由选择后处理数据包
  • PREROUTING:在进行路由选择前处理数据包

总结:

INPUT 入站数据;OUTPUT 出站数据;FORWARD 转发数据;POSTROUTING 路由选择后;PREROUTING 路由选择前

iptables由五个表table和五个链chain以及一些规则组成

raw:主要用来决定是否对数据包进行状态跟踪 包含两个规则链,OUTPUT、PREROUTING

mangle : 修改数据包内容,用来做流量整形的,给数据包设置标记。包含五个规则链,INPUT、 OUTPUT、 FORWARD、 PREROUTING、 POSTROUTING

nat:负责网络地址转换,用来修改数据包中的源、目标IP地址或端口。包含三个规则链,OUTPUT、PREROUTING、POSTROUTING。

filter:负责过滤数据包,确定是否放行该数据包(过滤)。包含三个链,即PREROUTING、POSTROUTING、OUTPUT

注:在iptables 的四个规则表中,mangle 表 和raw表的应用相对较少

INPUT: 处理入站数据包,匹配目标IP为本机的数据包。

  • OUTPUT: 处理出站数据包,一般不在此链上做配置。
  • FORWARD: 处理转发数据包,匹配流经本机的数据包。
  • PREROUTING链: 在进行路由选择前处理数据包,用来修改目的地址,用来做DNAT。相当于把内网服务器的IP和端口映射到路由器的外网IP和端口上。
  • POSTROUTING链: 在进行路由选择后处理数据包,用来修改源地址,用来做SNAT。相当于内网通过路由器NAT转换功能实现内网主机通过一个公网IP地址上网。

5.实际操作

CentOS7默认使用firewalld防火墙,没有安装iptables,若想使用iptables防火墙。必须先关闭firewalld防火墙,再安装iptables

5.1前提准备工作

[root@localhost ~]#systemctl stop firewalld
[root@localhost ~]#yum -y install iptables iptables-services
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.nju.edu.cn
 * epel: mirror.nju.edu.cn
 * extras: mirrors.nju.edu.cn
 * updates: mirrors.nju.edu.cn
软件包 iptables-1.4.21-35.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 iptables-services.x86_64.0.1.4.21-35.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=============================================================================
 Package                 架构         版本                  源          大小
=============================================================================
正在安装:
 iptables-services       x86_64       1.4.21-35.el7         base        52 k

事务概要
=============================================================================
安装  1 软件包

总下载量:52 k
安装大小:23 k
Downloading packages:
iptables-services-1.4.21-35.el7.x86_64.rpm              |  52 kB   00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : iptables-services-1.4.21-35.el7.x86_64                   1/1 
  验证中      : iptables-services-1.4.21-35.el7.x86_64                   1/1 

已安装:
  iptables-services.x86_64 0:1.4.21-35.el7                                   

完毕!
[root@localhost ~]#systemctl status iptables.service 
● iptables.service - IPv4 firewall with iptables
   Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
[root@localhost ~]#systemctl start iptables.service 
[root@localhost ~]#systemctl status iptables.service 
● iptables.service - IPv4 firewall with iptables
   Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; vendor preset: disabled)
   Active: active (exited) since 四 2024-02-01 14:51:09 CST; 1s ago
  Process: 3274 ExecStart=/usr/libexec/iptables/iptables.init start (code=exited, status=0/SUCCESS)
 Main PID: 3274 (code=exited, status=0/SUCCESS)

2月 01 14:51:09 localhost.localdomain systemd[1]: Starting IPv4 firewall ...
2月 01 14:51:09 localhost.localdomain iptables.init[3274]: iptables: Appl… ]
2月 01 14:51:09 localhost.localdomain systemd[1]: Started IPv4 firewall w...
Hint: Some lines were ellipsized, use -l to show in full.

5.2基本语法

iptables    [ -t 表名 ]    管理选项    [ 链名 ]    [ 匹配条件 ]    [ -j 控制类型 ]

其中,表名、链名用来指定 iptables 命令所操作的表和链,未指定表名时将默认使用 filter 表;

  • 管理选项:表示iptables规则的操作方式,如插入、增加、删除、查看等;
  • 匹配条件:用来指定要处理的数据包的特征,不符合指定条件的数据包将不会处理;
  • 控制类型指的是数据包的处理方式,如允许、拒绝、丢弃等。 

注意事项:

  • 不指定表名时,默认指filter表
  • 不指定链名时,默认指表内的所有链
  • 除非设置链的默认策略,否则必须指定匹配条件
  • 选项、链名、控制类型使用大写字母,其余均为小写

iptables 指定表(-t filter/-t nat) 如何在链中插入规则  指定链(-A INPUT)条件/规则(-s 192.168.0.1 -j DROP)

  • -t filter 指定表;默认是filter
  • A append 附加  在末尾追加
  • I  插队  I 2表示第二条规则;I默认排在第一条
  • -s 规则
  • -j 跳转

5.3数据包的常见控制类型

对于防火墙,数据包的控制类型非常关键,直接关系到数据包的放行、封堵及做相应的日志记录等。在 iptables 防火墙体系中,最常用的几种控制类型如下

选项定义
ACCEPT允许数据包通过
DROP直接丢弃数据包,不会做任何回应
REJECT拒绝数据包通过,必要时会给数据发送端一个响应信息
LOG在/var/log/message 文件中记录日志信息,然后将数据包传递给下一条视频
SNAT修改数据包的源地址
DNAT修改数据包的目的地址
MASQUERADE伪装成一个非固定公网IP地址

防火墙规则的“匹配即停止”对于 LOG 操作来说是一个特例,因为 LOG 只是一种辅助 动作,并没有真正处理数据包。;

控制类型必须使用大写!!!

5.4管理选项

选项用法详解
-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看链的所有规则或者某个链的规则/某个具体规则后面跟编号
5.4.1-A 添加新的防火墙规则

清空防火墙规则

当前无任何防火墙规则

当前192.168.241.22主机还可以ping通192.168.241.11主机

添加一条防火墙规则,不允许任何主机通过icmp协议ping本机

此时,无法通过icmp协议通过ping来检测与192.168.241.11主机的网络连通性 

5.4.2查看防火墙规则

查看已有的防火墙规则时,使用管理选项“-L”,结合“--line-numbers”选项还可显示各条规则在链内的顺序号。例如,若要查看 filter 表 INPUT 链中的所有规则,并显示规则序号, 可以执行以下操作

-v详细信息;-t查看nat表;-n规则数字化显示 

5.4.3删除清空替换规则
清空规则

清空指定链或表中的所有防火墙规则,使用管理选项“-F”。例如,若要清空 filter 表 INPUT  

删除规则 -D

替换规则

注意:

  • 若规则列表中有多条相同的规则时,按内容匹配只删除的序号最小的一条
  • 按号码匹配删除时,确保规则号码小于等于已有规则数,否则报错
  • 按内容匹配删数时,确保规则存在,否则报错
5.4.4设置默认策略

iptables 的各条链中,默认策略是规则匹配的最后一个环节——当找不到任何一条能够匹配数据包的规则时,则执行默认策略。默认策略的控制类型为 ACCEPT(允许)、DROP(丢弃)两种。例如,执行以下操作可以将 filter 表中 FORWARD 链的默认策略设为丢弃, OUTPUT 链的默认策略设为允许。

iptables   [-t表名]   -P    <链名>    <控制类型>

设置只有192.168.241.11的主机可以接受登录

如果输入该命令,则拒绝所有192.168.241.0网段的主机连接

 会生成如下情况

解决办法,进入真机查看防火墙规则

在真机插入一条防火墙规则,置于拒绝规则之前 

插播  如果一直删除第三条规则,最后只会留下两条规则

Xshell是通过真机来使用的,所以要把本机的ip添加进去,使得真机被接受通过 

Xshell连接成功

需要注意的是,当使用管理选项“-F”清空链时,默认策略不受影响。因此若要修改默认 策略,必须通过管理选项“-P”重新进行设置。另外,默认策略并不参与链内规则的顺序编排, 因此在其他规则之前或之后设置并无区别。

白名单

-P设置默认规则为DROP   拒绝之后  会拒绝所有连接

如果在生产环境中建议使用这个白名单,白名单要放在所有规则之后;

如果想设置白名单,默认拒绝所有之前,先把自己加进来

先设置自己的地址进来,接收真机的地址 

然后设置白名单 所有的流量都拒绝  此时看到不会影响Xshell的连接

默认白名单

5.5语法总结

iptablestablecommandchainparametertarget
-t filter

-A
-D
-I
-R
-L
-F

-Z

-N
-X
-P

INPUT

FORWARD

OUTPUT

PREROUTING

POSTROUTING

-p

-s

-d

-i

-o

--sport

--dport

-j ACCEPT

-j DROP

-j REJECT

6.通用匹配

  • 直接使用:不依赖于其他条件或扩展,包括网络协议、IP地址、网络接口等条件
  • 协议匹配: -p协议名
  • 地址匹配: -s 源地址、-d目的地址
  • 接口匹配: -i入站网卡、-o出站网卡  

6.1不允许另一台主机通过icmp协议来ping本机

准备工作,目前192.168.241.22可以通过icmp协议来ping通192.168.241.11

设置拒绝192.168.241.22主机通过icmp协议来ping本机

此时看到192.168.241.22主机无法通过icmp协议来ping192.168.241.11主机

但是通过ssh命令可以连接本机

7.模块

.so结尾的均为模块,也就是说在使用配置防护墙规则的时候,调用的是.so结尾的配置文件 

如果想禁用tco协议防火墙配置,那么必须要有tcp模块才可以使用限制功能

7.1隐含扩展

  • iptables 在使用-p选项指明了特定的协议时,无需再用-m选项指明扩展模块的扩展机制,不需要手动加载扩展模块
  • 要求以特定的协议匹配作为前提,包括端口、TCP标记、ICMP类型等条件。 端口匹配: --sport 源端口、--dport 目的端口(可以是个别端口、端口范围)
[root@localhost ~]#man iptables-extensions

隐含扩展可以通过man iptables-extension查看扩展帮助

  • --source-port,--source port[:port]     可为报文源端口,可为端口连续范围
  • --destination-port,--dport port[:port]   匹配报文目标端口,可为连续范围
  • --tcp-flags mask comp(mask 需检查的标志位列表,用","分隔;例如SYN ACK FIN RST等。comp 在mask列表中必须为1的标志位列表,无指定则必须为0,用“,”分隔tcp协议的扩展选项)

--tcp-flags SYN,ACK,FIN,RST SYN 表示要检查的标志位为SYN,ACK,FIN,RST四个,其中SYN必须为1,余下的必须为0,第一次握手;

--tcp-flags SYN,ACK,FIN,RST SYN,ACK 第二次握手。——错误包

  • --tcp-flags ALL ALL  
  • --tcp_flags ALL NONE
  • --sport 1000              匹配源端口是1000的数据包
  • --sport 1000:3000     匹配源端口是1000-3000的数据包
  • --sport :3000             匹配源端口是3000及以下的数据包
  • --sport 1000:             匹配源端口是1000及以上的数据包

注意: --sport和--dport 必须配合-p <协议类型>使用

(dport目的;sport源目的)

7.1.1实验 控制目的主机  不想让其访问本机的httpd服务
192.168.241.11主机操作 
[root@localhost ~]#rpm -q httpd
未安装软件包 httpd 
[root@localhost ~]#yum install httpd -y
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.nju.edu.cn
 * epel: mirror.nju.edu.cn
 * extras: mirrors.nju.edu.cn
 * updates: mirrors.nju.edu.cn
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-99.el7.centos.1 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-99.el7.centos.1,它被软件包 httpd-2.4.6-99.el7.centos.1.x86_64 需要
--> 正在处理依赖关系 /etc/mime.types,它被软件包 httpd-2.4.6-99.el7.centos.1.x86_64 需要
--> 正在处理依赖关系 libaprutil-1.so.0()(64bit),它被软件包 httpd-2.4.6-99.el7.centos.1.x86_64 需要
--> 正在处理依赖关系 libapr-1.so.0()(64bit),它被软件包 httpd-2.4.6-99.el7.centos.1.x86_64 需要
--> 正在检查事务
---> 软件包 apr.x86_64.0.1.4.8-7.el7 将被 安装
---> 软件包 apr-util.x86_64.0.1.5.2-6.el7_9.1 将被 安装
---> 软件包 httpd-tools.x86_64.0.2.4.6-99.el7.centos.1 将被 安装
---> 软件包 mailcap.noarch.0.2.1.41-2.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=============================================================================
 Package          架构        版本                        源            大小
=============================================================================
正在安装:
 httpd            x86_64      2.4.6-99.el7.centos.1       updates      2.7 M
为依赖而安装:
 apr              x86_64      1.4.8-7.el7                 base         104 k
 apr-util         x86_64      1.5.2-6.el7_9.1             updates       92 k
 httpd-tools      x86_64      2.4.6-99.el7.centos.1       updates       94 k
 mailcap          noarch      2.1.41-2.el7                base          31 k

事务概要
=============================================================================
安装  1 软件包 (+4 依赖软件包)

总下载量:3.0 M
安装大小:10 M
Downloading packages:
(1/5): httpd-tools-2.4.6-99.el7.centos.1.x86_64.rpm     |  94 kB   00:00     
(2/5): apr-1.4.8-7.el7.x86_64.rpm                       | 104 kB   00:00     
(3/5): apr-util-1.5.2-6.el7_9.1.x86_64.rpm              |  92 kB   00:00     
(4/5): mailcap-2.1.41-2.el7.noarch.rpm                  |  31 kB   00:00     
(5/5): httpd-2.4.6-99.el7.centos.1.x86_64.rpm           | 2.7 MB   00:01     
-----------------------------------------------------------------------------
总计                                            2.7 MB/s | 3.0 MB  00:01     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : apr-1.4.8-7.el7.x86_64                                   1/5 
  正在安装    : apr-util-1.5.2-6.el7_9.1.x86_64                          2/5 
  正在安装    : httpd-tools-2.4.6-99.el7.centos.1.x86_64                 3/5 
  正在安装    : mailcap-2.1.41-2.el7.noarch                              4/5 
  正在安装    : httpd-2.4.6-99.el7.centos.1.x86_64                       5/5 
  验证中      : httpd-2.4.6-99.el7.centos.1.x86_64                       1/5 
  验证中      : mailcap-2.1.41-2.el7.noarch                              2/5 
  验证中      : apr-1.4.8-7.el7.x86_64                                   3/5 
  验证中      : httpd-tools-2.4.6-99.el7.centos.1.x86_64                 4/5 
  验证中      : apr-util-1.5.2-6.el7_9.1.x86_64                          5/5 

已安装:
  httpd.x86_64 0:2.4.6-99.el7.centos.1                                       

作为依赖被安装:
  apr.x86_64 0:1.4.8-7.el7                                                   
  apr-util.x86_64 0:1.5.2-6.el7_9.1                                          
  httpd-tools.x86_64 0:2.4.6-99.el7.centos.1                                 
  mailcap.noarch 0:2.1.41-2.el7                                              

完毕!
[root@localhost ~]#systemctl start httpd
[root@localhost ~]#systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: active (running) since 四 2024-02-01 18:46:41 CST; 3s ago
     Docs: man:httpd(8)
           man:apachectl(8)
 Main PID: 7938 (httpd)
   Status: "Processing requests..."
   CGroup: /system.slice/httpd.service
           ├─7938 /usr/sbin/httpd -DFOREGROUND
           ├─7939 /usr/sbin/httpd -DFOREGROUND
           ├─7940 /usr/sbin/httpd -DFOREGROUND
           ├─7941 /usr/sbin/httpd -DFOREGROUND
           ├─7942 /usr/sbin/httpd -DFOREGROUND
           └─7943 /usr/sbin/httpd -DFOREGROUND

2月 01 18:46:41 localhost.localdomain systemd[1]: Starting The Apache HTT...
2月 01 18:46:41 localhost.localdomain httpd[7938]: AH00558: httpd: Could ...
2月 01 18:46:41 localhost.localdomain systemd[1]: Started The Apache HTTP...
Hint: Some lines were ellipsized, use -l to show in full.
[root@localhost ~]#iptables -A INPUT -p tcp --dport 80 -j REJECT 
#拒绝任何主机通过tcp协议来连接本机的80端口的httpd服务
[root@localhost ~]#iptables -A INPUT -p tcp --dport 22 -j REJECT 
#拒绝任何主机通过tcp协议来连接22端口
192.168.241.22主机操作 
[root@node2 ~]#curl 192.168.241.11:80
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"><html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
		<title>Apache HTTP Server Test Page powered by CentOS</title>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

    <!-- Bootstrap -->
    <link href="/noindex/css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="noindex/css/open-sans.css" type="text/css" />

<style type="text/css"><!--		 

body {
  font-family: "Open Sans", Helvetica, sans-serif;
  font-weight: 100;
  color: #ccc;
  background: rgba(10, 24, 55, 1);
  font-size: 16px;
}

h2, h3, h4 {
  font-weight: 200;
}

h2 {
  font-size: 28px;
}

.jumbotron {
  margin-bottom: 0;
  color: #333;
  background: rgb(212,212,221); /* Old browsers */
  background: radial-gradient(ellipse at center top, rgba(255,255,255,1) 0%,rgba(174,174,183,1) 100%); /* W3C */
}

.jumbotron h1 {
  font-size: 128px;
  font-weight: 700;
  color: white;
  text-shadow: 0px 2px 0px #abc,
               0px 4px 10px rgba(0,0,0,0.15),
               0px 5px 2px rgba(0,0,0,0.1),
               0px 6px 30px rgba(0,0,0,0.1);
}

.jumbotron p {
  font-size: 28px;
  font-weight: 100;
}

.main {
   background: white;
   color: #234;
   border-top: 1px solid rgba(0,0,0,0.12);
   padding-top: 30px;
   padding-bottom: 40px;
}

.footer {
   border-top: 1px solid rgba(255,255,255,0.2);
   padding-top: 30px;
}

    --></style>
</head>
<body>
  <div class="jumbotron text-center">
    <div class="container">
   	  <h1>Testing 123..</h1>
  		<p class="lead">This page is used to test the proper operation of the <a href="http://apache.org">Apache HTTP server</a> after it has been installed. If you can read this page it means that this site is working properly. This server is powered by <a href="http://centos.org">CentOS</a>.</p>
		</div>
  </div>
  <div class="main">
    <div class="container">
       <div class="row">
  			<div class="col-sm-6">
    			<h2>Just visiting?</h2>
			  		<p class="lead">The website you just visited is either experiencing problems or is undergoing routine maintenance.</p>
  					<p>If you would like to let the administrators of this website know that you've seen this page instead of the page you expected, you should send them e-mail. In general, mail sent to the name "webmaster" and directed to the website's domain should reach the appropriate person.</p>
  					<p>For example, if you experienced problems while visiting www.example.com, you should send e-mail to "webmaster@example.com".</p>
	  			</div>
  				<div class="col-sm-6">
	  				<h2>Are you the Administrator?</h2>
		  			<p>You should add your website content to the directory <tt>/var/www/html/</tt>.</p>
		  			<p>To prevent this page from ever being used, follow the instructions in the file <tt>/etc/httpd/conf.d/welcome.conf</tt>.</p>

	  				<h2>Promoting Apache and CentOS</h2>
			  		<p>You are free to use the images below on Apache and CentOS Linux powered HTTP servers.  Thanks for using Apache and CentOS!</p>
				  	<p><a href="http://httpd.apache.org/"><img src="images/apache_pb.gif" alt="[ Powered by Apache ]"></a> <a href="http://www.centos.org/"><img src="images/poweredby.png" alt="[ Powered by CentOS Linux ]" height="31" width="88"></a></p>
  				</div>
	  		</div>
	    </div>
		</div>
	</div>
	  <div class="footer">
      <div class="container">
        <div class="row">
          <div class="col-sm-6">          
            <h2>Important note:</h2>
            <p class="lead">The CentOS Project has nothing to do with this website or its content,
            it just provides the software that makes the website run.</p>
            
            <p>If you have issues with the content of this site, contact the owner of the domain, not the CentOS project. 
            Unless you intended to visit CentOS.org, the CentOS Project does not have anything to do with this website,
            the content or the lack of it.</p>
            <p>For example, if this website is www.example.com, you would find the owner of the example.com domain at the following WHOIS server:</p>
            <p><a href="http://www.internic.net/whois.html">http://www.internic.net/whois.html</a></p>
          </div>
          <div class="col-sm-6">
            <h2>The CentOS Project</h2>
            <p>The CentOS Linux distribution is a stable, predictable, manageable and reproduceable platform derived from 
               the sources of Red Hat Enterprise Linux (RHEL).<p>
            
            <p>Additionally to being a popular choice for web hosting, CentOS also provides a rich platform for open source communities to build upon. For more information
               please visit the <a href="http://www.centos.org/">CentOS website</a>.</p>
          </div>
        </div>
		  </div>
    </div>
  </div>
</body></html>
[root@node2 ~]#curl 192.168.241.11:80
curl: (7) Failed connect to 192.168.241.11:80; Connection refused
#此时无法登录192.168.241.11主机的httpd服务,但是还可以通过ssh进行连接192.168.241.11主机
#如果想断掉ssh服务 需要在192.168.241.11主机再新加一条规则
[root@node2 ~]#ssh 192.168.241.11
The authenticity of host '192.168.241.11 (192.168.241.11)' can't be established.
ECDSA key fingerprint is SHA256:k/dmSIE+ic90gNaqecVvZT0PdW+9hJf9EwJQDXY1f7w.
ECDSA key fingerprint is MD5:e1:61:2b:5d:fe:10:a9:72:1f:c2:7e:2b:5b:51:f4:7c.
Are you sure you want to continue connecting (yes/no)? ^C
#将192.168.241.11主机的规则新加入后   此时无法通过ssh命令通过22端口进行远程连接192.168.241.11主机
[root@node2 ~]#ssh 192.168.241.11
ssh: connect to host 192.168.241.11 port 22: Connection refused

如果想设置拒绝22-80所有端口

7.1.2如何实现主机1可以ping主机2,但是主机2无法ping主机1

实验开始前,双方可以互相ping

添加规则之后,双方不能互相ping

通过控制INPUT icmp协议 拒绝192.168.241.22的8包

此时主机1可以ping通主机2  主机2ping不通主机1 

如果再修改OUTPUT 拒绝192.168.241.22的0包

也是可以使主机2无法向主机1回包

7.2显式扩展

显示扩展即必须使用-m选项指明要调用的扩展模块名称,需要手动加载扩展模块

 7.2.1multiport扩展

以离散方式定义多端口匹配,最多指定15个端口

[!] --source-ports,--sports port[,port|,port:port]...
#指定多个源端口 逗号隔开
[!] --destination-ports,--dports port[,port|,port:port]...
# 指定多个目标端口 逗号隔开
[!] --ports port[,port|,port:port]...
#多个源或目标端
举例——主机1拒绝主机2的远程登录和访问页面服务

主机2目前可以连接主机1

还可以访问主机1的httpd服务 

此时,如果给主机1添加一条规则,把来源于主机2的22和80端口拒绝访问

[root@localhost ~]#iptables -A INPUT -s 192.168.241.22 -p tcp -m multiport --dport 22,80 -j REJECT

此时,主机2就无法访问主机1的httpd服务,也不可以远程登录主机1

7.2.2iprange扩展

指明连续的(但一般不是整个网络)ip地址范围

[!] --src-range from[-to] 源IP地址范围
[!] --dst-range from[-to] 目标IP地址范围
举例——指明具体主机不可以访问本机

目前,主机2和主机3均可以通过icmp协议通过ping来检测与主机1的网络连通性

如果给主机1设置一条拒绝主机2和主机3地址的防火墙规则

[root@localhost ~]#iptables -A INPUT  -m iprange --src-range 192.168.241.22-192.168.241.23 -j REJECT
#指定(src)源地址为192.168.241.22-192.168.241.23 两个地址无法访问当前主机

此时发现,主机2和主机3无法通过icmp协议通过ping来检测与主机1的网络连通性

 7.2.3mac地址

mac 模块可以指明源MAC地址,,适用于:PREROUTING, FORWARD,INPUT chains

-m   mac    [!] --mac-source XX:XX:XX:XX:XX:XX

[root@localhost ~]#ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:51:4b:b5 brd ff:ff:ff:ff:ff:ff
    inet 192.168.241.11/24 brd 192.168.241.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::de6f:32c8:5a64:a6b2/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN qlen 1000
    link/ether 52:54:00:53:c1:45 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 1000
    link/ether 52:54:00:53:c1:45 brd ff:ff:ff:ff:ff:ff
[root@localhost ~]#iptables -A INPUT -m mac --mac-source 00:0c:29:51:4b:b5 -j REJECT

7.2.4string字符串

对报文中的应用层数据做字符串模式匹配检测

--algo {bm|kmp} 字符串匹配检测算法
 bm:Boyer-Moore           算法
 kmp:Knuth-Pratt-Morris   算法

--from offset 开始查询的地方
--to offset   结束查询的地方


[!] --string pattern 要检测的字符串模式
[!] --hex-string pattern要检测字符串模式,16进制格式
8  BYEE  前导信息dest mac 6 bytesrc mac 6 bytetype 2byteIP 20TCP 20httpdataFCS
举例——如果想拒绝主机2来访问本机的地址

主机1操作

[root@localhost ~]#cd /var/www/html/
[root@localhost html]#vim cxk.html

cxk

[root@localhost html]#vim wyb.html

wyb

主机2操作

[root@node2 ~]#curl 192.168.241.11/cxk.html
cxk
[root@node2 ~]#curl 192.168.241.11/wyb.html
wyb

以上操作主机2还可以访问主机1的网页服务

如果想使主机2不能访问主机1的页面服务

主机1操作——新增一条防火墙规则

[root@localhost html]#iptables -A OUTPUT -p tcp --sport 80 -m string --algo bm --from 62 --string "cxk" -j REJECT
#增加一条防火墙规则  限制任何主机通过80端口 通过algo bm算法 从62字节开始检查 涉及cxk的 进行拒绝

主机2操作

[root@node2 ~]#curl 192.168.241.11/wyb.html
wyb
[root@node2 ~]#curl 192.168.241.11/cxk.html

#cxk页面无法访问
Linux系统防火墙iptables Linux系统的防火墙: IP信息包过滤系统,它实际上由两个组件netfilter和iptables组成。主要工作在网络层,针对IP数据包。针对 TCP/IP 数据包实施过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙) 阅读详情

相关推荐

Linux 防火墙快速配置 3 招

firewalld是现代 Linux 系统推荐的防火墙管理工具,适合用于动态管理和配置防火墙规则,支持基于区域的管理。iptables是传统的 Linux 防火墙工具,提供了更强大的定制性和灵活性,但配置相对复杂,适合需要精细化控制的场景。ufw是 Ubuntu 系统中推荐的防火墙工具,操作简单,适合对防火墙规则有基础需求的用户,尤其适用于个人和小型服务器。这三种方法各有优劣,你可以根据具体的 Linux 发行版和需求选择适合的防火墙配置方式。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1288

Linux下的防火墙

Linux下的防火墙firewalld简介

m0_61344379的博客 2万+

win与linux系统防火墙详解

及优先级关系为firewall-cmd --direct --add-rule > firewall-cmd --add-rich-rule >其他配置(其中firewall-cmd --direct中优先级高的大于低的,同一优先级顺序匹配,firewall-cmd --add-rich-rule中拒绝规则生效)参数priorit为优先级(0最高) 参数args为iptables的语法。--zone= --remove-service=移除指定区域已设置的允许访问的某项服务。

ghx的博客 1682

Linux防火墙详解

防火墙介绍 inux防火墙主要工作在网络层,属于典型的包过滤防火墙。在RHEL中常用的有两种火墙工具iptables和firewalld,但软件本身其实并不具备防火墙功能,他们的作用都是在用户空间中管理和维护规则,只不过规则结构和使用方法不一样罢了,真正利用规则进行过滤是由内核netfilter完成的。 netfilter IP 信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在 Lin

weixin_46971894的博客 2万+

Linux系统iptables防火墙实战指南

3、如果所有的规则中没有明确表明是阻止还是通过这个数据包,也就是没有匹配上规则,则继续向下进行匹配,直到匹配默认规则得到明确的阻止还是通过。1、新增规则,使得本机不能ping通其它主机,其它主机可以ping通本机,本机也可以自己ping通自己,命令如下所示:​​​​​​​。2、如果匹配上了相应的规则,即明确表明是阻止还是通过,此时数据包就不再向下匹配新的规则了。1、防火墙是一层层过滤的,就是按照配置规则的顺序从上到下,从前到后进行过滤的。4、防火墙的默认规则是对应链表的所有规则执行完成后,才会执行的规则。

qq_24442273的博客 953

「分治法」最近点对距离问题

一、问题描述 给定平面S上n个点,找其中的一对点,使得在n个点组成的 所有点对中,该点对间的距离最小。 假设所讨论的点是以标准笛卡儿坐标形式(x, y)给出的。因 此,在两个点Pi =(xi , yi )和Pj =(xj , yj )之间的距离是标准的欧几里德 距离: d = 根号下( x i − x j ) 2 + ( y i − y j )2 二、问题分析 直接用暴力解法很简单,用结构体把每个点的x、y坐标都存下来之后,用一个二重循环即可获得距离的最大值。但是这样做的时间复杂度也达到了O(n的平方)

Laok0413的博客 9645

Linux系统上的防火墙命令

一、防火墙操作 在Linus系统上的防火墙是一种服务。 二、使用步骤 1.引入库 查看防火墙状态 systemctl status firewalld 或者 firewall-cmd --state 暂时关闭防火墙 systemctl stop firewalld 永久关闭防火墙 systemctl disable firewalld 开启防火墙 systemctl start firewalld 开放指定端口 firewall-cmd --zone=pu...

weixin_43780179的博客 7967

西门子RS485自由口通信Modbus RTU 通信协议

部分西门子的RS485模块不能使用西门子自带的Modbus RTU通信指令,需要通过自己拼接、发送、接收和解析报文完成Modbus RTU通信。通过多次尝试完成该功能: #R_TRIG_Instance(CLK := #触发, Q => #触发上升沿); IF #触发上升沿 THEN // 触发后先将读取完成复位 #读写完成 := 0; END_IF; CASE #功能码 OF 1: // 线圈状态读取 ; 2:

qq_20792765的博客 1万+

linux系统防火墙

隔离功能,工作在网络或主机边缘,对进出网络或主机的数据包基于一定的规则检查,并在匹配某规则时由规则定义的行为进行处理的一组功能的组件,基本上的实现都是默 认情况下关闭所有的通过型访问,只开放允许访问的策略,会将希望外网访问的主机放在DMZ (demilitarized zone)网络中。简单理解为是筛选和过滤流量,对需要的流量进行放行,对不需要或者有威胁的流量进行拒绝3.

yunjisuanxietu的博客 1283

【深度学习新浪潮】气候预测模型的研发进展一览(2025年版)

模型类型核心优势适用场景不足ARIMA(统计模型)简单高效、可解释性强短期单变量预测非线性、长时依赖建模差随机森林(机器学习)多特征融合、抗噪声中短期多因素预测空间相关性、时序趋势捕捉弱LSTM(深度学习)长时依赖建模、端到端中长期时序预测物理一致性差、数据需求量大物理知情AI物理规律约束、高可靠性极端天气、长期气候变化模型复杂、计算成本高。

专注:太空算力、AI infra、异构调度、大模型成本工程 523

扣子Coze触发器使用指南:实现工作流定时执行的完整教程

Coze平台触发器功能详解:定时触发器配置指南 摘要:Coze平台的触发器是实现自动化任务的核心组件,其中定时触发器能够按预设时间自动执行工作流。本指南介绍了定时触发器的配置方法,包括每日、每周、每月及Cron表达式等多种时间设置方式,以及如何关联工作流执行具体任务。文章还提供了健身提醒等实用案例,并涵盖了触发器调试、发布及常见问题解决方案。通过合理配置定时触发器,用户可以轻松实现各类自动化任务,如定时发送消息、数据采集等,大幅提升工作效率。

互联网架构师笔记 1913

Linux系统firewalld防火墙实战指南

firewalld防火墙是Centos7系统默认自带的防火墙管理工具,取代了之前的iptables防火墙工具,它工作在网络层,主要功能是管理网络连接和防止未经授权的访问。例如,当一个新的网络接口被添加到系统中时,firewalld可以接收到相关的通知,并自动更新防火墙规则以适应新的网络环境。firewalld和liptables都是用来管理防火墙的工具(属于用户态),它们都可以用来定义防火墙的各种规则功能,内部结构都指向netfiter网络过滤子系统(属于内核态),从而实现包过滤防火墙功能。

qq_24442273的博客 1192

基于STM32L4XX、HAL库的ICP-10111压力传感器驱动程序设计

define ICP10111_CMD_MEAS_ULN 0x7866 // 超低噪声模式。#define ICP10111_CMD_MEAS_LP 0x609C // 低功耗模式。#define ICP10111_CMD_MEAS_LN 0x70DF // 低噪声模式。#define ICP10111_CMD_MEAS_N 0x6825 // 正常模式。ICP10111_MODE_LN, // 低噪声。// 等待测量完成(根据模式不同等待时间不同)

zhusl6688的博客 409

Linux 系统下防火墙配置的详细指南

Linux 系统下防火墙配置的详细指南,涵盖 iptables、ufw、firewalld 等主流工具的使用方法和实战场景!

独坐一隅,凝神遐想,是种幸福! —— 独隅 4065

22h2版本的win10安装Docker Desktop时页面空白

摘要:Windows10 22H2系统重装Docker时出现安装界面卡死问题,通过管理员CMD执行静默安装命令解决。命令指定了WSL-2后端及多个自定义数据存储路径(安装目录、Hyper-V数据、Windows容器数据、WSL数据),安装需等待几分钟。最终验证安装成功。

猿小白的博客 633

Open3D 可视化(1)——简单可视化【2026最新版】

简单可视化,博客长期更新,本文最新更新时间为:2026年5月10日。

点云侠的博客 5676

linux系统---防火墙

隔离功能,工作在网络或主机边缘,对进出网络或主机的数据包基于一定的规则检查,并在匹配某规则时由规则定义的行为进行处理的一组功能的组件,基本上的实现都是默 认情况下关闭所有的通过型访问,只开放允许访问的策略,会将希望外网访问的主机放在DMZ (demilitarized zone)网络中。简单理解为是筛选和过滤流量,对需要的流量进行放行,对不需要或者有威胁的流量进行拒绝由软件包iptables提供的命令行工具,工作在用户空间,用来编写规则,写好的规则被送往netfilter,告诉内核如何去处理信息包。

zk584715834的博客 3035

内容创作全流程自动化:OpenClaw+大模型搞定选题+写稿+多平台发布

本文介绍了一套基于OpenClaw的全自动化内容创作流水线方案,帮助垂直领域创作者摆脱重复劳动。该方案将内容生产拆解为选题生成、内容撰写、格式适配、多平台发布四个模块,通过工作流引擎串联执行。系统能自动采集热榜生成选题、调用大模型撰写结构化内容、适配不同平台格式要求,并通过API+浏览器自动化实现多平台发布,全程只需人工最终审核。作者分享了各模块的实现细节,包括热榜采集、内容结构化生成、Markdown转换和发布策略,并提供了工作流编排方法。这套方案能为创作者每天节省约3小时,同时保证内容质量和发布效率。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 48

Linux系统中iptables防火墙

在网络安全愈发重要的今天,Linux系统凭借其稳定性和强大的功能,在服务器领域广泛应用。iptables作为Linux系统中一款关键的防火墙工具,能有效保护服务器免受恶意攻击。通过对iptables防火墙的深入学习,我们了解了它与netfilter的关系,掌握了iptables的表、链结构和数据包过滤匹配流程,还学会了如何编写和管理防火墙规则。在实际应用中,我们可以根据不同的网络环境和安全需求,灵活配置iptables规则,为Linux系统构建一道坚固的网络安全防线。

2503_91100205的博客 646

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Linux系统防火墙设置

在计算机网络中,防火墙的作用类似,它负责监控和控制进出你电脑或网络系统的数据流,确保未经授权的访问者不能进入,同时也防止敏感信息的外泄。实际上,防火墙的配置要复杂得多,包括但不限于设置NAT规则、配置端口转发、定制复杂的过滤规则等等。也就是说,只开放必要的端口和服务,其余的默认拒绝。将进入的默认策略设置为DROP,即拒绝所有进入的连接请求。我这里分享一个包含150G学习资料的免费资料包,里面包含的学习内容、面试经验和项目实例都是比较新的和全面的。,这条命令的意思是允许通过22端口的TCP连接。

2303_78014702的博客 582

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

在linux系统上如何部署防火墙

需要注意的是,配置防火墙时要谨慎操作,确保不会意外阻止必要的服务和连接。在进行重大配置更改之前,最好先测试并备份现有配置。在 Linux 系统中可以使用。

m0_57836225的博客 907

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Linux系统之安全技术与防火墙

由软件包iptables提供的命令行工具,工作在用户空间,用来编写规则,写好的规则被送往netfilter,告诉内核如何去处理信息包①自定义链添加:iptables -N web(链名) 创建链②自定义链改名:iptabels -E web(原来名称) (新名称) 自定义链改名③创建自定义链规则:iptables -t filter -I web -p icmp -j REJECT 创建自定义规则,iptables的链中添加一条对应到自定义链中才能生效。

2502_90917285的博客 805

Linux系统防火墙之iptables

iptables由表、链以及若干规则组成。

ZCQ_dashuaibi的博客 904

Linux系统下的防火墙操作

Linux 7.x系统防火墙操作 查看防火墙的状态:firewall-cmd --state或者使用iptables -L 关闭防火墙:systemctl stop firewalld.service,但是开机之后还会启动防火墙 systemctl disable firewalld.service #禁止firewall开机启动 查看防火墙配置:cat /etc/sysconfig/iptabl...

SileeLiu的博客 298

怎么查看linux系统防火墙,如何查看linux系统中防火墙的状态

如何查看linux系统中防火墙的状态发布时间:2020-04-23 13:52:39来源:亿速云阅读:253作者:小新这篇文章主要为大家详细介绍了如何查看linux系统中防火墙的状态,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。linux防火墙状态查看的方法1、基本操作# 查看防火墙状态service iptables status# 停止防火墙service i...

weixin_33415023的博客 1万+

Linux系统 iptables防火墙

定义:iptables 是 Linux 系统中基于内核netfilter框架的防火墙工具,用于过滤、管理网络数据包。作用:控制进出服务器的流量,实现访问控制、地址转换(NAT)、端口转发等功能。

2403_86763298的博客 1279
上一篇: Linux系统——Shell编程免交互及小命令详解
下一篇: Linux系统安全——iptables相关总结
一坨小橙子ovo
博客等级 码龄3年 3308粉丝 225原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值