当前位置: 首页 > news >正文

在Ubuntu上配置和设置防火墙UFW

在本文我们学习如何在Ubuntu上配置和设置UFW(防火墙),UFW代表“不复杂的防火墙”,它充当IPTABLES的接口,从而简化了防火墙的配置过程,对于防火墙来说,这是非常困难的。初学者学习和配置防火墙规则,在这些规则中,我们将保护计算机免受未知用户的访问。UFW使用我们配置为规则的策略。

需要条件

在计算机上具有root权限的用户。

安装UFW(防火墙)

UFW默认情况下随Ubuntu一起安装,如果未安装,则我们将使用以下命令进行安装

$ sudo apt-get install ufw -y    # 指令# 返回内容
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:ufw
0 upgraded, 1 newly installed, 0 to remove and 88 not upgraded.
Need to get 149 kB of archives.
After this operation, 838 kB of additional disk space will be used.
Get:1 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 ufw all 0.35-0ubuntu2 [149 kB]
Fetched 149 kB in 0s (165 kB/s)
Preconfiguring packages ...
Selecting previously unselected package ufw.
(Reading database ... 98515 files and directories currently installed.)
Preparing to unpack .../ufw_0.35-0ubuntu2_all.deb ..
Unpacking ufw (0.35-0ubuntu2) ...
Processing triggers for systemd (229-4ubuntu10) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up ufw (0.35-0ubuntu2) ...

启用UFW(防火墙)

以下是启用UFW的命令

sudo ufw enable    #指令#返回内容
Command may disrupt existing SSH connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

禁用UFW(防火墙)

 sudo ufw disable

防火墙已停止并在系统启动时关闭了

启用默认策略

作为初学者,我们将首先配置默认策略,该策略控制和处理与其他规则不匹配的流量。默认情况下,规则将拒绝所有传入连接,并允许所有传出连接,这将阻止试图从互联网世界访问计算机的人。

$ sudo ufw default deny incoming              #指令# 返回内容
Default incoming policy changed to 'deny'
(be sure to update your rules accordingly)$ sudo ufw default allow outgoing              #指令# 返回内容
Default outgoing policy changed to 'allow'
(be sure to update your rules accordingly)

启用SSH连接

使用上面的命令,我们禁用了所有传入连接,它将拒绝所有传入连接,我们需要创建一个规则来明确允许SSH传入连接。

以下是启用SSH传入连接的命令。

$ sudo ufw allow ssh       #指令# 返回内容
Rule added
Rule added (v6)

使用上面的命令,将允许端口22进行传入连接。我们可以使用22号端口直接使用以下命令来允许SSH连接。

$ sudo ufw allow 22          # 指令#返回内容
Skipping adding existing rule
Skipping adding existing rule (v6)

但是,如果我们已将SSH守护程序配置为使用其他端口(例如2022或1022),则可以使用以下命令

$ sudo ufw allow 1022     #指令#返回内容
Rule added
Rule added (v6)

检查UFW(防火墙)状态

以下是检查防火墙规则当前状态的命令。

$ sudo ufw status                 #指令# 返回内容
Status: active
To             Action          From
--             ------          ----
22             ALLOW          Anywhere
2222           DENY           Anywhere
1022           ALLOW          Anywhere
22 (v6)        ALLOW          Anywhere (v6)
2222 (v6)      DENY           Anywhere (v6)
1022 (v6)      ALLOW          Anywhere (v6)

为常规端口(如HTTP,HTTPS和FTP)启用UFW

此时,我们将允许其他人分别通过常规端口(例如HTPP,HTTPS和FTP端口)连接到服务器。

HTTP端口80

$ sudo ufw allow 80   #指令#返回内容
Rule added
Rule added (v6)

我们可以使用以下命令检查UFW(防火墙)状态

$ sudo ufw status       #指令#返回内容
Status: active
To             Action          From
--             ------          ----
22             ALLOW          Anywhere
2222           DENY           Anywhere
1022           ALLOW          Anywhere
80             ALLOW          Anywhere
22 (v6)        ALLOW          Anywhere (v6)
2222 (v6)      DENY           Anywhere (v6)
1022 (v6)      ALLOW          Anywhere (v6)
80 (v6)        ALLOW          Anywhere (v6)

这样,将使用以下命令分别启用HTTPs和FTP端口(443和21)。

$ sudo ufw allow https    # 指令# 返回内容
Rule added
Rule added (v6)$ sudo ufw allow ftp   # 指令# 返回内容
Rule added
Rule added (v6)

启用允许特定范围的端口

我们还可以使用UFW允许或拒绝特定范围的端口,以允许多个端口而不是单个端口。

以下是启用特定范围端口的命令。

$ sudo ufw allow 500:800/tcp    #指令#返回内容
Rule added
Rule added (v6)

