Tag: https

我怎样才能find一个客户端可用的密码套件

我正在运行一个节点服务器,我需要找出一个请求客户端可以支持的密码套件。 这可能与一个实例吗?

使用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"; […]

在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,但仍然失败。 有谁知道如何解决这一问题?

Websocket – WSS在video录制中不支持HTTPS

应用程序+实施概述 在应用程序中,我们需要执行video录制。 我们继续使用托pipe在https://developer.mozilla.org/en/docs/Web/API/MediaRecorder_API的 MediaRecorder API。 我们是getUserMedia API来访问webcam和麦克风。 我们正在使用MediaRecorder API来logging短Blob,并在托pipeNodeJS WebSocket的应用程序服务器上发送它。 (每2秒发生一次数据传输到服务器。 在应用服务器上,我们继续累积数据,最后创build一个.webm媒体文件。 问题:所有这些都与HTTP协议工作正常,但每当我们把应用程序在SSL上,并开始以下面的描述erring; 错误文本:“WebSocket连接到'wss:// localhost:9000 /'失败:WebSocket打开握手被取消” 错误截图: http : //s33.postimg.org/9xasw0qa7/web_Socket_SSLIssue.jpg 你们中的任何一个人可以指导我们在这里特别针对HTTPS的问题。

Socket.IO – 服务器不会在SSL下向客户端发送响应

我和socket.io以及NodeJS碰到了一个很大的问题。 我尝试通过HTTPS下的Socket.IO与NodeJS服务器通信,但是当服务器向客户端发送响应的时候,它什么都不做。 我已经检查过,但这不是证书错误! 密钥和证书是有效的。 但是,没有HTTPS,它完美的工作。 这是我的代码: var express = require('express'), fs = require('fs'); var config = JSON.parse(fs.readFileSync(__dirname + '/config.json', 'utf8')), options = config.options || {}; var PORT = options.port, SSL_PORT = options.ssl_port; var app = express(), server = require('http').createServer(app); io = require('socket.io').listen(server); server.listen(PORT, function() { startServer(io); }); if (options.ssl_key.length && options.ssl_cert.length) { var sslOpt = […]

node.js通过HTTPS获得文件套接字hangup

我想通过https从一个URL获取文件,并得到以下错误: 错误:套接字挂断 有趣的是,通过浏览器访问这个文件和curl正在工作,但不是通过node.js(请求)和wget。 我调查了这个问题,发现了以下内容: 服务器的SSL证书由DigiCert颁发,并包含一个通常不预安装的证书,即:DigiCert SHA2高保证服务器CA. DigiCert High Assurance EV Root CA中的其他证书应该没问题 该服务器还支持有限的TLS协议。 只有SSL3(这是不安全的和TLS 1.0支持) 如上所述,我可以通过curl来获取文件。 当使用wget时,只有在明确设置SSL协议并提供ca cert证书链文件(wget –secure-protocol = TLSv1 -ca-certificate =“path / to / ca-chain-file.pem” //path/to/image.jpg ) 现在我试图完成两件事情,但都失败了: 用我的操作系统注册ca-cert(本地MAC,服务器在Ubuntu上运行) 在我的节点应用程序中提供GET请求时提供这些额外的configuration: request.get({ url: location, encoding: 'base64', agentOptions: { ca: fs.readFileSync('path/to/ca-chain-file.pem'), secureProtocol: 'TLSv1_method' } }) 请帮忙

Express vhosts + https

有没有什么办法可以在https上使用Express运行vhosts? 我目前的代码(非SSL)如下所示: var express = require('express'); var vhost = require('vhost'); var path = require('path'); var appOne = express(); var appTwo = express(); var appVhosts = module.exports = express(); appOne.use(express.static(path.join(__dirname, 'pages'))); appTwo.get('/', function(req, res){ res.send('That service isn\'t up right now!') }); app.use(vhost('siteone.com', appOne)); app.use(vhost('sitetwo.com', appTwo)); appVhosts.listen(80); 不过,据我所知,https模块只接受一个ssl证书。

Firebase HTTP云端函数.send()返回什么?

我正在尝试从我的Android应用程序获取Firebase云端function的价值。 云function如下: exports.checkIfNumberExists = functions.https.onRequest((request, response) => { var db = admin.database(); var ref = db.ref("numbers"); var query = ref.orderByKey(); var exists = "false"; query.once("value" ,function(snapshot){ snapshot.forEach(function(childSnapshot){ if(childSnapshot.key === request.query.number){ exists = "true"; } }); response.send(exists); }); }); 我不明白什么types的数据做.send()函数返回,我认为它是纯文本,但昨天firefox得到它为JSON时, exist价值是布尔值,而不是string。 用firefox打开url会返回true或false ,但是当我尝试从Android或Javascript发出一个http get请求时,它拒绝访问它。 什么是.send()函数的返回types?