在 Debian 系统中,“防火墙”通常指 iptables / nftables,以及常见的前端管理工具(如 ufw、firewalld)。下面按使用场景说明如何测试防火墙策略。
sudo ufw status
Status: active → 使用 ufwStatus: inactive → 未启用sudo iptables -L -n -v
sudo nft list ruleset
telnet / nc 测试端口telnet 127.0.0.1 22
# 或
nc -vz 127.0.0.1 22
⚠️ 注意:本地回环(lo)通常不被防火墙限制
在另一台 Linux / Windows 机器上:
telnet <debian_ip> 80
nc -vz <debian_ip> 22
或用:
nmap <debian_ip>
sudo ufw status numbered
sudo ufw allow 8080
sudo ufw deny 8080
sudo ufw deny from 192.168.1.100
然后从该 IP 测试访问。
sudo iptables -A INPUT -p tcp --dport 12345 -j DROP
测试:
nc -vz <ip> 12345
sudo iptables -L INPUT -v -n
看 pkts 是否增加。
sudo iptables -D INPUT -p tcp --dport 12345 -j DROP
sudo nft add rule inet filter input tcp dport 12345 drop
sudo nft list ruleset
sudo nft delete rule inet filter input handle <handle_id>
sudo ufw logging on
sudo tail -f /var/log/ufw.log
sudo iptables -A INPUT -j LOG --log-prefix "IPTABLES-DROP: "
dmesg | grep IPTABLES-DROP
| 测试目标 | 方法 |
|---|---|
| 是否允许 SSH | nc -vz ip 22 |
| 是否屏蔽某 IP | ufw deny from ip |
| 端口是否被 DROP | iptables -L -v |
| 外部能否访问 Web | 浏览器 / curl |
tmux / screen 防断连如果你愿意,可以告诉我:
我可以直接给你可复制的测试命令。