回答:基础规则应遵循“最小权限”原则,只允许必要端口进入并阻断其它流量。常见必须允许的有:业务端口(如80/443)、管理端口(如SSH或自定义端口)、监控端口(如果需要)。同时启用状态检测、拒绝未建立连接的入站包并开启日志。
1)如果使用iptables或nftables,设置默认策略为DROP,随后添加允许规则;2)对不常用端口使用白名单;3)启用速率限制(如limit/最近连接模块)以防扫描和暴力破解。
使用iptables时,可先设置:iptables -P INPUT DROP;再允许HTTP/HTTPS/SSH:iptables -A INPUT -p tcp --dport 443 -j ACCEPT 等。
同时建议在主机级安装并启用日志轮转,以免日志增长影响可用性。
回答:按地域限制常见方法有使用GeoIP库和ipset结合防火墙、或者在云厂商控制台使用安全组/ACL。GeoIP可基于IP段判断国家,但需定期更新库以保证准确性。
1)本地:安装geoip模块(如xt_geoip或nftables geoip),或用ipset导入日本IP段列表并在iptables中引用;2)云端:在AWS/GCP/阿里云等平台,直接在安全组或网络ACL中设置允许的国家IP段或者仅允许特定云区域/负载均衡。
使用ipset时,先批量导入日本IP段(可从MaxMind或ISP获取),然后在防火墙中用“-m set --match-set japan src -j ACCEPT”;默认策略拒绝其它源。
GeoIP并非万无一失,CDN或代理用户可能显示非日本IP,必要时结合登录策略或验证码二次验证。
回答:管理口安全尤为重要,应优先采用密钥认证、禁用密码登录、修改默认端口并限制来源IP。结合fail2ban或crowdsec阻挡暴力攻击。
1)在sshd_config中设置PasswordAuthentication no、PermitRootLogin no;2)使用公钥登录并强制使用强口令保护私钥;3)可使用TCP Wrappers或防火墙仅允许可信管理IP访问。
启用双因素(2FA)或基于跳板机(bastion host)管理多台实例,跳板机再使用严格IP白名单和监控。
部署fail2ban限制失败登录尝试,或使用SSHGuard、crowdsec配合日志采集实现自动阻断。
回答:结合网络层与应用层防护。优先使用上游提供商或CDN的DDoS防护(如Cloudflare、阿里云盾等),本地防火墙做速率限制、连接数限制和SYN保护。
1)在防火墙启用conntrack限制和SYN cookies;2)使用iptables或nftables的limit/multiport模块做速率限制;3)重要场景下使用专用抗DDoS服务或流量清洗。
建立流量监控与告警,出现大流量时尽快切换到CDN/清洗服务或请求托管商封堵攻击源。
对应用层攻击(如HTTP泛滥)还需在应用端设置请求频率限制、WAF规则和验证码挑战。
回答:云厂商或VPS提供商通常提供网络安全组、端口过滤、私有网络、弹性IP绑定以及ACL规则,这些应与主机防火墙配合使用形成多层防护。
1)安全组/防火墙规则只放行必要端口;2)启用管理控制台的IP白名单;3)使用私有网络或VPC隔离服务;4)对控制台操作开启MFA。
保持供应商侧规则和主机侧规则一致,定期审核安全组规则,避免冗余开放端口;在变更时先在测试环境验证规则效果。
开启云侧流量日志(如VPC Flow Logs)和操作审计,结合SIEM做长期分析与异常检测。