735 字
4 分钟
服务器防火墙相关命令

firewalld防火墙相关命令#

firewalld 是一个动态管理防火墙的Linux工具,允许用户在不重新启动防火墙的情况下管理规则。它使用了 zones(区域)的概念,允许根据网络连接类型定义不同的防火墙设置。

基本命令#

  1. 启动 firewalld 服务

    Terminal window
    sudo systemctl start firewalld
  2. 停止 firewalld 服务

    Terminal window
    sudo systemctl stop firewalld
  3. 重启 firewalld 服务

    Terminal window
    sudo systemctl restart firewalld
  4. 启用 firewalld 服务开机自启

    Terminal window
    sudo systemctl enable firewalld
  5. 禁用 firewalld 服务开机自启

    Terminal window
    sudo systemctl disable firewalld
  6. 查看 firewalld 服务状态

    Terminal window
    sudo systemctl status firewalld

配置命令#

  1. 查看所有区域

    Terminal window
    sudo firewall-cmd --get-zones
  2. 查看活动区域

    Terminal window
    sudo firewall-cmd --get-active-zones
  3. 查看特定区域的设置

    Terminal window
    sudo firewall-cmd --zone=public --list-all
  4. 添加服务到区域(立即生效,但不会持久保存)

    Terminal window
    sudo firewall-cmd --zone=public --add-service=http
  5. 添加服务到区域(持久保存)

    Terminal window
    sudo firewall-cmd --zone=public --add-service=http --permanent
  6. 删除服务

    Terminal window
    sudo firewall-cmd --zone=public --remove-service=http --permanent
  7. 重新加载防火墙配置

    Terminal window
    sudo firewall-cmd --reload
  8. 添加端口(立即生效,但不会持久保存)

    Terminal window
    sudo firewall-cmd --zone=public --add-port=8080/tcp
  9. 添加端口(持久保存)

    Terminal window
    sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
  10. 删除端口

    Terminal window
    sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent

其他命令#

  1. 查看所有已添加的服务

    Terminal window
    sudo firewall-cmd --list-services
  2. 查看所有已添加的端口

    Terminal window
    sudo firewall-cmd --list-ports
  3. 禁用特定区域

    Terminal window
    sudo firewall-cmd --zone=public --set-target=DROP
  4. 允许某个IP地址访问

    Terminal window
    sudo firewall-cmd --zone=public --add-source=192.168.1.100
  5. 永久允许某个IP地址访问

    Terminal window
    sudo firewall-cmd --zone=public --add-source=192.168.1.100 --permanent

ufw防火墙相关命令#

ufw(Uncomplicated Firewall)是一个简化管理防火墙规则的工具,特别适用于iptables

基本命令#

  1. 查看 ufw设置端口
Terminal window
sudo ufw status numbered

重载配置

Terminal window
sudo ufw reload
  1. 启用 ufw 防火墙

    Terminal window
    sudo ufw enable
  2. 禁用 ufw 防火墙

    Terminal window
    sudo ufw disable
  3. 查看 ufw 状态

    Terminal window
    sudo ufw status
    • 如果需要详细信息:
    Terminal window
    sudo ufw status verbose
  4. 重置 ufw 配置

    Terminal window
    sudo ufw reset

配置规则#

  1. 允许服务(例如 HTTP)

    Terminal window
    sudo ufw allow http
    • 或者使用端口号:
    Terminal window
    sudo ufw allow 80/tcp
  2. 允许服务(例如 HTTPS)

    Terminal window
    sudo ufw allow https
    • 或者使用端口号:
    Terminal window
    sudo ufw allow 443/tcp
  3. 禁止服务

    Terminal window
    sudo ufw deny http
    • 或者使用端口号:
    Terminal window
    sudo ufw deny 80/tcp
  4. 删除规则

    • 允许规则:
    Terminal window
    sudo ufw delete allow http
    • 禁止规则:
    Terminal window
    sudo ufw delete deny http
  5. 指定IP地址的允许规则

    Terminal window
    sudo ufw allow from 192.168.1.100
  6. 指定IP地址和端口的允许规则

    Terminal window
    sudo ufw allow from 192.168.1.100 to any port 22
  7. 允许特定网段的访问

    Terminal window
    sudo ufw allow from 192.168.1.0/24 to any port 22

复杂规则#

  1. 限制某端口的访问(防止暴力破解)

    Terminal window
    sudo ufw limit ssh
    • 或者使用端口号:
    Terminal window
    sudo ufw limit 22/tcp
  2. 拒绝特定IP地址的访问

    Terminal window
    sudo ufw deny from 192.168.1.100
  3. 允许出站流量

    Terminal window
    sudo ufw default allow outgoing
  4. 禁止出站流量

    Terminal window
    sudo ufw default deny outgoing
  5. 允许入站流量

    Terminal window
    sudo ufw default allow incoming
  6. 禁止入站流量

    Terminal window
    sudo ufw default deny incoming

日志和监控#

  1. 启用日志记录

    Terminal window
    sudo ufw logging on
  2. 禁用日志记录

    Terminal window
    sudo ufw logging off
  3. 设置日志记录级别

    Terminal window
    sudo ufw logging low
    • 可用级别:off, low, medium, high, full

其他命令#

  1. 检查 ufw 版本
    Terminal window
    ufw version
服务器防火墙相关命令
https://yanghc.dev/posts/9c75190f/
作者
竹林听雨
发布于
2024-05-25
许可协议
CC BY-NC-SA 4.0