在Debian系统中设置防火墙,通常使用的是iptables或ufw(Uncomplicated Firewall)。以下是使用这两种工具设置防火墙的基本步骤:
iptables更新系统:
sudo apt update && sudo apt upgrade
安装iptables(如果尚未安装):
sudo apt install iptables
查看当前的iptables规则:
sudo iptables -L -n -v
设置默认策略:
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
允许SSH连接(假设SSH端口为22):
sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT
允许HTTP和HTTPS连接(假设HTTP端口为80,HTTPS端口为443):
sudo iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT
保存iptables规则:
Debian系统通常不会自动保存iptables规则,你需要手动保存。可以使用iptables-persistent包来保存规则:
sudo apt install iptables-persistent
在安装过程中,选择“是”以保存当前规则。
ufw更新系统:
sudo apt update && sudo apt upgrade
安装ufw(如果尚未安装):
sudo apt install ufw
启用ufw:
sudo ufw enable
查看ufw状态:
sudo ufw status
允许SSH连接:
sudo ufw allow ssh
允许HTTP和HTTPS连接:
sudo ufw allow http
sudo ufw allow https
拒绝所有其他输入连接:
sudo ufw default deny incoming
允许所有输出连接:
sudo ufw default allow outgoing
重新加载ufw配置(如果需要):
sudo ufw reload
通过以上步骤,你可以在Debian系统上设置基本的防火墙规则。请根据你的具体需求调整规则。