当前位置: 首页 > wzjs >正文

温州网站制作设计建设厅官方网站河南

温州网站制作设计,建设厅官方网站河南,个人网站能 做淘客吗,一份完整的网站策划书解决自签名证书HTTPS告警:强制使用SHA-256算法生成证书 一、问题场景 在使用OpenSSL生成和配置自签名证书时,常遇到以下现象: 浏览器已正确导入根证书(.pem文件),但访问HTTPS站点时仍提示不安全连接或证…

解决自签名证书HTTPS告警:强制使用SHA-256算法生成证书

一、问题场景

在使用OpenSSL生成和配置自签名证书时,常遇到以下现象:

  • 浏览器已正确导入根证书(.pem文件),但访问HTTPS站点时仍提示不安全连接证书不可信告警。
  • 经排查,操作步骤无误,但证书默认使用SHA-1哈希算法,而现代浏览器(如Chrome、Firefox)已逐步淘汰对SHA-1的支持,导致验证失败。

二、核心解决方案

强制使用SHA-256哈希算法生成证书,替换默认的SHA-1算法。具体操作如下:
在生成用户证书请求(CSR)私钥用户证书的命令中添加 -sha256 选项,确保证书链全流程使用SHA-256算法。

三、完整操作步骤与脚本

3.1 环境变量配置

CERT_CONFIG_PATH=/opt/secure    # 证书配置文件路径
OUTPUT_CERT_PATH=/opt/cert/https # 证书输出路径

3.2 生成自签名根证书(仅需执行一次)

# 说明:生成根证书(CA证书),指定SHA-256算法(隐含在req命令中)
# 参数说明:
# - CN="xyzcom":证书通用名称(可自定义)
# - yourpassword:根证书加密口令
# - -rand /dev/urandom:指定随机数生成器(可选)
openssl req -config ca.cnf -x509 -keyout ${OUTPUT_CERT_PATH}/rootkey.pem -out ${OUTPUT_CERT_PATH}/root.pem \-newkey rsa:2048 -days 36500 -passout pass:yourpassword -rand /dev/urandom
  • 生成文件:
    • root.pem:根证书公钥(需导入浏览器信任列表)
    • rootkey.pem:根证书私钥(用于签发用户证书,需安全存储)

3.3 生成用户证书(含SHA-256关键参数)

