在 Debian 上设置“防火墙白名单”(即默认拒绝,只允许指定 IP/端口)通常有三种常见做法:
ufw(推荐,最简单)sudo apt update
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow from 192.168.1.100
sudo ufw allow from 203.0.113.10 to any port 22
sudo ufw allow from 203.0.113.10 to any port 80,443
sudo ufw allow from 10.0.0.0/24
sudo ufw enable
sudo ufw status numbered
iptables(更底层、更灵活)iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -s 192.168.1.100 -j ACCEPT
iptables -A INPUT -s 10.0.0.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -s 203.0.113.10 -j ACCEPT
apt install iptables-persistent
netfilter-persistent save
nftables(Debian 10+ 推荐新一代方案)apt install nftables
systemctl enable nftables
示例白名单配置(/etc/nftables.conf):
table inet filter {
chain input {
type filter hook input priority 0;
policy drop;
iif "lo" accept
ct state established,related accept
ip saddr 192.168.1.100 accept
ip saddr 10.0.0.0/24 accept
tcp dport { 22, 80, 443 } ip saddr 203.0.113.10 accept
}
}
nft -f /etc/nftables.conf
ufw allow from 你的IP 再 enable如果你能说明:
我可以给你一份可直接用的配置。