在内核日志中禁用 UFW 块的日志记录

Nim*_*buz 7 firewall ufw

我的日志中有很多这些条目:

Sep 22 12:20:23 server0187 kernel: [    7.267934] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=27738 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:20:23 server0187 kernel: [    7.688848] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=27738 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:20:24 server0187 kernel: [    7.992988] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=27738 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:20:32 server0187 kernel: [   16.219594] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=52457 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:20:39 server0187 kernel: [   23.217712] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=7040 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:20:40 server0187 kernel: [   24.130220] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=7040 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:20:44 server0187 kernel: [   28.063447] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=61.62.8.132 DST=se.rv.er.ip LEN=60 TOS=0x00 PREC=0x00 TTL=45 ID=33267 DF PROTO=TCP SPT=33345 DPT=23 WINDOW=14520 RES=0x00 SYN URGP=0 
Sep 22 12:20:45 server0187 kernel: [   29.063934] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=61.62.8.132 DST=se.rv.er.ip LEN=60 TOS=0x00 PREC=0x00 TTL=45 ID=33268 DF PROTO=TCP SPT=33345 DPT=23 WINDOW=14520 RES=0x00 SYN URGP=0 
Sep 22 12:20:47 server0187 kernel: [   31.063621] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=61.62.8.132 DST=se.rv.er.ip LEN=60 TOS=0x00 PREC=0x00 TTL=45 ID=33269 DF PROTO=TCP SPT=33345 DPT=23 WINDOW=14520 RES=0x00 SYN URGP=0 
Sep 22 12:20:50 server0187 kernel: [   34.272558] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=37595 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:20:50 server0187 kernel: [   34.667044] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=37595 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:21:08 server0187 kernel: [   52.296316] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=113.69.80.129 DST=se.rv.er.ip LEN=40 TOS=0x00 PREC=0x00 TTL=48 ID=63510 PROTO=TCP SPT=22917 DPT=23 WINDOW=31379 RES=0x00 SYN URGP=0 
Sep 22 12:21:39 server0187 kernel: [   83.646607] [UFW BLOCK] IN=ens3 OUT= MAC=56:00:21:32:65:eb:fe:00:00:32:65:eb:08:99 SRC=151.233.57.112 DST=se.rv.er.ip LEN=44 TOS=0x00 PREC=0x00 TTL=37 ID=56703 PROTO=TCP SPT=25625 DPT=23 WINDOW=30217 RES=0x00 SYN URGP=0 
Run Code Online (Sandbox Code Playgroud)

我的ufw规则非常标准:

22/tcp (OpenSSH)           ALLOW IN    Anywhere                  
80,443/tcp (Nginx Full)    ALLOW IN    Anywhere                  
80,443/tcp                 ALLOW IN    Anywhere                  
25                         ALLOW IN    Anywhere                  
143                        ALLOW IN    Anywhere                  
993                        ALLOW IN    Anywhere                  
22                       ALLOW IN    Anywhere                  
21                       ALLOW IN    Anywhere                  
21/tcp                   ALLOW IN    Anywhere                  
22/tcp (OpenSSH (v6))      ALLOW IN    Anywhere (v6)             
80,443/tcp (Nginx Full (v6)) ALLOW IN    Anywhere (v6)             
80,443/tcp (v6)            ALLOW IN    Anywhere (v6)             
25 (v6)                    ALLOW IN    Anywhere (v6)             
143 (v6)                   ALLOW IN    Anywhere (v6)             
993 (v6)                   ALLOW IN    Anywhere (v6)             
22 (v6)                  ALLOW IN    Anywhere (v6)             
21 (v6)                  ALLOW IN    Anywhere (v6)             
21/tcp (v6)              ALLOW IN    Anywhere (v6) 
Run Code Online (Sandbox Code Playgroud)

我该如何摆脱这些?

Tho*_*ard 13

在阅读此答案之前,请考虑以下事项:

  1. 连接到系统时有 65,534 个可用端口 (1 - 65534),以及一堆不同的协议;这意味着根据防火墙规则中为“允许的流量”设置的任何标准,存在大量潜在的“被阻止”连接。

  2. 任何面向 Internet 的东西都会尝试从各种东西到盒子,例如:

    • 合法允许的流量
    • 服务扫描仪
    • 蛮力者
    • 恶意软件/黑客
    • 等等(几乎任何想要尝试和连接的东西,无论是否允许)。
  3. 任何公开面向 Internet 的事物都会试图找到在系统上运行的服务,或者尝试扫描盒子以查找潜在的漏洞点。因此BLOCK,系统日志中的警报。

  4. 防火墙“BLOCK”警报意味着您的防火墙正在按预期工作,您不应该真的非常担心看到大量这些警报,特别是如果您的系统直接面向 Internet(而不是在路由器等后面)。


现在来解决您在评论中对“这些条目很多”和“这就是我担心的原因”的担忧。

当您使用 UFW 运行白名单防火墙时,默认 UFW 配置会添加一个默认LOG规则,该规则将自动为防火墙规则不接受或以其他方式处理的任何流量添加规则。例如,假设我有一台服务器,我将其设置为仅允许来自 IP 地址 1.2.3.4 的 SSH。与从服务器出站的流量或从 1.2.3.4 到我的服务器的 SSH 流量(反之亦然)无关的到我服务器的任何其他流量都将被阻止,并且UFW BLOCK系统日志中将发出警报以指示与我允许的规则之一不匹配的流量被阻止。(也就是说,只有从 1.2.3.4 到端口 22 (SSH) 的流量或到该连接的相关双向流量才会触发BLOCK警报)

你应该关心这个吗? 绝对不。 面向 Web 的服务、服务器、网络等从服务扫描器、合法连接、恶意威胁行为者等处获得大量流量。从外部尝试连接到网络的大量尝试并不少见。大范围的 IP 地址,如果您的系统/服务器面向 Internet,因为这种类型的流量通常会被阻止。


现在解决您关于如何禁用UFW BLOCK警报的原始问题。虽然我不建议禁用警报(因为这表明您的防火墙正在按预期工作),但您可以通过执行以下操作来禁用 UFW 警报日志项:

sudo ufw logging off
Run Code Online (Sandbox Code Playgroud)

请注意,我真的不建议您禁用阻塞流量的日志记录,除非您确实需要(例如 syslog 占用太多磁盘空间,即使在这些情况下也不是很常见),但这取决于您是否做或不做。

  • @SamSirry syslog 由 systemd 和 logrotate 进行轮换 - 即使它“加载数据”,它也会轮换,并且“journald”无论如何都会擦除日志日志(如果需要)。另外,“ufw”的默认设置是*不*记录每个块,而是每 20 个匹配只记录一次出现,因此在这种情况下它并不是真正的 DoS 向量。 (2认同)

Seb*_*ian 7

如果日志因为它们污染了您的系统日志而让您烦恼,请编辑/etc/rsyslog.d/20-ufw.conf,最后一行(在 18.04 中)读取

# & stop
Run Code Online (Sandbox Code Playgroud)

删除#然后重新启动日志记录:

sudo service rsyslog restart
Run Code Online (Sandbox Code Playgroud)

现在你应该只能找到你的 ufw 登录 /var/log/ufw.log