嘟嘟社区

请教一个HTTPS自签问题


本帖最后由 xixi3 于 2022-5-6 15:22 编辑

想折腾一个自签的HTTPS,IOS上安装了CA证书访问依然爆错,我感觉没有设置错误啊。




my-openssl.cnf文件如下

  1. [ ca ]
  2. default_ca = CA_default
  3. [ CA_default ]
  4. x509_extensions = usr_cert
  5. [ req ]
  6. default_bits        = 2048
  7. default_md          = sha256
  8. default_keyfile     = privkey.pem
  9. distinguished_name  = req_distinguished_name
  10. attributes          = req_attributes
  11. x509_extensions     = v3_ca
  12. string_mask         = utf8only
  13. [ req_distinguished_name ]
  14. [ req_attributes ]
  15. [ usr_cert ]
  16. basicConstraints       = CA:FALSE
  17. nsComment              = "OpenSSL Generated Certificate"
  18. subjectKeyIdentifier   = hash
  19. authorityKeyIdentifier = keyid,issuer
  20. [ v3_ca ]
  21. subjectKeyIdentifier   = hash
  22. authorityKeyIdentifier = keyid:always,issuer
  23. basicConstraints       = CA:true

复制代码

CA签名指令:

  1. openssl genrsa -out ca.key 2048
  2. openssl req -x509 -new -nodes -key ca.key -subj "/CN=example.ca.com" -days 5000 -out ca.crt

复制代码

证书签名指令:

  1. openssl genrsa -out ca.key 4096
  2. openssl req -x509 -new -nodes -key ca.key -subj "/CN=ca.qingmuhy.com" -days 36500 -out ca.crt
  3. openssl genrsa -out server.key 4096
  4. openssl req -new -sha512 -key server.key
  5.     -subj "/CN=webdav.qingmuhy.com"
  6.     -reqexts SAN
  7.     -config <(cat my-openssl.cnf <(printf "n[SAN]nsubjectAltName=DNS:webdav.qingmuhy.com"))
  8.     -out server.csr
  9. openssl x509 -req -days 36500
  10.         -in ios.csr -CA ca.crt -CAkey ca.key -CAcreateserial
  11.         -extfile <(printf "subjectAltName=DNS:webdav.qingmuhy.com")
  12.         -out server.crt

复制代码

相关的文件放在附件里了,因为后面我还要再重新弄,所以发也没啥问题,请懂得MJJ能帮忙指点一下,看了好几个HTTPS原理视频了,总找不到问题所在。

最后不管你知不知道问题在哪,感谢你看到这里。

自签名.rar

1 小时前 上传

点击文件名下载附件

5.36 KB, 下载次数: 0

这个问题很简单,看头像

表妹 发表于 2022-5-6 15:22
这个问题很简单,看头像

还真是贫穷问题,买不起一年的SSL用在NAS上,想着不如自己签一个。

xixi3 发表于 2022-5-6 15:23
还真是贫穷问题,买不起一年的SSL用在NAS上,想着不如自己签一个。

要买啥啊,Let’s Encrypt免费的,虽然证书只有90天,但是配个acme.sh/lego就能自动续期

这是最好的年代 发表于 2022-5-6 15:24
要买啥啊,Let’s Encrypt免费的,虽然证书只有90天,但是配个acme.sh/lego就能自动续期 …

反正各种问题纠结在一起,最后还是直接导入长期证书是最优解。

这是最好的年代 发表于 2022-5-6 15:24
要买啥啊,Let’s Encrypt免费的,虽然证书只有90天,但是配个acme.sh/lego就能自动续期 …

因为威联通只能导入证书,如果设置Acme的话因为官方没有CLI导入,只能在再装个nginx反代,但装那么多东西的话,内存就会吃紧(会很卡),所以还是一次性导入个长期的证书最方便。

这是最好的年代 发表于 2022-5-6 15:24
要买啥啊,Let’s Encrypt免费的,虽然证书只有90天,但是配个acme.sh/lego就能自动续期 …

然后威联通官方可以用Acme,但是只能用80 443 验证,这些端口被运营商封了,想用DNS验证因为没有官方的证书导入API,就要装一堆东西反代,又回到了内存困局上。