Articles of ssl

https.createServer忽略ca数组

我使用下面的选项传递给https.createServer, options = ca: splitca fs.readFileSync sslpaths.capath, encoding:'utf8' key: fs.readFileSync sslpaths.keypath, encoding:'utf8' cert: fs.readFileSync sslpaths.certpath splitca只是分裂CA crt包文件的两个pem块。 但有时Chrome不喜欢这一点,当我加载我的域时,它说证书不能被信任。 然后,有时它工作得很好,显示两个Comodo CA节点来自addTrust根,然后是我的服务器证书。 当我使用openssl s_client -connect mydomain.com:443 -showcerts我得到错误“无法获得本地发行者证书”。 当我完全删除ca参数时,Chrome仍然有时会工作,但openssl在证书链中仍然没有两个CA pem块。 我猜测,Chrome正在自己查找CA并caching证书? 我也试着将CA crt文件添加到服务器crt文件的前面,在升级nodejs(v0.12)之前,我会从openssl获得一些握手sslv3失败。 现在,当我尝试使用nodejs v5.0时, 出现错误:0B080074:x509证书例程:X509_check_private_key:从nodejs抛出键值不匹配 。 任何帮助,将不胜感激。

使用npm包http-proxy在Meteor下设置SSL

我正在尝试使用SSL-Meteorpedia来设置SSLmeteor。 我已经安装了meteorhacks:npm,并在pakcages.json文件中定义了当前版本的npm http-proxy包。 现在我已经在服务器文件夹中设置了以下meteor方法: Meteor.methods({ 'ssl': function(options) { var fs, httpProxy, proxy; httpProxy = Meteor.npmRequire('http-proxy'); proxy = httpProxy.createProxyServer(options); fs = Meteor.npmRequire('fs'); http.createServer(function(req, res) { return proxy.web(req, res, { target: "http://" + this.connection.httpHeaders.host + "3000" }); }); proxy.on('error', function(e) { if (DEV_MODE) { return console.log(e); } else { return document.body = "The request couldn't be handled"; […]

Node.js让我们在Chrome中encryptionfile upload错误

在Node.js(Sails.js)应用程序中启用了SSL,我无法上传大文件。 我的上传工作正常,没有SSL。 目前,在configurationSSL的情况下,我只能上传非常小的文件。 我正在使用“让我们encryption”SSL证书。 我也意识到,这种行为只能在谷歌浏览器(版本47.0.2526.106米),如果我上传超过100Kb的文件,它会返回我302 Moved Temporarily 。 Firefox似乎正在做的很好。

使用TLS(SSL)从flash v11 +连接到nodejs

我最近开始创build一个服务器,用于我自己构build的mmorpg,我使用节点js作为服务器语言。 我在网上search了一下,发现使用TLS是authentication和通过TCP / IP创build安全会话的方法。 一切工作正常,我创build了一个证书,并使用openssl自己用我在网上find的一些命令对它进行了签名,它给了我可以用在我的服务器上的密钥和证书。 我尝试用openssl连接,一切正常。 js使用的证书节点是PEM格式。 这就是我使用的服务器代码: var tls = require('tls'); var fs = require('fs'); var options = { key: fs.readFileSync(__dirname + '/server.key'), cert: fs.readFileSync(__dirname + '/server.crt'), //requestCert: true, //rejectUnauthorized: false, }; tls.createServer(options, function(sock) { //stuff here }).listen(PORT, HOST); 现在,我的游戏是闪光灯。 所以我尝试连接使用SecureSocket进来的Flash Player版本10+我相信。 问题是闪存使用DER X.509证书格式。 所以我使用openssl将.PEM文件转换为.DER文件,并将其加载到Flash中。 当我尝试连接到我的服务器(这是两个本地主机,想提一下它改变的东西),我可以看到连接尝试在我的服务器,但它立即closures连接。 这是来自闪存的错误: Secure socket supported: true ioErrorHandler: [IOErrorEvent type="ioError" […]

在nodejs中使用GoDaddy的HTTPS证书:cert.crt和sf_bundle-g1-g2.crt

我发现这个相关的问题: 用godaddy gd_bundle.crt运行SSL node.js服务器 其中概述了拆分证书的过程,但使用三个属性:证书,CA和密钥。 我只有两个文件从我的HTTPS注册GoDaddy: cert.crt (Not the name of the original but I'm fairly confident this is the certificate) sf_bundle-g1-g2.crt (Is the actual name of the provided file) 现在文件和文件名似乎声称sf bundle是两个证书的组合,但是我的看起来是这样的: —–BEGIN CERTIFICATE—– MIIFADCCA+igAwIBAgIBBzANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT —–END CERTIFICATE—– —–BEGIN CERTIFICATE—– MIIEoDCCA4igAwIBAgIDORSEMA0GCSqGSIb3DQEBCwUAMGgxCzAJBgNVBAYTAlVT MSUwIwYDVQQKExxTdGFyZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTIwMAYDVQQL —–END CERTIFICATE—– —–BEGIN CERTIFICATE—– 3QUmNUqMZbhSa4Hs0py1NBCXnD7GL+2OQkIkLulzmiX5EfHyI2nL5ZRpoNLcsPxE iawXqMzVN3cWxYC5DI9XAlWZhXtJ8C5boMJXU12i6KY3wwH6 —–END CERTIFICATE—– 再次,我已经梳理了文档,似乎我只是提供了所有这些3在nodeJS的https模块options.ca数组属性中的位置。 但是,似乎我缺less一个文件。 我有一个证书,3卡,但没有钥匙。 这是一个可接受的configuration? 或者是sf_bundle的某个部分应该是我的钥匙? […]

Socket.io Android HTTPS – 连接错误xhr轮询错误

我正在开发一个聊天应用程序与HTTPS。 这是我用过的Socket.IO 服务器 首先我用node.js和节点模块"socket.io": "^1.4.5"开发了服务器"socket.io": "^1.4.5" 在服务器上我有这个: var secure = { ca: fs.readFileSync('ca.pem'), key: fs.readFileSync('key.key'), cert: fs.readFileSync('cert.crt') }; var server = https.createServer(secure, app); var io = require('socket.io')(server); 客户端 我用https://cdn.socket.io/socket.io-1.4.5.js开发了这个网站 我使用pod 'Socket.IO-Client-Swift', '~> 5.5.0'开发了iOS应用程序, 最后我正在开发Android应用程序 编译('io.socket:socket.io-client:0.7.0'){ 排除组:'org.json',模块:'json' } 在网站和iOS应用程序我没有问题的websocket,但是当我尝试连接Android应用程序中的套接字我收到以下错误: io.socket.engineio.client.EngineIOException:xhr轮询错误 谢谢

在AWS EC2上使用SSL证书启动nodejs服务器

我试图用httpsconfiguration服务器。 在本地服务器上,本地私钥和证书工作。 代码是: var https = require('https'); const options = { key: fs.readFileSync('./privatekey.key'), cert: fs.readFileSync('./certificate.crt') }; var server = https.createServer(options, app); 但是,当我购买SSL证书并尝试在AWS服务器上使用它时,根本不起作用。 var https = require('https'); const options = { key: fs.readFileSync('privatekey.pem'), cert: fs.readFileSync('./ssl/portal.crt'), ca: [fs.readFileSync('./ssl/portal.ca-bundle')] }; 它总是显示网页不可用。 我也尝试将服务器证书上传到AWSconfiguration,但仍然失败。 有谁知道如何解决这一问题?

如何通过socket.io设置一个安全的websocket(ssl / wss)?

一切正常,没有ssl连接。 在我设置之后回复的回复: socket.io-1.4.5.js:1 GET https://domain.com:3000/socket.io/?EIO=3&transport=polling&t=LILwU3l net::ERR_INSECURE_RESPONSE 服务器 node.js v.6.1 的package.json { //…, "dependencies": { "socket.io": "1.4.5" } } server.js 看看如何声明socket.io解决了如何创build一个服务器: https : //github.com/socketio/socket.io/blob/master/lib/index.js#L212 const fs = require('fs'), https = require('https').createServer( { // certificate by godaddy (G2) key : fs.readFileSync('/etc/ssl/private/domain.key'), cert: fs.readFileSync('/etc/ssl/certs/domain.crt') }, (req, res) => { res.writeHead(404); res.end(); }).listen(3000), io = require('socket.io')(https); io.on('connection', (socket) => […]

如何修复授权在node.js中需要的错误?

在node.js我得到问题(错误:SSL错误:SELF_SIGNED_CERT_IN_CHAIN)获取库,所以我试着从这里的解决scheme 在使用npm时收到错误:'错误:SSL错误:SELF_SIGNED_CERT_IN_CHAIN' 这是运行 npm config set strict-ssl false 现在当我试图find一个图书馆,我得到这个: npm ERR! registry error parsing json npm ERR! Windows_NT 6.3.9600 npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\node node_modules\\npm\\bin\\npm-cli.js" "install" "imagemin" npm ERR! node v4.4.4 npm ERR! npm v2.15.1 npm ERR! Unexpected token < npm ERR! <HEAD><TITLE>Authorization Required</TITLE></HEAD> npm ERR! <BODY BGCOLOR="white" FGCOLOR="black"><H1>Authorization Required</H R> npm ERR! […]

METEOR设置:我收到错误

我做了一切都成功了,但卡在这里(见附件),不知道该怎么做,任何人都可以分享他们的经验。 我在安装MEAN堆栈时遇到的同样的错误,但是设置了npm config ssl false并且获得了成功,但是在METEOR的情况下,我无法find任何configuration设置,我可以在哪里切换“SSL”和证书authentication。 任何帮助将不胜感激。