如何在操作使用ufw设置防火墙

UFW(简单防火墙)是用于管理iptables防火墙规则的用户友好型前端。它的主要目标是使iptables的管理更容易。

在学习Linux的时候大家一般都会关心命令,Posix API和桌面等,很少会去了解防护墙。其实除了一些网络安全厂商提供的付费防火墙,Debian系的Linux发新版本省就自带了UFW防火墙。

安装UFW

在Debian中默认没有安装UFW,但是Ubuntu是默认安装了的,我们可以先安装一下:

sudo apt update
sudo apt install ufw

UFW工作状态

sudo ufw status verbose

终端输出结果:

这个说明防火墙是激活状态。

UFW默认策略

默认情况下,UFW阻止所有入站连接并允许所有出站连接。除非您专门打开端口,否则尝试访问您的服务器的任何人将无法连接,但服务器上运行的应用程序和服务将能够访问外界。

缺省策略在/etc/default/ufw文件中定义,可以使用sudo ufw default <policy> <chain>命令更改。

UFW配置

大多数应用程序附带一个描述服务的应用程序配置文件,并包含UFW设置。在软件包安装过程中,将在/etc/ufw/applications.d目录中自动创建配置文件。

sudo ufw app list

这个命令可以输出配置的应用:

要查找有关特定配置文件和包含的规则的更多信息,可以使用app info命令,后跟配置文件名称。例如,要获取有关Samba配置文件的信息,可以使用:

sudo ufw app info Samba

启用和关闭UFW

  • 启用UFW
sudo ufw enable
  • 关闭UFW
sudo ufw disable

端口操作

根据服务器上运行的应用程序,您需要打开运行服务的端口,,可以参考以下示例:

  • 开启http服务需要的80端口:
sudo ufw allow http
  • 可以使用端口号80代替http配置文件:
sudo ufw allow 80/tcp
  • 开启https服务需要端口:
sudo ufw allow https
  • 可以使用端口号443代替https配置文件:
sudo ufw allow 443/tcp
  • 开启tomcat默认使用的8080端口:
sudo ufw allow 8080/tcp
  • 除了单独开启服务及端口外,还可以通过命令以端口范围的方式开启端口。

例如,我们要允许8090到9090之间的端口都允许tcp/udp访问,我们可以通过以下命令解决。

sudo ufw allow 8090:9090/tcp
sudo ufw allow 8090:9090/udp
  • 允许特定的IP地址

要允许从特定IP地址访问所有端口,可以使用ufw allow from命令,后跟IP地址。命令如下:

sudo ufw allow from 115.127.62.61

当然也可以允许特定IP访问前提条件下,允许其访问特定端口,命令如下:

sudo ufw allow from 115.127.62.61 to any port 22
  • 允许子网

允许从IP地址的子网进行连接的命令与使用单个IP地址时的命令相同。唯一的区别是您需要指定网络掩码。例如,如果要允许访问从192.168.1.1到192.168.1.254的IP地址到端口3360(MySQL),则可以使用以下命令:

sudo ufw allow from 192.168.1.0/24 to any port 3306
  • 允许连接到特定的网络接口

要允许访问特定端口,假设仅将3360端口访问特定网络接口eth2,可以使用allow in on和网络接口名称:

sudo ufw allow in on eth2 to any port 3306

拒绝连接

所有传入连接的默认策略都设置为“拒绝”,这意味着除非你专门打开该连接,否则UFW将阻止所有传入连接。

假设您打开了端口80和443,并且服务器受到23.24.25.0/24网络的攻击。要拒绝来自23.24.25.0/24的所有连接,可以使用以下命令:

sudo ufw deny from 23.24.25.0/24
  • 如果只想拒绝从23.24.25.0/24访问端口80和443,请使用:
sudo ufw deny from 23.24.25.0/24 to any port 80
sudo ufw deny from 23.24.25.0/24 to any port 443

编写拒绝规则与编写允许规则相同。您只需要将allow替换为deny即可。

重置UFW

sudo ufw reset

删除UFW规则

