温馨提示×

怎样检查linux openssl安全

小樊
37
2026-10-10 11:14:12
栏目: 云计算

检查 Linux 上 OpenSSL 的安全性通常从 版本漏洞、配置安全、协议与算法、证书使用 几个方面入手。下面给你一套实用、可操作的检查清单。


一、检查 OpenSSL 版本(最直接)

openssl version

或详细版本:

openssl version -a

已知高危版本(需升级)

  • OpenSSL 1.0.1 / 1.0.2(已停止支持)
  • 受漏洞影响的版本:
    • Heartbleed(CVE-2014-0160):1.0.1 – 1.0.1f
    • CVE-2022-3602 / CVE-2022-3786(X.509 缓冲区溢出):3.0.0 – 3.0.6
    • CVE-2024-2511(session 泄露):1.0.2 – 3.0.x(部分)

✅ 建议:

  • 使用 OpenSSL 3.0.7+ 或发行版安全更新版本
  • 不要手工编译旧版本

二、检查系统 OpenSSL 是否打补丁(发行版)

CentOS / RHEL

rpm -q openssl

Ubuntu / Debian

dpkg -l | grep openssl

查看安全更新:

apt list --upgradable 2>/dev/null | grep openssl

三、检查支持的协议(禁用不安全协议)

openssl ciphers -v

或测试某服务:

openssl s_client -connect example.com:443 -protocol_ssl3
openssl s_client -connect example.com:443 -tls1

✅ 安全做法:

  • ❌ 禁用:SSLv2 / SSLv3 / TLS 1.0 / TLS 1.1
  • ✅ 启用:TLS 1.2 / TLS 1.3

四、检查加密套件(Cipher Suites)

查看当前支持的 ciphers:

openssl ciphers -v 'ALL:eNULL'

✅ 推荐:

  • 使用 ECDHE + AES-GCM
  • 禁用:
    • RC4
    • DES
    • 3DES
    • MD5
    • NULL cipher

示例(Nginx):

ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;

五、检查证书安全性

1. 查看证书信息

openssl x509 -in cert.pem -text -noout

重点看:

  • 签名算法(❌ SHA1,✅ SHA256+)
  • 有效期
  • 密钥长度(RSA ≥ 2048)

2. 检查私钥安全

openssl rsa -in key.pem -check

确保:

  • 私钥权限 600
  • 不在 git / 公共目录

六、使用工具做综合安全检查

1. testssl.sh(非常推荐)

./testssl.sh https://example.com

可检测:

  • 协议
  • 漏洞(Heartbleed、POODLE、ROBOT)
  • 证书问题

2. 在线检测

  • https://www.ssllabs.com/ssltest/
  • https://cryptcheck.fr/

七、检查 OpenSSL 配置文件

openssl version -d

通常为:

OPENSSLDIR: "/etc/ssl"

检查:

/etc/ssl/openssl.cnf

可强制禁用弱协议(OpenSSL 3.x):

[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=2

八、常见安全建议总结

✅ 升级到受支持版本
✅ 禁用老旧协议和弱算法
✅ 使用 TLS 1.3
✅ 证书用 SHA256+,RSA ≥ 2048 / ECC
✅ 私钥严格权限管理
✅ 定期用 testssl 检查


如果你愿意,可以告诉我:

  • Linux 发行版(CentOS / Ubuntu / 麒麟等)
  • OpenSSL 版本
  • 是 系统检查 还是 Web/服务安全检查

我可以直接给你针对性的命令和修复方案。

0 踩