吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 755|回复: 9
收起左侧

[其他原创] 自签浏览器授信 CA 证书

[复制链接]
mr88fang 发表于 2024-12-3 09:48

此服务器无法证实它就是 127.0.0.1 - 它的安全证书没有指定主题备用名称。这可能是因为某项配置有误或某个攻击者拦截了您的连接

自签 SSL 证书浏览器不授信,提示连接不安全解决办法,自签证书时增加 SAN 信息,将证书添加到受信任的根证书颁发机构

配置前 访问拦截 配置后
配置SSL前 访问拦截 配置SSl后

主题备用名称(SAN)说明:

  • 主题备用名称 是证书的扩展字段,它允许证书支持多个域名或 IP 地址。对于自签证书,如果你希望它能够适用于 127.0.0.1 或 localhost,你需要在生成证书时指定这个 IP 地址或主机名。

  • 问题根源:自签证书通常只会将证书的 Common Name (CN) 字段设置为一个值(如 localhost 或 127.0.0.1),但在现代浏览器中,浏览器更偏向于检查 SAN 字段,以确保安全性。

1.创建一个 OpenSSL 配置文件

openssl.ini


[ req ]
default_bits        = 2048
default_keyfile     = privkey.pem
distinguished_name  = req_distinguished_name
req_extensions      = v3_req    # 指定请求使用 v3_req 扩展
prompt = no          # 不提示输入

[ req_distinguished_name ]
C  = US
ST = California
L  = San Francisco
O  = My Company
OU = My Department
CN = localhost
emailAddress = admin@mycompany.com

[ v3_req ]
subjectAltName = @alt_names   # 引用 alt_names

[ alt_names ]
DNS.1   = localhost
IP.1    = 127.0.0.1

配置文件说明

  • [ req_distinguished_name ] 部分:定义了证书的基本信息,

    • C:国家
    • ST:省份
    • L:城市
    • O:组织
    • OU:单位
    • CN:常见名称
    • emailAddress:电子邮件地址
  • [ v3_req ]:这里指定了扩展字段 subjectAltName,并引用了 alt_names 部分。

  • [ alt_names ]:定义了备用名称,DNS.1 是域名,IP.1 是 IP 地址。这里包括 localhost127.0.0.1,这样证书会为这两个名称生效。

2.生成自签证书

使用这个配置文件来生成证书和私钥:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout private.key -out certificate.crt -config ./openssl.ini -extensions v3_req

这个命令会生成一个包含 主题备用名称(SAN) 的自签证书。

  • days 365:指定证书的有效期为 365 天。
  • nodes:表示不使用密码保护私钥。
  • newkey rsa:2048:生成一个新的 2048 位 RSA 密钥对。
  • keyout private.key:指定私钥的输出文件名。
  • out certificate.crt:指定证书的输出文件名。
  • config openssl.ini:指定自定义的 OpenSSL 配置文件。
  • extensions v3_req:指定证书包含 SAN 扩展

3.检查证书

你可以使用工具如 OpenSSL 或浏览器的证书查看器来验证生成的证书是否包含正确的 SAN

使用 openssl 命令查看证书:

openssl x509 -in certificate.crt -text -noout

确保在证书信息中可以看到类似下面的部分:

X509v3 extensions:
    X509v3 Subject Alternative Name: 
        DNS:localhost, IP Address:127.0.0.1

如果不包含以上内容,请更新 openssl 重新生成,否则浏览器还是会提示:

此服务器无法证实它就是 127.0.0.1 - 它的安全证书没有指定主题备用名称。这可能是因为某项配置有误或某个攻击者拦截了您的连接

4.导入证书到浏览器

  • 双击 certificate.crt 安装
    1. 安装证书:-> 本计算机 -> 将所有的证书都放入下列存储 -> 浏览 -> 受信任的根证书颁发机构
    2. 退出浏览器后台(不是关闭标签页)
    3. 重新打开访问对应网站
  • 谷歌浏览器导入
    1. 打开 Chrome 浏览器,进入 chrome://certificate-manager/
    2. 选择“本地证书”,管理从 Windows 导入的证书。
    3. 受信任的根证书颁发机构 标签页下,点击“导入”。
    4. 选择你生成的自签证书 certificate.crt,然后将其添加到受信任的根证书库中。
    5. 重启浏览器

总结:

浏览器警告的原因是自签证书没有设置主题备用名称(SAN)。要解决这个问题,生成自签证书时需要指定 SAN,确保包括你打算访问的主机名或 IP 地址(如 localhost127.0.0.1)。

免费评分

参与人数 3吾爱币 +9 热心值 +3 收起 理由
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
tanhaibigg + 1 + 1 谢谢@Thanks!
lzq20041213 + 1 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

BrutusScipio 发表于 2024-12-3 10:54
为何行文一股AI味?内容倒是没问题
adu996 发表于 2024-12-3 10:09
Appkbox 发表于 2024-12-3 10:32
云烟成雨 发表于 2024-12-3 10:41
有用,收藏一下
 楼主| mr88fang 发表于 2024-12-3 10:58
BrutusScipio 发表于 2024-12-3 10:54
为何行文一股AI味?内容倒是没问题

对一部分AI生成
Simwillbetter 发表于 2024-12-3 11:42
感谢楼主,学习了
xiecj 发表于 2024-12-4 11:10
感谢楼主,学习了
shouzai 发表于 2024-12-8 00:04
好东西,谢谢大佬分享
SnopCat 发表于 2024-12-13 11:49
感谢楼主,正好我最近实验课遇到这个问题,看完明白了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-1-7 20:05

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表