node.js - node openssl起https服务 浏览器显示非安全连接 (windows环境)
PHP中文网
PHP中文网 2017-04-17 14:53:20
0
2
754

我按照

openssl genrsa -out ca.key 2048
openssl req -new -key ca.key -out ca.csr
openssl x509 -req -in ca.csr -signkey ca.key -out ca.crt
生成自签名根证书
openssl genrsa -out server.key 2048
openssl rsa -in server.key -pubout -out server.pem
openssl req -new -key server.key -out server.csr
openssl x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt
生成服务器证书

// app.js:
var options = {
    key: fs.readFileSync(’./keys/server.key’),
    cert: fs.readFileSync(’./keys/server.crt’)
};
https.createServer(options, (req, res) => {
    res.writeHead(200);
    res.end(‘hello world!’);
}).listen(443);

浏览器访问 https://localhost:443,显示:


然后我安装ca.crt,至 ‘受信任的根证书发布机构’目录(windows),再次访问仍然显示这个问题
观察了一下fiddler抓去https的方法,fiddler也是安装它自签名的证书 Do_Not_Trust_FiddlerRoot至’受信任的根证书发布机构’, 且开启fiddler抓包时,并不会报这个错误
这是什么原因呢?

PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(2)
Peter_Zhu

生成する署名は次のようにする必要があります。通常の SSL 認証局によって発行された署名のみがブラウザでセキュリティ証明書として認識されます。
WoSign などの第 1 レベルの証明書発行機関から無料の証明書を申請できます。署名を設定すると、ブラウザのアドレス バーの前に緑色の錠前が表示されます。

いいねを押す +0
洪涛

すべてのブラウザは自己署名 SSL 証明書へのアクセスをブロックします。WoSign の無料 SSL、startssl、letsencrypt など、多くの無料 SSL が市場に存在します。CA から信頼できる SSL 証明書を申請することをお勧めします。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート