强制启用tls 1.2/1.3并禁用sslv3及tls 1.0/1.1,优先配置ecdhe+aes-gcm套件,启用hsts与mtls双向认证,全程加密身份凭证并定期验证策略有效性。

直接在传输层和应用层落实加密与认证,是阻断窃听、篡改和冒充最有效的手段。核心不是堆砌技术,而是让每个连接都具备可验证身份+不可读内容这两个基本能力。
强制启用TLS并淘汰老旧协议
所有对外提供服务的端口(如Web、API、邮件、数据库管理)必须使用TLS加密,且禁用已知不安全的版本和算法。
- 只启用TLS 1.2及以上版本,明确禁用SSLv3、TLS 1.0/1.1
- 优先选用ECDHE密钥交换+AES-GCM加密套件,避免RSA密钥交换和CBC模式
- Web服务配置HTTP严格传输安全(HSTS)头,防止降级攻击
- 邮件服务SMTP/IMAP/POP3全部启用STARTTLS,并配置证书校验机制
服务间通信必须双向认证
微服务、后台系统、数据库连接等内部调用,不能依赖网络隔离,默认按“不可信网络”处理。
- 使用mTLS(双向TLS):客户端和服务端均需提供有效证书,服务器验证客户端证书
- 证书由私有CA签发,生命周期可控;禁止使用自签名证书或公网CA泛域名证书
- API网关或服务网格(如Istio)统一注入mTLS策略,避免各服务重复实现
- 数据库连接启用SSL/TLS,并配置require_ssl=true或sslmode=require
身份凭证全程加密保护
认证凭据本身不能以明文形式出现在传输链路中,包括密码、Token、密钥等。
- 登录环节禁用HTTP Basic Auth,改用OAuth 2.1或OpenID Connect流程,Token通过HTTPS传输
- JWT等令牌必须签名(HS256或RS256),敏感字段(如用户ID、角色)不存于payload明文
- API密钥、访问令牌一律通过Authorization头传递,禁止拼入URL或表单参数
- 临时凭证(如预签名URL、短期STS Token)设置合理过期时间(建议≤1小时)
验证与加固关键环节
配置正确不等于防护到位,必须通过主动验证确认策略真实生效。
- 用openssl s_client -connect domain:443 -servername domain测试TLS握手与证书链
- 用curl -I https://domain --insecure检查是否强制跳转HTTPS及HSTS头是否返回
- 抓包验证敏感接口响应体是否加密(如JSON数据是否仍为明文)
- 模拟未携带证书的请求访问mTLS接口,确认返回401或403而非500











