使用 sudo ufw deny from <IP地址> to any 可立即拒绝该IP所有入站连接,规则优先级高于默认策略,生效后可通过 sudo ufw status numbered 查看并用编号删除。

直接用 sudo ufw deny from <IP地址> to any 就能拒绝该 IP 的所有入站连接,这是最常用也最有效的做法。
基础拒绝命令
UFW 默认只管控入站流量(incoming),所以只需指定来源 IP 即可阻断其全部访问:
- 拒绝单个 IP:
sudo ufw deny from 192.168.1.100 to any - 拒绝后立即生效,无需重启服务
- 该规则优先级高于默认策略,即使你设了
default allow incoming,这条 deny 仍会生效
验证和管理规则
添加后建议立刻检查是否生效:
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
- 查看带编号的规则列表:
sudo ufw status numbered输出中会出现类似[ 5] Anywhere DENY 192.168.1.100的条目 - 若需删除该规则,用编号操作更安全:
sudo ufw delete 5 - 也可按规则内容删除(需完整匹配):
sudo ufw delete deny from 192.168.1.100 to any
扩展控制场景
如果需要更精细的拦截,可以叠加协议或端口限制:
- 仅拒绝某 IP 的 TCP 22 端口(如 SSH):
sudo ufw deny proto tcp from 192.168.1.100 to any port 22 - 拒绝整个子网:
sudo ufw deny from 10.0.0.0/24 to any - 注意:UFW 不区分“连接”与“数据包”,
deny from X本质是丢弃所有发往本机的、源 IP 为 X 的入站包
注意事项
这条规则只影响入站流量,不影响该 IP 上的出站请求(比如它主动访问外部网站不受限):
- UFW 默认不拦截出站(outgoing)流量,除非你显式设置
default deny outgoing - 被拒绝的连接不会返回任何响应(相当于静默丢包),客户端通常表现为超时
- 若服务器运行在云平台(如 AWS、阿里云),还需确认安全组或网络 ACL 是否放行了对应流量,UFW 规则只是最后一道防线

