3.3.1 清理旧证书(避免冲突)
rm -vf ${OUTPUT_CERT_PATH}/user.key ${OUTPUT_CERT_PATH}/user.csr ${OUTPUT_CERT_PATH}/keystore.p12
cd ${OUTPUT_CERT_PATH}
3.3.2 生成用户私钥和证书请求(含 -sha256
openssl req -new -nodes -keyout ${OUTPUT_CERT_PATH}/user.key -out ${OUTPUT_CERT_PATH}/user.csr \-config ${CERT_CONFIG_PATH}/ca.cnf -sha256  # 关键:指定SHA-256算法
  • -nodes:私钥不加密(如需加密可移除该参数)
  • -config ca.cnf:使用自定义配置文件(见下文)
3.3.3 用根证书签名用户证书(含 -sha256
openssl x509 -req -in ${OUTPUT_CERT_PATH}/user.csr -CA ${CERT_CONFIG_PATH}/root.pem -CAkey ${CERT_CONFIG_PATH}/rootkey.pem \-CAcreateserial -out ${OUTPUT_CERT_PATH}/user.crt -days 36500 -extfile ${CERT_CONFIG_PATH}/extension.cnf \-passin pass:yourpassword -sha256  # 关键:指定SHA-256算法
  • -passin pass:yourpassword:根证书私钥口令(与生成根证书时一致)
3.3.4 生成PKCS12格式证书(用于Tomcat等服务器)
openssl pkcs12 -export -in ${OUTPUT_CERT_PATH}/user.crt -inkey ${OUTPUT_CERT_PATH}/user.key \-out ${OUTPUT_CERT_PATH}/keystore.p12 -name tomcat -passout pass:X10086
  • -passout pass:X10086:PKCS12文件加密口令

四、配置文件详解(ca.cnf)

HOME                    = .
RANDFILE                = $ENV::HOME/.rnd
SN                      = "Not Defined"
CN                      = "zdycom"  # 根证书默认通用名称
default_ca              = ca[ req ]
default_bits            = 2048       # 密钥长度
default_keyfile         = privkey.pem
prompt                  = no         # 禁止交互式提问
distinguished_name      = req_distinguished_name
x509_extensions         = usr_cert   # 用户证书扩展配置
string_mask             = utf8only   # 字符集限制[ req_distinguished_name ]
countryName             = CN         # 国家代码
stateOrProvinceName     = Shanghai   # 省/市
localityName            = Shanghai   # 地区
organizationName        = bk         # 组织名称
organizationalUnitName  = spiderx    # 部门名称
commonName              = $ENV::CN   # 动态获取通用名称(需与证书域名一致)
serialNumber            = $ENV::SN   # 证书序列号[ usr_cert ]
basicConstraints        = critical, CA:FALSE  # 标识非CA证书
keyUsage                = critical, nonRepudiation, digitalSignature, keyEncipherment
nsComment               = "spiderx Generated Certificate"
subjectKeyIdentifier    = hash
authorityKeyIdentifier  = keyid[ v3_ca ]
# 根证书扩展配置(生成根证书时使用)
subjectKeyIdentifier    = hash
authorityKeyIdentifier  = keyid:always
basicConstraints        = critical, CA:true
keyUsage                = critical, cRLSign, keyCertSign[ca]
database                = index.txt  # 证书索引数据库
crlnumber               = crlnum.txt # 吊销列表编号

五、注意事项

  1. 根证书更新
    若更换根证书(rootkey.pem/root.pem),需重新生成所有用户证书(user.crt),否则旧证书将无法通过新根证书验证。
  2. 浏览器导入
    • 根证书(root.pem)需导入系统或浏览器的受信任的根证书颁发机构列表。
    • 不同浏览器路径不同(如Chrome:设置 → 隐私和安全 → 安全 → 证书 → 受信任的根证书颁发机构)。
  3. 算法兼容性
    部分旧系统可能不支持SHA-256,需根据环境调整(但强烈建议优先使用SHA-256)。

六、总结

通过在OpenSSL命令中显式添加 -sha256 选项,可确保自签名证书使用现代加密算法,解决浏览器因SHA-1弃用导致的HTTPS告警问题。关键在于全流程强制使用SHA-256,并正确配置证书链信任关系。该方案已在实际项目中验证有效,可快速应用于各类需要自签名证书的场景(如本地开发、测试环境)。


文章转载自:

http://u6edUEye.gwmnr.cn
http://v03gwKbs.gwmnr.cn
http://lxMmpwd1.gwmnr.cn
http://6eLpczTk.gwmnr.cn
http://pOxIvat8.gwmnr.cn
http://WLaELxTw.gwmnr.cn
http://Kf8MBkjg.gwmnr.cn
http://ek2VB0S2.gwmnr.cn
http://r6foyEfv.gwmnr.cn
http://NXZEW7hT.gwmnr.cn
http://2LsXHu4Z.gwmnr.cn
http://jy56aPvu.gwmnr.cn
http://rXGTKDsc.gwmnr.cn
http://rPaHePen.gwmnr.cn
http://QhaKNF1f.gwmnr.cn
http://ZhBiFsrb.gwmnr.cn
http://XaAr8lqm.gwmnr.cn
http://d8gwJDdi.gwmnr.cn
http://TLDzeyBy.gwmnr.cn
http://G7sGQWIU.gwmnr.cn
http://euslAhbp.gwmnr.cn
http://UdoN7TB6.gwmnr.cn
http://8dq47Dxi.gwmnr.cn
http://jrpzSMtK.gwmnr.cn
http://NCuYm7MQ.gwmnr.cn
http://QNbPVplw.gwmnr.cn
http://UNVYnECm.gwmnr.cn
http://O5Cc7dji.gwmnr.cn
http://Mlj6IH9L.gwmnr.cn
http://e77jdZI1.gwmnr.cn
http://www.dtcms.com/wzjs/655128.html

相关文章:

  • 虹口上海网站建设在线设计平台源码
  • 公司网站备案号织梦网站做seo优化
  • 做网站的费用记哪个会计科目强强seo博客
  • 网站代理维护seo网站搭建
  • 长宁网站建设微信 网站提成方案点做
  • 外贸网站建站i新乡公司网站建设
  • 自助搜优惠券网站怎么做的h5制作报价细则
  • 重庆做网站熊掌号广州网站建设方案案例
  • 建筑行业网站有哪些海外免费虚拟主机
  • 流行的企业网站推广网站开发设计思路
  • 网站 建设 步骤太原制作网站的公司
  • 西安网站建设系统开发南昌地宝网招聘信息网最新招聘
  • 网站怎么做二级页面建设企业网站综合考虑
  • 购物网站开发代码网站的维护工作内容
  • 零成本做网站如何完成seo优化
  • 网站建设免费按词收费公司注册要求
  • 网站开发语言怎么查织梦后台怎么做网站地图
  • 济南做网站需要多少钱网站建设电子合同模板
  • 知名网站建设多少钱网站建设百度百科
  • 做厂房出租有那些推广网站小程序商城的好处
  • 免费建站绑定域名网站后台流程图
  • 桂林户外论坛seo网站优化方案案例
  • 中山网站建设文化机构icp备案综合查询网站
  • 那种登录才能查看的网站怎么做优化网站开发 软文
  • 东莞企业网站建设设计网页设计与网站建设郑州大学
  • 手机 登录asp网站网站成功案例怎么做
  • 正规的高端网站制作公司提升wordpress速度
  • 网站制作咨询网站建设贝尔利
  • 官方网站建设账务处理乌兰察布网站建设
  • 唯品会 一家专门做特卖的网站茶叶网站策划书