按照规则编号删除规则

  1. 查看规则编号

    sudo ufw status numbered
    

  2. 删除规则

    # sudo ufw delete (规则编号)
    sudo ufw delete 3
    

开放SSH连接

将UFW配置为接收SSH连接,可以运行:

sudo ufw allow OpenSSH
  • 如果你的SSH端口不是22,假设是100,则需要手动放心端口:
sudo ufw allow 100/tcp

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

大疆2025校招内推

需要内推码的请留言哦 期待你的加入

【你真的了解double和float吗】

&#x1f308;个人主页&#xff1a;努力学编程’ ⛅个人推荐&#xff1a;基于java提供的ArrayList实现的扑克牌游戏 |C贪吃蛇详解 ⚡学好数据结构&#xff0c;刷题刻不容缓&#xff1a;点击一起刷题 &#x1f319;心灵鸡汤&#xff1a;总有人要赢&#xff0c;为什么不能是我呢 …

2024亚洲国际餐饮展览会(北京餐饮展|火锅展|预制菜展会)

2024北京餐饮展会&#xff0c;2024北京食材展会&#xff0c;2024北京火锅展会&#xff0c;2024北京火锅食材展会&#xff0c;2024北京预制菜展会&#xff0c;2024北京预制食材展会&#xff0c; 2024亚洲国际餐饮展览会&#xff08;北京餐饮展|火锅展|预制菜展会&#xff09; …

Linux Rsyslog+LogAnalyzer+MariaDB部署日志服务器

文章目录 Linux RsyslogLogAnalyzerMariaDB部署日志服务器1 环境准备1.1 服务器端安装LAMP环境1.2 服务启动并加入开机启动1.2.1 Apache1.2.2 MariaDB1.2.3 Php 2 Rsyslog服务端安装及配置2.1 安装Rsyslog及Rsyslog连接MySQL的模块2.2 导入rsyslog-mysql数据库文件2.3 查看刚导…

【高校科研前沿】南京地理与湖泊研究所博士后夏凡为第一作者在环境科学与水资源领域Top期刊发文:钙对云南洱海溶解有机质与浮游细菌相互作用的调控作用

文章简介 论文名称&#xff1a;Calcium regulates the interactions between dissolved organic matter and planktonic bacteria in Erhai Lake, Yunnan Province, China 第一作者及单位&#xff1a;夏凡&#xff08;博士后|中国科学院南京地理与湖泊研究所&#xff09; 通讯…

Build a Large Language Model (From Scratch)附录C(gpt-4o翻译版)

来源&#xff1a;https://github.com/rasbt/LLMs-from-scratch?tabreadme-ov-file https://www.manning.com/books/build-a-large-language-model-from-scratch

C++初学者指南-3.自定义类型(第一部分)-类和基本自定义类型

C初学者指南-3.自定义类型(第一部分)-类和基本自定义类型 文章目录 C初学者指南-3.自定义类型(第一部分)-类和基本自定义类型1.类型种类&#xff08;简化&#xff09;2.为什么选择自定义类型&#xff1f;单向计数器提升序列 3.限制成员访问成员函数公共(public) vs. 私有(priva…

firewalld(7)NAT、端口转发

简介 在前面的文章中已经介绍了firewalld了zone、rich rule等规则设置&#xff0c;并且在iptables的文章中我们介绍了网络防火墙、还有iptables的target,包括SNAT、DNAT、MASQUERADE、REDIRECT的原理和配置。那么在这篇文章中&#xff0c;将继续介绍在firewalld中的NAT的相关配…

cpp随笔——如何实现一个简单的进程心跳功能

什么是进程的心跳 在我们日常后台服务程序运行中,一般是调度模块&#xff0c;进程心跳以及进程监控共同工作&#xff0c;进而实现实现服务的稳定运行,在前面我们介绍过如何去实现一个简单的调度模块,而今天我们所要介绍的就是如何实现进程的心跳&#xff0c;首先什么是进程的心…

MCU中如何利用串口通信,增加AT指令框架

