特网科技为您提供高速、稳定、安全、弹性的云计算服务计算、存储、监控、安全,完善的云产品满足您的一切所需,深耕云计算领域10余年;我们拥有前沿的核心技术,始终致力于为政府机构、企业组织和个人开发者提供稳定、安全、可靠、高性价比的云计算产品与服务。

当前位置:首页 > 行业资讯 > SSL证书 > 正文内容

手把手教你使用 OpenSSL 自签 SSL 证书从零搭建安全本地 HTTPS 环境

2026-04-14SSL证书741

海外云服务器 40个地区可选            亚太云服务器 香港 日本 韩国

云虚拟主机 个人和企业网站的理想选择            俄罗斯电商外贸虚拟主机 赠送SSL证书

美国云虚拟主机 助力出海企业低成本上云             拨号云主机


在当今高度互联的数字世界中,HTTPS 已成为网站安全通信的标配协议,无论是面向公众的生产系统,还是仅供内部使用的开发测试环境,启用 HTTPS 都能有效防范中间人攻击(MITM)、保障数据传输机密性与完整性。

而在本地开发、内网调试或私有化部署场景下,我们往往无需购买昂贵的商业证书。使用 OpenSSL 生成自签名 SSL 证书,便成了最具性价比、最灵活高效的解决方案

本文将从零开始,手把手带你掌握如何通过 OpenSSL 创建一套完整的自签名证书体系,并成功部署到主流 Web 服务器(如 Nginx),助你轻松搭建一个“真·HTTPS”本地开发环境。


🔍 什么是自签名 SSL 证书?

自签名证书(Self-Signed Certificate),顾名思义,是由用户自己生成并签署的数字证书,而非由受信任的第三方证书颁发机构(CA,如 Let’s Encrypt、DigiCert 等)签发。

虽然主流浏览器默认不信任此类证书(访问时会提示“连接不安全”或显示红色警告),但在 本地开发、内部测试、CI/CD 流水线、私有 API 服务等封闭环境中,自签名证书完全能满足加密通信的核心需求 —— 身份验证 + 数据加密,且具备零成本、高可控、快速部署三大优势。

💡 小贴士:自签名 ≠ 不安全,只是缺乏“公信力”,在可控范围内,它完全可以胜任安全通信任务。


⚙️ 为什么选择 OpenSSL?

OpenSSL 是当前最主流、功能最强大的开源密码学工具包之一,支持生成密钥对、创建证书请求(CSR)、签署证书、管理 PKI 体系等核心功能。

其优势包括:

  • 跨平台支持:Windows / Linux / macOS 均可运行;
  • 命令行驱动:灵活高效,适合脚本化与自动化;
  • 社区活跃、文档丰富:遇到问题极易找到解决方案;
  • 工业标准:被 Apache、Nginx、Node.js 等广泛集成。

可以说,掌握 OpenSSL,就等于掌握了构建安全通信基础设施的钥匙


🧰 准备工作:安装 OpenSSL

请确保你的系统已安装 OpenSSL,打开终端,输入以下命令验证:

openssl version

若提示命令未找到,请根据系统类型进行安装:

  • Ubuntu / Debian

    sudo apt update && sudo apt install openssl
  • CentOS / RHEL / Fedora

    sudo yum install openssl      # CentOS 7 及以下
    sudo dnf install openssl      # CentOS 8+ / Fedora
  • macOS(推荐 Homebrew)

    brew install openssl
  • Windows 用户


🧾 生成自签名 SSL 证书四步走

第一步:生成 RSA 私钥(Private Key)

私钥是整个证书体系的核心,必须严格保密,不可泄露。

openssl genrsa -out server.key 2048

安全建议:生产级应用推荐使用 4096 位密钥,提升破解难度:

openssl genrsa -out server.key 4096

第二步:创建证书签名请求(CSR)

虽然自签名证书无需提交给 CA,但通过 CSR 可以规范填写证书元信息(如组织、域名等),便于后续管理。

openssl req -new -key server.key -out server.csr

执行后,系统将引导你填写以下字段:

字段 说明 示例
Country Name (C) 国家代码(ISO 格式) CN
State or Province (ST) 省份或州 Beijing
Locality Name (L) 城市 Beijing
Organization Name (O) 组织/公司名称 MyDevTeam
Organizational Unit (OU) 部门 Development
Common Name (CN) 最关键!必须匹配访问域名 localhost*.myapp.local
Email Address 联系邮箱(可选) admin@local.dev

⚠️ 重要提醒Common Name 必须与你实际访问服务所用的域名一致,否则浏览器将拒绝建立连接!


第三步:签署并生成自签名证书

使用私钥和 CSR 文件,生成有效期为 365 天的 X.509 证书:

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

🚀 懒人模式:跳过 CSR 步骤,一步到位生成证书 + 私钥:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout server.key -out server.crt

-nodes 表示不对私钥加密(无密码保护),方便自动化脚本调用。


第四步(可选):合并为 PEM 格式文件

部分服务器(如 Node.js、某些 Docker 镜像)要求证书与私钥合并为单个 .pem 文件:

cat server.crt server.key > server.pem

