📜  ufw 配置文件位置 ubuntu - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:20:47.874000             🧑  作者: Mango

ufw 配置文件位置

ufw 是 Ubuntu 中一种简单易用的防火墙工具。它的配置文件存储在 /etc/ufw 目录下。在该目录下有以下文件:

  • ufw.conf: ufw 的主要配置文件。ufw 的行为将由该文件中的设置决定。
  • user.rules: 用户定义的规则将被保存在这里。它们将覆盖 ufw.conf 文件中默认的规则。
  • user6.rules: IPv6 版本的用户定义规则。
  • before.rules: 在 ufw 应用其默认规则之前应用的规则。
  • before6.rules: IPv6 版本的 before.rules 文件。
  • after.rules: 在 ufw 应用其默认规则之后应用的规则。
  • after6.rules: IPv6 版本的 after.rules 文件。
ufw 的主要配置文件 ufw.conf

ufw.conf 包含 ufw 基本规则和配置选项。

以下是 ufw.conf 的默认配置:

# /etc/ufw/ufw.conf
#

# Set to yes to apply rules to support IPv6 (no means only IPv6 on loopback
# accepted).
IPV6=yes

# Set the default input policy to DROP. This means that by default, any
# incoming traffic that doesn't match a rule will be dropped.
DEFAULT_INPUT_POLICY="DROP"

# Set the default output policy to ACCEPT. This means that by default, any
# outgoing traffic is allowed.
DEFAULT_OUTPUT_POLICY="ACCEPT"

# Set the default forward policy to DROP. This means that by default, any
# packets forwarded from one interface to another will be dropped.
DEFAULT_FORWARD_POLICY="DROP"

# Uncomment this to allow incoming ICMP pings.
#ENABLE_PING=""

# Uncomment this to enable logging.
#ENABLE_LOGGING="true"
用户定义规则文件

用户定义的规则将保存在 user.rules 文件中,如果你需要对你的系统进行更具体的设置,可以将规则添加到此文件中。例如:

# /etc/ufw/user.rules
#

# allow ssh
-A ufw-user-input -p tcp --dport 22 -j ACCEPT

# allow http and https
-A ufw-user-input -p tcp --dport 80 -j ACCEPT
-A ufw-user-input -p tcp --dport 443 -j ACCEPT

以上配置将允许 SSH、HTTP 和 HTTPS 流量通过。

其他规则文件

在特定情况下,你可能需要在包括默认规则在内的 ufw 规则之前或之后添加其他规则,以便更改默认规则,或添加一些特定的规则。这时,你可以分别在 before.rulesbefore6.rulesafter.rulesafter6.rules 文件中添加规则。例如,在 before.rules 文件中添加以下规则可以用于 NAT:

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
COMMIT

请注意,如果更改 ufw 的默认规则,应将任何更改的规则添加到对应的用户规则文件 user.rules 中。这样可以确保在 ufw 配置更改时不会丢失用户自己定义的规则。