稳定互联,中美互联,站长交流,虚拟主机,香港主机,美国主机,虚拟空间,免费空间,免费VPS,免费域名

 找回密码
 立即注册
查看: 1311|回复: 0

UFW 防火墙命令

[复制链接]
发表于 2024-7-21 21:25:53 | 显示全部楼层 |阅读模式
安装ufw
$ c1 v' H& ?: F1 C: f5 a7 Q在 Debian、Ubuntu 或其衍生版本上,打开终端并执行以下命令安装:
# q0 j. k( P; h+ a; o  d0 l" X  D% d5 o0 P! S4 Y& h2 x
# 安装ufw
6 S6 l* H. C. O) \1 ]
  1. sudo apt-get update1 w* r: f) ~4 ?$ f$ a5 G
  2. sudo apt-get install ufw
复制代码

& k% S" U7 r# A; s# 启动ufw+ Q% A4 A1 s; d/ t: V1 A# N
  1. sudo ufw enable
复制代码

2 h% ?# e3 a- m0 y# 设置为开机自启
: I8 _1 L6 q: z1 f' A8 [
  1. sudo systemctl enable ufw
复制代码
- [& G  b: D  @" `
执行sudo ufw status查看当前状态,通常有3种状态:
1 T+ ^& I: |) c( Z1 T
  1. Status: inactive(未启用):表示 UFW 没有启用,防火墙处于关闭状态。
    / P  ^* S2 l2 t
  2. Status: active(已启用):表示 UFW 已经启用,并且防火墙规则正在应用于系统。3 @! M- ~2 p" Q2 m5 G7 g4 N* q. o
  3. Status: inactive (dead)(未启用且未运行):表示 UFW 已被禁用,并且防火墙未在系统中运行。
复制代码

  v7 ^: t* R! H! K( Yufw放行端口
2 D+ @) a& `9 l! b, dufw的命令比firewalld简洁许多,比如你想放行单个端口,只需要执行:, S  P, f: }8 Z  v& J7 G* [
# 将 <port> 替换为你要放行的具体端口号。例如,要放行 TCP 端口 80,可以执行 sudo ufw allow 80。
) Q& q: N! B1 O; w3 t- x
  1. sudo ufw allow <port>
复制代码
如果需要放行特定协议的端口,我们需要加上协议:
( l3 S: X6 l* r% {; X" P! _" G' I& A; n8 m+ \* m% a+ c3 r
# 将 <port> 替换为端口号,<protocol> 替换为协议类型(如 tcp、udp)。例如,要放行 UDP 端口 53,可以执行 sudo ufw allow 53/udp。" d+ k" \. e. H
  1. sudo ufw allow <port>/<protocol>
复制代码
, k) t! C0 A; B7 L0 k! u
放行一个端口范围:
- \3 ^, \* F6 k0 j$ h$ o% q
  1. sudo ufw allow <start-port>:<end-port>/<protocol>
复制代码
将 <start-port> 替换为起始端口号,<end-port> 替换为结束端口号,<protocol>为协议。例如,要放行 TCP 端口范围 8000 到 9000,可以执行
  1. sudo ufw allow 8000:9000/tcp
复制代码
, B- Z4 P# c" Y' n. S9 X( t- o
ufw删除已经放行的规则或端口
  N4 S, ?* D% I要在ufw(Uncomplicated Firewall)中删除已添加的规则,您可以通过规则号或者具体的放行条件来删除。以下是两种方法:
& q6 ^5 V0 e" o0 k1 k$ c8 ~$ k! ~( j
8 y: R+ v9 E. C: _/ Q方法1:通过规则号删除
  m, U  {5 P: O$ @, F5 w4 Q$ G首先,运行以下命令以查看当前ufw的状态和现有规则:+ J( x7 |5 }7 o  W2 Z) ~* C
  1. sudo ufw status numbered
复制代码
, \. `) `, w6 X) v* `
这将显示带有编号的规则列表。
5 O2 e# x. n; V2 o$ T1 t: {( O8 x确定您要删除的规则的编号,然后使用以下命令删除它,将[rule_number]替换为实际的规则编号:! O5 y+ [  s0 G" X' l" o
  1. sudo ufw delete [rule_number]
复制代码

0 [% U1 |3 S: c) i5 L, o: K- _例如,要删除编号为1的规则,运行:
; ~2 S  V" f' x$ F  ?
  1. sudo ufw delete 1
复制代码

& Q/ \8 B6 u2 c0 F. g, v% k. V方法2:通过放行条件删除
$ z2 n9 k4 D$ N' y1 [您还可以通过指定放行条件(例如端口和协议)来删除规则。例如,要删除允许TCP端口80的规则,您可以运行:% ?  M1 K6 _0 m* }; a+ V
  1. sudo ufw delete allow 80/tcp
复制代码

6 P' c) D8 L. l8 p- M或者,如果要删除允许UDP端口5000的规则,您可以运行:
+ |* k: f* y( N4 W
  1. sudo ufw delete allow 5000/udp
复制代码
删除规则后,再次运行sudo ufw status以确认所选规则已从ufw中删除。
+ \, C) k1 B  t+ J9 T% c
/ S$ t  {1 Y. z6 Y/ `/ A: s阻止某个特定的IP
( S6 A' v4 I, V- K5 d( \使用以下命令阻止来自特定IP(例如1.2.3.4)的连接:, d8 t+ r5 _! U2 [* g& d# {$ E0 r
  1. sudo ufw deny from 1.2.3.4
复制代码
8 D) X9 S5 e. ~) P8 j" S
允许特定IP访问特定端口8 n0 t* ?- U: N8 m4 m
使用以下命令允许特定IP访问特定端口。将[ip_address]替换为要允许的实际IP地址,将[port_number]替换为要允许访问的实际端口号,将[protocol]替换为tcp或udp,具体取决于您要放行的协议:
( p, V4 `* t- e, t/ p3 p% n+ a
  1. sudo ufw allow from [ip_address] to any port [port_number]/[protocol]
复制代码
8 }1 X' P: e' V5 a$ F3 F3 t1 K& m0 ^
例如,要允许IP地址1.2.3.4访问TCP端口22,您可以运行:9 N; X. U3 c; O9 R2 d3 e8 q
  1. sudo ufw allow from 1.2.3.4 to any port 22/tcp
复制代码

- j  Z; q" x$ _+ `+ P# `$ s0 y9 Y
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|WdidcNet ( 苏ICP备17005075号-1 )

GMT+8, 2026-2-13 02:27 , Processed in 0.026495 second(s), 6 queries , APCu On.

Powered by Discuz!

© 2010-2023.

快速回复 返回顶部 返回列表