ubuntu ufw 配置
ubuntu ufw 配置
Ubuntu 18.04 LTS 系统中已经默认附带了 UFW 工具,如果您的系统中没有安装,可以在「终端」中执行如下命令进行安装:
1
|
sudo apt install ufw |
检查UFW状态
1
|
sudo ufw status verbose |
无论您使用的是 Ubuntu 18.04 系统附带还是刚手动安装的 UFW,默认都是禁用状态,所以输出是「不活动」
UFW默认策略
防火墙策略是构建用户自定义规则的基础,在绝大多数情况下,初始的 UFW 默认策略就是一个很好的起点。
而默认情况下,UFW 将阻止所有传入连接并允许所有传出连接。也就是说,除非您专门打开特定端口,否则任何尝试访问您的服务器的人都无法连接,但服务器上运行的应用程序和服务却能够对外访问。
UFW 默认策略在 /etc/default/ufw 文件中进行定义,可以使用 sudo ufw default 命令对策略进行更改。
打开80端口——HTTP
1
|
sudo ufw allow http |
也可以直接指定端口号 80:
1
|
sudo ufw allow 80 /tcp |
打开443端口——HTTPS
1
|
sudo ufw allow https |
也可以直接指定端口号 443:
1
|
sudo ufw allow 443 /tcp |
允许端口范围
在使用 UFW 的端口范围时,必需指定 tcp 或 udp 协议。例如,要开启服务器上 7100 到 7200 的 tcp 和 udp 端口,可以运行以下命令:
1
2
|
sudo ufw allow 7100 : 7200 /tcp sudo ufw allow 7100 : 7200 /udp |
允许特定IP地址
1
|
sudo ufw allow from 123.123 . 123.123 |
允许子网
如果要允许特定子网范围的计算机对服务器某个端口的访问,例如:允许从 192.168.1.1 到 192.168.1.254 网段到服务器 3306(MySQL)端口的访问,可以执行如下命令:
1
|
sudo ufw allow from 192.168 . 1.0 / 24 to any port 3306 |
拒绝连接
前面已经介绍过,传入连接的默认策略都被设置为拒绝。假设您打开了 80 和 443 端口,而服务器又受到来自 23.34.45.0/24 的攻击,可以通过如下命令拒绝该网络的所有连接:
1
|
sudo ufw deny from 23.34 . 45.0 / 24 |
如果只想拒绝访问 80 和 443 端口,则可以使用以下命令:
1
2
|
sudo ufw deny from 23.34 . 45.0 / 24 to any port 80 sudo ufw deny from 23.34 . 45.0 / 24 to any port 443 |
编写拒绝规则与编写允许规则相同,您只需要将 allow 替换为 deny 就行
删除UFW策略
对新手用户而言,通过规则编号来删除特定规则比较好,不过在此之前需要先用命令列出规则编号的数字:
1
|
sudo ufw status numbered |
例如要删除开放 8080 端口的规则 4 可以使用如下命令:
1
|
sudo ufw delete 4 |
例如要删除打开8069 端口的规则,可以使用如下命令:
1
|
sudo ufw delete allow 8069 |
禁用UFW
1
|
sudo ufw disable |
重置UFW
1
|
sudo ufw reset |
================ End
ubuntu ufw 配置的更多相关文章
- Linux之防火墙管理篇[Ubuntu:ufw]
前言 由于近期,腾讯云服务器就要到期了,学生优惠即将失效了,所以准备将数据库和项目迁移到vultr上.然而,在使用nivicat连接mysql数据库的过程中,却屡次出现:Can't connect t ...
- 《一个操作系统的实现》 ubuntu系统环境配置
<一个操作系统的实现> ubuntu系统环境配置 电脑之前已经安装了gcc. 一.nasm安装:sudo apt-get install nasm或官网下载http://sourcefor ...
- Ubuntu中配置Java环境变量时,出现command not found问题解决记录
百度出Ubuntu中配置Java环境变量时,在利用sudo gedit /etc/profile 对profile编辑后, 在terminal中输入 sudo source /etc/profile, ...
- Ubuntu下配置python完成爬虫任务(笔记一)
Ubuntu下配置python完成爬虫任务(笔记一) 目标: 作为一个.NET汪,是时候去学习一下Linux下的操作了.为此选择了python来边学习Linux,边学python,熟能生巧嘛. 前期目 ...
- SecureCRT连接虚拟机(ubuntu)配置
使用SecureCRT连接虚拟机(ubuntu)配置记录 这种配置方法,可以非常方便的操作虚拟机里的Linux系统,且让VMware在后台运行,因为有时候我直接在虚拟机里操作会稍微卡顿,或者切换速 ...
- 转[开发环境配置]在Ubuntu下配置舒服的Python开发环境
在Ubuntu下配置舒服的Python开发环境 Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置.下面的是我们团队开发人员推荐的 ...
- Ubuntu下配置L2TP
发现PPTP已经不可用了,不知是不是又被墙了.只能尝试L2TP了. Ubuntu可视化配置界面network-manager默认是没有L2TP配置选项的,需要安装第三方插件软件: sudo apt-a ...
- Ubuntu下配置C/C++开发环境
在 Ubuntu 下配置 C/C++ 开发环境 转自:白巴的临时空间 Submitted by 白巴 on 2009-04-27 19:52:12. 学习笔记 虽然 Ubuntu 的版本已经是9.04 ...
- ubuntu网络配置相关知识(转载)
From:http://os.51cto.com/art/201003/188055.htm 文章主要介绍Ubuntu网络配置,希望能让Linux新手学习参考.更好使用Ubuntu.更有效的学习Ubu ...
随机推荐
- hadoop jps不显示信息
使用kvm做了一个hadoop组件的镜像,使用该镜像启动,在使用jps的时候,没有任何信息显示. 解决: 删除/tmp下的hsper开头文件,哪个用户没有权限就删除对应的hsper**_usernam ...
- SRS之安装与使用
1. 安装 1.1 github 获取源码 git clone https://github.com/ossrs/srs.git 1.2 编译 1.2.1 关闭防火墙和 selinux 先关闭防火墙, ...
- 为什么GPU不能代替CPU?
gpu就是并行处理强大, cpu很多功能gpu都没有. 什么指令流水化, 多进程管理之类的. gpu没有多少自主处理指令的能力, 基本是指令靠cpu 计算靠gpu.GPU工作原理是cpu 处理指令,遇 ...
- mysql实现oracle存储过程默认参数
我们都知道oracle存储过程支持为参数设置默认值,这样即使存储过程升级,原来的调用也可以不受影响.但是mysql不支持,mariadb也没有支持(截止10.4也是如此).但是这一限制会导致升级麻烦重 ...
- 【maven】插件和依赖管理
1.插件管理 定义 pluginManagement 用来做插件管理的.它是表示插件声明,即你在项目中的pluginManagement下声明了插件,Maven不会加载该插件,pluginManage ...
- python自动化测试之连接几组测试包实例
python自动化测试之连接几组测试包实例 本文实例讲述了python自动化测试之连接几组测试包的方法,分享给大家供大家参考.具体方法如下: 具体代码如下: class RomanNumera ...
- php连接mysql8报错如何解决
php版本为5.6,连接mysql8.0时报错,但是连接其他mysql8前的版本是正常的 原因可能是mysql8默认的使用密码认证方式不一样,mysql8.0默认使用caching_sha2_pass ...
- [LeetCode] 77. Combinations 全组合
Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. For exampl ...
- 通过python批量修改mp3名称
下载歌曲软件:音乐狂 下载格式:[xxxx]xxxx.mp3 import osimport re path = 'c:\\test' old_dir = os.listdir(path) print ...
- PHP_MySQL高并发加锁事务处理
1.背景: 现在有这样的需求,插入数据时,判断test表有无username为‘mraz’的数据,无则插入,有则提示“已插入”,目的就是想只插入一条username为‘mraz’的记录. 2.一般程序 ...