启用以允许特定的IP地址

如果我们要允许一台特定的机器允许所有端口。我们可以使用以下命令。

$ sudo ufw allow from 192.168.100.1       #指令# 返回内容
Rule added

如果我们只允许特定端口,则可以使用以下命令。

$ sudo ufw allow from 192.168.100.1 to any port 8080    #指令#返回内容
Rule added

如果要启用特定子网,例如要为办公网络启用,可以使用以下命令。

$ sudo ufw allow from 192.168.0.0/24         #指令#返回内容
Rule added

拒绝连接或规则

如果我们要拒绝任何端口或网络,可以使用以下命令拒绝连接。

$ sudo ufw deny http   #指令#返回内容
Rule updated
Rule updated (v6)

如果要拒绝来自特定网络的所有连接,可以使用以下命令。

$ sudo ufw deny from 192.168.2.1           #指令#返回内容
Rule added

删除规则

我们可以通过两种方式删除规则,一种是使用实际规则,另一种是使用规则编号。

实际规则

可以使用我们使用allow命令允许的实际规则删除规则。

以下是从UFW删除HTTP规则的命令。

$ sudo ufw delete allow http          # 指令#返回内容
Rule deleted
Rule deleted (v6)

规则编号

们可以使用“规则”编号删除防火墙规则,可以使用以下命令获取防火墙规则的列表。

$ sudo ufw status numbered         #指令#返回内容
Status: active
To                      Action             From
--                      ------             ----
[ 1] 2222               DENY IN            Anywhere
[ 2] 1022               ALLOW IN           Anywhere
[ 3] 443                ALLOW IN           Anywhere
[ 4] 21/tcp             ALLOW IN           Anywhere
[ 5] 500:800/tcp        ALLOW IN           Anywhere
[ 6] Anywhere           ALLOW IN           192.168.100.1
[ 7] 8080               ALLOW IN           192.168.100.1
[ 8] Anywhere           ALLOW IN           192.168.0.0/24
[ 9] Anywhere           DENY IN            192.168.2.1
[10] 2222 (v6)          DENY IN            Anywhere (v6)
[11] 1022 (v6)          ALLOW IN           Anywhere (v6)
[12] 443 (v6)           ALLOW IN           Anywhere (v6)
[13] 21/tcp (v6)        ALLOW IN           Anywhere (v6)
[14] 500:800/tcp (v6)   ALLOW IN           Anywhere (v6)

如果要删除规则14,则可以使用以下命令通过以下命令删除规则。

$ sudo ufw delete 14             #指令#返回内容
Deleting:
allow 500:800/tcp
Proceed with operation (y|n)? y
Rule deleted (v6)

在本文中,我们了解了–如何安装,启用和禁用UFW防火墙。此外,我们还将学习如何允许,拒绝和删除规则,这些规则将使我们能够保护服务器安全。

相关文章:

在Ubuntu上配置和设置防火墙UFW

在本文我们学习如何在Ubuntu上配置和设置UFW(防火墙),UFW代表“不复杂的防火墙”,它充当IPTABLES的接口,从而简化了防火墙的配置过程,对于防火墙来说,这是非常困难的。初学者学习和配置防火墙规…...

nginx安装环境部署(完整步骤)

在部署nginx前,我们需要进行环境的部署 1.编译工具gcc,g,autoconf,automake ,make sudo apt-get install gcc g autoconf automake make 2.依赖库zlib,openssl,pcre 2.1 openssl下载地址 https://www.open…...

如何做电子骑缝章?

制作电子骑缝章的过程可以依据不同情况和所使用的工具而有所不同,但基本思路是确保印章能够跨过页面接缝,以验证文档的完整性。以下是几种常见的方法: 使用专业电子合同平台 选择平台:首先,确保你使用的电子合同平台…...

2024.6.13 bailuo-Docker 安装与镜像拉取

2024.6.13 bailuo-Docker 安装与镜像拉取 2024.6.12 bailuo-安装与镜像拉取 卸载 Docker 如果已安装旧版 Docker 则先卸载 yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-en…...

【Java开发规范】IDEA 设置 text file encoding 为 UTF-8,且文件的换行符使用 Unix 格式