🖥️ 部署到 Web 服务器(以 Nginx 为例)

编辑 Nginx 配置文件(通常位于 /etc/nginx/sites-available/default 或自定义 .conf 文件):

server {
    listen 443 ssl http2;
    server_name localhost;
    ssl_certificate     /path/to/your/server.crt;
    ssl_certificate_key /path/to/your/server.key;
    ssl_protocols       TLSv1.2 TLSv1.3;
    ssl_ciphers         HIGH:!aNULL:!MD5;
    location / {
        root   /var/www/html;
        index  index.html index.htm;
    }
}

保存后重载配置:

sudo nginx -t        # 测试配置语法
sudo nginx -s reload # 平滑重启

🌐 如何让浏览器信任自签名证书?

首次访问时,浏览器会弹出“不安全”警告,解决方法如下:

手动导入根证书(推荐长期使用)

  1. server.crt 文件复制到桌面;
  2. 双击打开 → 选择“安装证书” → 存储位置选择“受信任的根证书颁发机构”;
  3. 完成导入后,重启浏览器即可消除警告。

✅ 支持 Chrome、Edge、Firefox(需单独导入)、Safari 等主流浏览器。

Chrome 临时豁免(仅限 localhost)

访问地址栏输入:

chrome://flags/#allow-insecure-localhost

启用该实验性功能后,Chrome 将允许 localhost 使用无效证书 —— 仅限开发调试,切勿用于生产环境!


⚠️ 常见问题 & 最佳实践
问题 解决方案
证书过期频繁 生成时延长有效期:-days 3650(10年)
域名不匹配报错 确保 CN 或 SAN 包含实际访问域名(如 0.0.1, *.test.local
权限风险 设置私钥权限为 600chmod 600 server.key
生产环境误用 自签名证书严禁用于公网服务!请改用 Let’s Encrypt 免费证书

🎯 进阶技巧:添加 SAN(Subject Alternative Name)

现代浏览器(尤其是 Chrome 58+)强制要求证书包含 SAN(Subject Alternative Name)字段,否则即使域名匹配也会报错。

我们可以通过配置文件实现:

创建 ssl.conf

[req]
distinguished_name = req_distinguished_name
req_extensions     = v3_req

扫描二维码推送至手机访问。

版权声明:本文由特网科技发布,如需转载请注明出处。

本文链接:https://www.56dr.com/mation/97716.html

分享给朋友:

“手把手教你使用 OpenSSL 自签 SSL 证书从零搭建安全本地 HTTPS 环境” 的相关文章

揭示Scum人渣服务器租用网站的真相与危害

揭秘Scum人渣服务器租用网站:这些网站以低廉的价格提供非法服务器资源,严重侵犯了用户的隐私和财产安全。在当今互联网时代,网络租赁服务已经成为一种便捷且经济的选择,随着人们对网络安全的关注日益增加,一些不法分子利用这一市场机会,通过租用服务器进行非法活动,如黑客攻击、网络诈骗等,给用户带来了严重的安...

我的私人数据中心

我的私人数据中心位于山脚下,周围环境宁静而美丽。数据中心配备了最新的硬件和软件,能够高效地存储、处理和分析大量的数据。我也致力于保护用户的隐私和安全,确保数据中心的安全运行。在当今数字化时代,随着互联网技术的飞速发展,越来越多的人开始将个人和企业的数据存储在云端,对于一些敏感的数据或需要高可靠性的应...

全球领先者引领未来趋势

在全球经济和科技快速发展的背景下,全球领先者正在引领着未来的发展趋势。它们通过不断创新和优化产品和服务,为消费者提供了更多的便利和选择。这些公司也在积极地参与国际竞争,努力在国际市场中占据领先地位。全球领先者的成功得益于其强大的研发能力和卓越的服务质量。在当今数字化转型的浪潮中,云计算已经成为企业数...

在家轻松租用外网服务器

在家里轻松租用外网服务器,只需通过网络服务提供商(如阿里云、腾讯云等)注册账户并选择适合的套餐即可。操作简单快捷,无需购买昂贵硬件设备,同时也能享受稳定可靠的互联网连接。随着互联网技术的发展,越来越多的人开始利用网络资源进行各种活动,租用外网服务器是一个非常流行的选择,它不仅可以提供稳定的网络连接,...

SSL证书通配符和价格分析

SSL证书中的通配符是一种特殊的证书类型,它允许用户访问具有相同域名的不同子目录。这些子目录通常用于不同的服务或功能。通配符证书的价格较高,因为它们需要为每个子目录分配单独的证书,而不是一个通用的证书。,,SSL证书的价格因多种因素而异,包括证书的有效期、所使用的加密算法、以及是否包含其他额外的服务...

小程序 SSL 证书费用

小程序的SSL证书费用包括域名证书、服务器证书和根证书。通常情况下,域名证书价格较低,服务器证书价格较高,根证书则是免费的。小程序的SSL证书需要定期更新,以保持安全性。在开发微信小程序时,SSL证书对于确保数据传输的安全性至关重要,选择合适的SSL证书价格也是一个需要考虑的问题,本文将探讨不同类型...