第一步&#xff0c;通过串口与PC端建立通信第二步&#xff0c;根据PC端发来的AT指令&#xff0c;MCU执行相应代码 主要是解析PC端发来的字符串&#xff0c;也就是获取字符串、处理字符串、以及分析字符串。 1. 串口通信 用到的是DMA串口通信&#xff0c;收发字符串数据时&…

什么是JavaScript中的箭头函数(arrow functions)?

聚沙成塔每天进步一点点 本文回顾 ⭐ 专栏简介什么是JavaScript中的箭头函数&#xff08;arrow functions&#xff09;&#xff1f;1. 引言2. 箭头函数的语法2.1 基本语法2.2 示例 3. 箭头函数的特点3.1 简洁的语法3.2 没有this绑定3.3 不能用作构造函数3.4 没有arguments对象3…

基于SpringBoot的就业信息管理系统

你好&#xff0c;我是计算机学姐码农小野&#xff01;如果你对就业信息管理系统感兴趣或有相关需求&#xff0c;欢迎私信联系我。 开发语言&#xff1a; Java 数据库&#xff1a; MySQL 技术&#xff1a; SpringBootMySql 工具&#xff1a; MyEclipse、Tomcat 系统展示…

隐私信息管理体系认证:守护个人信息,筑牢隐私防线

在数字化浪潮汹涌的当下&#xff0c;个人信息安全问题愈发凸显其重要性。随着互联网技术的飞速发展&#xff0c;我们的隐私信息如同裸露在阳光下的沙滩&#xff0c;稍有不慎就可能被不法分子窃取或滥用。因此&#xff0c;构建一个完善的隐私信息管理体系&#xff0c;成为了保障…

结合数据索引结构看SQL的真实执行过程

引言 关于数据库设计与优化的前几篇文章中&#xff0c;我们提到了数据库设计优化应该遵守的指导原则、数据库底层的索引组织结构、数据库的核心功能组件以及SQL的解析、编译等。这些其实都是在为SQL的优化、执行的理解打基础。 今天这篇文章&#xff0c;我们以MySQL中InnoDB存…

软件测评机构:关于软件验收测试作用与实施步骤全解析

软件验收测试是指在软件项目交付给用户之前进行的一系列测试活动&#xff0c;其主要目的是验证软件是否符合用户需求和设计规范&#xff0c;以确保软件的质量和稳定性。 软件验收测试在软件开发生命周期的最后阶段进行&#xff0c;起到了至关重要的作用。它能够帮助客户确认软…

AI PC(智能电脑)技术分析

一文看懂AI PC&#xff08;智能电脑&#xff09; 2024年&#xff0c;英特尔、英伟达等芯片巨头革新CPU技术&#xff0c;融入AI算力&#xff0c;为传统PC带来质的飞跃&#xff0c;引领智能计算新时代。 2024年&#xff0c;因此被叫作人工智能电脑&#xff08;AI PC&#xff09;…

【elementui】记录解决el-tree开启show-checkbox后,勾选一个叶结点后会自动折叠的现象

第一种解决方案&#xff1a;设置default-expand-keys的值为当前选中的key值即可 <el-treeref"tree"class"checkboxSelect-wrap":data"treeData"show-checkboxnode-key"id":expand-on-click-node"true":props"defau…

MATLAB——循环语句

一、for end语句 在该语法中&#xff0c;循环变量是用于迭代的变量名&#xff0c;它会在每次循环迭代中从向量或矩阵中取出一列的值。数值向量或者矩阵则表示了循环变量可以取值的范围&#xff0c;通常根据实际需要事先给定。一旦循环变量遍历完数值向量或者矩阵中的所有值&…

初试成绩占比百分之70!计算机专硕均分340+!华中师范大学计算机考研考情分析!

华中师范大学&#xff08;Central China Normal University&#xff09;简称“华中师大”或“华大”&#xff0c;位于湖北省会武汉&#xff0c;是中华人民共和国教育部直属重点综合性师范大学&#xff0c;国家“211工程”、“985工程优势学科创新平台”重点建设院校&#xff0c…