1. IDEA 设置 text file encoding 为 UTF-8 file -> settings -> editor -> code style -> file encoding Transparent-native-to-asci conversion 要不要勾选?> 不推荐勾选(它的作用是用来自动转换ASCII编码,防止文件乱码&am…...

使用`LD_PRELOAD`和`jemalloc`实现C/C++信号的内存堆栈信息收集

文章目录 0. 概要1. 编译jemalloc2. 编译钩子共享库liballoc_hook.so3. 使用LD_PRELOAD加载钩子库liballoc_hook.so测试3.1 设置环境变量3.2 使用LD_PRELOAD加载钩子库并运行程序3.3 发送SIGUSR1信号以触发堆栈信息打印3.4 使用jeprof解析heap堆栈信息文件 4. 示例程序example.…...

计算机组成原理(四)Cache存储器

文章目录 Cache存储器的基本原理cache命中率、平均访问时间、效率地址映射全相联映射直接映射组相联映射 查找算法cache 存储器替换策略cache 存储器-写操作策略习题 Cache存储器的基本原理 Cache是一种高速缓冲寄存器,是为了解决CPU和主存之间速度不匹配而采用的一…...

怎么做成的文件二维码?扫阅览文件的制作方法

现在用二维码来分享或者查看文件是一种很常用的方式,比如常见的文件内容有简历、资料、作品、压缩包等等。通过将文件生成二维码能够在提升文件传输速度的同时还有利于用户体验的提升,那么如何制作可以长期提供文件预览或者下载的二维码呢? …...

js 前端 Function.prototype.call.call(0[‘toString‘], *, 16)

这个函数将 数组转任意进制 Function.prototype.call.call(0[toString], *, 16)...

李沐:用随机梯度下降来优化人生!

大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 今天我们来聊聊达叔 6 大核心算法之 —— 优化 算法。吴恩达:机器学习的六个核心算法! 梯度下降优化算法是机器…...

Linux 环境.Net程序堆栈查询

# 安装 dotnet tool install --global dotnet-dump# 收集信息, 产生 core_XXX 文件 dotnet-dump collect -p pid# 分析 core_XXX 文件 dotnet dump analyze core_XXX# 列出 大于 XXX 字节的 对象 dumpheap -stat -min XXX# 查看对象具体信息 dumpobj address_XXX# 查看对应引用…...

志愿服务管理系统的设计

管理员账户功能包括:系统首页,个人中心,管理员管理,基础数据管理,广场论坛管理,志愿活动管理,活动报名管理 前台账户功能包括:系统首页,个人中心,志愿活动&a…...

微信小游戏5月畅销榜,新老产品更替显著,亿级爆款频出

小游戏由于微信的平台扶持,被视为可以大力发掘的蓝海,成为国内游戏最大的增长机会之一,随着越来越多的大厂和中小厂转向了小游戏赛道,每个月的小游戏畅销榜单都有不同变化。 5月的小游戏畅销榜显示,小游戏市场正经历显…...

自己想要公开自己的学习方法,但是自己很害怕自己的学习方法是一个错误的,因为对于自己而言,专升本的机会只有一次

分享自己的学习方法可能需要一定的勇气,特别是当你担心可能会受到批评或是不被理解时。以下是一些建议,可以帮助你克服这种恐惧:(kimi编辑器自己对于这些内容的基础批注) 自我肯定:首先,认识到你…...

linux centos consul1.15.2一键安装部署

consul原理、作用、安装相关内容 一、理论部分二、安装下载版本地址三、安装consul服务 一、理论部分 1、consul的原理 Consul的原理及作用可以归纳为以下几点: ①、基于Gossip协议的通信:Consul使用了基于Gossip协议的Serf实现来进行通信。 Gossip协议…...

速盾:dns和cdn区别?

DNS(Domain Name System)和CDN(Content Delivery Network)是互联网中两个不同但相互关联的服务。下面将详细解释DNS和CDN的区别。 功能和作用: DNS:DNS是将域名转换为IP地址的服务,它充当着互联…...

多目标跟踪中用到的求解线性分配问题(Linear Assignment Problem,LAP)C++

多目标跟踪中用到的求解线性分配问题&#xff08;Linear Assignment Problem&#xff0c;LAP&#xff09;C flyfish python实现,说的比这里详细 lapjv.h和lapjv.cpp代码在https://github.com/shaoshengsong/DeepSORT C代码调用 #include <iostream> #include <ve…...

Unity | Shader基础知识(第十四集:简单效果练习)

目录 前言 一、效果预览 1.弧形边缘光 二、效果制作 1. 制作弧形边缘光 2.弧形边缘光进阶 3.弧形边缘光调节渐变范围 4.边缘光突变 5.同心圆 三、加入世界坐标做效果 1.绘制结界 2.斑马球 3.效果合并 四、作者的碎碎念 前言 有粉丝建议说&#xff0c;让我继续更新…...

Vue48-ref属性

一、需求&#xff1a;操作DOM元素 1-1、使用原生的id属性 不太好&#xff01; 1-2、使用 ref属性 原生HTML中&#xff0c;用id属性给元素打标识&#xff0c;vue里面用ref属性。 给哪个元素加了ref属性&#xff0c;vc实例对象就收集哪个元素&#xff01;&#xff01;&#xff0…...

【SpringCloud学习笔记】RabbitMQ(中)

1. 交换机概述 前面《RabbitMQ上篇》我们使用SpringAMQP来演示如何用Java代码操作RabbitMQ&#xff0c;当时采用的是生产者直接将消息发布给队列&#xff0c;但是实际开发中不建议这么做&#xff0c;更加推荐生产者将消息发布到交换机(exchange)&#xff0c;然后由exchange路由…...

当点云遇上核技巧:一文搞懂K-PCA为何能处理非线性数据(附Sklearn对比实验)

当点云遇上核技巧&#xff1a;一文搞懂K-PCA为何能处理非线性数据&#xff08;附Sklearn对比实验&#xff09; 想象你手中握着一团缠绕的毛线——在三维空间里它呈现出复杂的螺旋结构。如果强行用平面镜去照射这个物体&#xff0c;得到的投影永远是一团混乱的线条。这正是线性P…...

PARD-SSM:基于概率状态空间模型的多阶段网络攻击检测

1. 项目概述在网络安全领域&#xff0c;传统的入侵检测系统(IDS)面临着多阶段攻击检测的严峻挑战。攻击者通常会按照"攻击链"(Kill Chain)的步骤逐步渗透系统&#xff0c;从最初的侦察阶段到最终的数据窃取&#xff0c;每个阶段的网络流量特征可能单独看起来都像是正…...

Unitree GO2 ROS2 SDK完整指南:5步实现四足机器人智能控制与自主导航

Unitree GO2 ROS2 SDK完整指南&#xff1a;5步实现四足机器人智能控制与自主导航 【免费下载链接】go2_ros2_sdk Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU 项目地址: https://gitcode.com/gh_mirrors/go/go2_ros2_sdk Unitree GO2 ROS2 SDK为四足机器人…...

别再为PPT发愁了!用LaTeX的Beamer模板,5分钟搞定一份专业学术报告(附Overleaf/TeXstudio中文配置)

用LaTeX Beamer打造学术级演示文稿&#xff1a;从零开始的中文解决方案 第一次参加学术会议时&#xff0c;我看着自己用传统幻灯片工具制作的演示文稿&#xff0c;突然意识到那些花哨的过渡动画和艺术字体在严肃的学术场合显得格格不入。周围的教授们展示的都是简洁优雅的数学…...

基于Python的分布式抖音内容下载引擎:架构解析与技术实现

基于Python的分布式抖音内容下载引擎&#xff1a;架构解析与技术实现 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback su…...

Blender 3MF插件:打破3D打印工作流的终极瓶颈

Blender 3MF插件&#xff1a;打破3D打印工作流的终极瓶颈 【免费下载链接】Blender3mfFormat Blender add-on to import/export 3MF files 项目地址: https://gitcode.com/gh_mirrors/bl/Blender3mfFormat 你是否曾在3D打印项目中遇到过这样的困境&#xff1f;精心设计的…...

英文论文降AI教程:从97%到8%,2026实测的4种文本结构级优化方法

大家最近都在为英文降aigc率发愁吧&#xff0c;作为研三党&#xff0c;我太懂这种痛了&#xff0c;之前我自己写英文初稿&#xff0c;写完直接拿去查重&#xff0c;结果turnitin检测ai率飙到了89%&#xff0c;当时看着报告整个人都懵了。 怎么给英文降ai&#xff1f;对于非母语…...

AI心智理论评估:VLM意图理解接近人类,但视角采样能力存在瓶颈

1. 项目概述&#xff1a;当AI“读懂”人心时&#xff0c;它在想什么&#xff1f;在人工智能领域&#xff0c;有一个听起来颇具哲学意味的挑战&#xff1a;如何让机器理解“心智”&#xff1f;这不仅仅是让AI识别图像中的物体或生成流畅的文本&#xff0c;而是让它能够像人类一样…...

ARM虚拟化关键寄存器HIFAR与HMAIR详解

1. ARM架构中的HIFAR与HMAIR寄存器概述 在ARMv7和ARMv8架构的虚拟化扩展中&#xff0c;Hyp模式&#xff08;即EL2&#xff09;提供了一套完整的系统寄存器来支持虚拟化功能。其中HIFAR&#xff08;Hyp Instruction Fault Address Register&#xff09;和HMAIR&#xff08;Hyp M…...

以太网技术演进:从局域网到万物互联的生态系统

1. 以太网的“身份危机”&#xff1a;它到底是什么&#xff1f;在技术圈里混了十几年&#xff0c;我经常遇到一个有趣的现象&#xff1a;大家天天都在用“以太网”&#xff0c;但真要问一句“以太网到底是什么&#xff1f;”&#xff0c;会议室里能瞬间安静下来。这感觉就像你天…...