黑客攻击并非总依赖零日漏洞,绝大多数成功入侵来自配置疏忽与基础防护薄弱。本文从暴露面收敛、身份校验强化、主动检测三个维度,说明可落地的防御办法。这些措施不依赖昂贵硬件,普通开发与运维团队也能执行。

收敛互联网暴露面减少被攻击概率
许多系统被攻破,是因为把本不该公开的服务端口直接挂在公网。数据库、缓存、内部管理后台一旦暴露,自动化攻击工具会在数分钟内尝试弱口令与已知漏洞。收敛暴露面的核心原则是:只有必须对外提供服务的端口才监听公网地址,其余一律绑定内网或本地回环。
以 Linux 服务器为例,可以用 ss -tulnp 命令列出当前监听端口,逐一确认每个端口的必要性。对于 Redis、MongoDB 等默认无鉴权的服务,若必须对内网开放,应通过安全组或防火墙限制源 IP,绝对不要对 0.0.0.0 开放。下表给出常见服务的暴露建议:
| 服务类型 | 默认端口 | 公网暴露建议 |
|---|---|---|
| Web 服务 | 80/443 | 允许,需配置 WAF |
| SSH 管理 | 22 | 限制 IP 或改端口并禁密码登录 |
| MySQL | 3306 | 仅内网,禁止公网 |
| Redis | 6379 | 仅内网且设密码 |
除了端口,还要清理闲置的子域名与测试站点。不少企业正式站防护严密,但遗忘的 dev 子站使用相同后台弱密码,成为突破口。建议每月用子域名枚举工具配合资产台账核对,下线无主应用。暴露面越小,黑客可下手的点就越少,这是性价比最高的预防办法。
强制多因素认证阻断凭据窃取利用
弱口令与凭据复用是黑客最爱的入口。即使密码复杂度合格,若遭遇钓鱼或撞库,单因子认证依然失效。多因素认证(MFA)在密码之外增加动态码或硬件密钥,即使口令泄露也能拦住大部分非法登录。对于 SSH、后台管理、云控制台等高风险入口,应强制开启。
以 Linux 的 SSH 为例,可结合 Google Authenticator 实现 TOTP 验证。安装依赖后,在 /etc/pam.d/sshd 增加验证模块,并设置 ChallengeResponseAuthentication yes。配置片段如下:
# 安装 pam 模块(Debian 系) apt-get install libpam-google-authenticator # 用户初始化密钥 google-authenticator -t -d -f -r 3 -w 17 # /etc/pam.d/sshd 追加 auth required pam_google_authenticator.so # /etc/ssh/sshd_config 修改 ChallengeResponseAuthentication yes UsePAM yes
对于 Web 应用,可在登录接口后置一个 TOTP 校验环节,或接入短信、邮件动态码。要注意验证码有效期应短于五分钟,且错误次数超限锁定账户。不少团队担心 MFA 影响体验,但实际数据显示,开启 MFA 后账户被盗率下降超过九成。把身份校验做厚,黑客拿到的口令就只是一串无用字符。
用渗透测试与防火墙规则主动发现盲区
预防不能只靠被动防护,需主动模拟黑客视角检验防御。渗透测试不是上线后才做,而应纳入每次大版本发布流程。用自动化扫描器跑一遍常见漏洞,再辅以人工逻辑测试,能暴露越权、注入等隐藏问题。同时,防火墙规则要遵循默认拒绝,仅放行明确业务流。
下面是一段 iptables 基础加固脚本,体现默认丢包与按需放行的思路。它先清空旧规则,设置 INPUT 链默认 DROP,再允许已建立连接与本地回环,最后只开放 Web 与受限 SSH。
#!/bin/bash # 清空并设默认策略 iptables -F 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 # 开放 Web iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 443 -j ACCEPT # 仅允许特定 IP 的 SSH iptables -A INPUT -p tcp -s 192.168.0.1 --dport 22 -j ACCEPT
防火墙只是第一道闸,还需配合日志审计。把拒绝日志送到集中收集系统,定期看有哪些 IP 在扫端口、试登录,就能提前封禁可疑来源。渗透测试报告中的中高危项必须限时修复,不能积压。把主动检测与边界控制结合,黑客的攻击成本会成倍增加,多数会自动转向更软的目标。