在Debian系统中设置防火墙规则可以通过多种工具实现,其中最常用的是 ufw(Uncomplicated Firewall)和 iptables。以下是使用这两种工具设置防火墙规则的技巧和步骤:
使用ufw设置防火墙规则
-
安装ufw:
sudo apt update sudo apt install ufw
-
启用ufw:
sudo ufw enable
-
设置默认策略:
- 默认情况下,ufw阻止所有入站连接并允许所有出站连接。
- 可以根据需要更改默认策略:
sudo ufw default deny incoming # 拒绝所有入站连接 sudo ufw default allow outgoing # 允许所有出站连接
-
允许特定端口:
- 允许HTTP(80端口)入站连接:
sudo ufw allow 80/tcp
- 允许HTTPS(443端口)入站连接:
sudo ufw allow 443/tcp
- 允许SSH(22端口)入站连接:
sudo ufw allow 22/tcp
- 允许HTTP(80端口)入站连接:
-
查看防火墙状态及规则:
sudo ufw status verbose
-
禁用/启用ufw:
- 禁用ufw:
sudo ufw disable
- 启用ufw:
sudo ufw enable
- 禁用ufw:
-
保存规则:
- 为了确保系统重启后规则仍然有效,需要保存ufw规则:
sudo ufw export > /etc/ufw/user.rules
- 为了确保系统重启后规则仍然有效,需要保存ufw规则:
使用iptables设置防火墙规则
-
安装iptables:
sudo apt update sudo apt install iptables
-
查看当前的iptables规则:
sudo iptables -L -n -v
-
设置防火墙规则:
- 允许SSH(22端口)连接:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
- 允许HTTP(80端口)连接:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- 允许HTTPS(443端口)连接:
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
- 允许SSH(22端口)连接:
-
保存规则:
- Debian系统默认不保存iptables规则,需要手动保存:
sudo iptables-save /etc/iptables/rules.v4
- Debian系统默认不保存iptables规则,需要手动保存:
-
启用防火墙:
sudo systemctl enable iptables sudo systemctl start iptables
-
设置自启动:
- 编辑
/etc/network/if-pre-up.d/iptables
文件并添加以下内容:#!/bin/sh /sbin/iptables-restore < /etc/iptables/rules.v4
- 设置可执行权限:
sudo chmod +x /etc/network/if-pre-up.d/iptables
- 编辑
高级技巧
-
允许特定IP范围的访问:
sudo ufw allow from 192.168.1.0/24
-
允许通过TCP或UDP访问:
sudo ufw allow 101/tcp sudo ufw allow 101/udp
-
允许特定IP段的访问:
sudo ufw allow from 192.168.1.0/24
-
禁用ufw:
sudo ufw disable
-
重新加载ufw规则:
sudo ufw reload
在进行防火墙规则设置时,务必谨慎操作,错误的配置可能导致无法访问系统。建议在更改规则之前,先备份当前的规则配置,以便在出现问题时可以快速恢复。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1362324.html