Tag: ssl

使用node-ssl-root-cas库进行分条

我正在使用node-ssl-root-cas,因为在连接到HTTPS Web服务器时,出现了UNABLE_TO_VERIFY_LEAF_SIGNATURE错误。 使用node-ssl-root-cas库,我可以添加所需的CA证书: require('ssl-root-cas') .addFile(__dirname + '/rapidssl_1.crt') .addFile(__dirname + '/rapidssl_2.crt'); 但是,这可以防止在节点应用程序中进行条带请求。 进行条纹请求时出现以下错误。 rawType: undefined, code: undefined, param: undefined, message: 'An error occurred with our connection to Stripe', detail: { [Error: certificate not trusted] code: 'CERT_UNTRUSTED' }, raw: { message: 'An error occurred with our connection to Stripe', detail: { [Error: certificate not trusted] code: 'CERT_UNTRUSTED' […]

在Socket.io中获取SSL协议错误:

我在我的应用程序中使用socket.io。 当我工作没有ssl证书,它工作正常。 我是新的nodejs,我不知道,如何添加SSL证书。 有我使用前端的angularjs和后端的nodejs。 socket.io调用不工作,我得到SSL协议错误。 请帮助我,我做错了什么? 我的angularjs代码 var socket = io.connect('https://localhost:3001', { 'reconnect': true, 'reconnection delay': 500, 'secure' : true }); 我的nodejs代码 var fs = require('fs'); var PeerSync = require('./lib/PeerSync'); var HistoricSync = require('./lib/HistoricSync'); var http = require('http'); var https = require('https'); var express = require('express'); var program = require('commander'); var config = require('./config/config'); var […]

Websocket + SSL(WSS)客户端在C ++中的实现

我想在c ++中实现安全的websocket连接(WSS)。 我不想使用任何外部库。 我有正常工作(ws)连接的代码。 我也想添加对HTTPS的支持。 任何机构都可以告诉我如何继续下去。 例如:对于正常的ws连接: GET / foo HTTP / 1.1 主机:example.server.com 升级:websocket 连接:保持活着,升级 Sec-WebSocket-Key:dfGsdNhbXBsZSBub25REQ == Sec-WebSocket-Version:13。 我已经正在发送这些types的请求,创build正常的套接字和连接到服务器后的代码。 以同样的方式我也想做WSS。 请告诉我如何做到这一点。 谢谢, VVK。

用于HTTPScallback的Instagram API

我正在使用Instagram的订阅端点,如果我的callback_url是HTTPS,它会给我下面的错误消息; 它工作正常,如果callback_url是HTTP; 错误消息: { "meta": { "error_type": "APISubscriptionError", "code": 400, "error_message": "Invalid SSL certificate" } } PS:我看到这个线程说:“我认为这是因为我检查了SSL证书的api.instagram.com,它看起来不错”; 但是我不知道他们在哪里完全检查SSL证书? 我没有看到在Instagram开发者控制台中的这个选项… 这是否意味着callback_url不能是HTTPS? 任何想法我怎么能解决它?

DH Key太小,Google CloudSQL SSL

随着openssl和nodejs的最新更新,NodeJS不再可能连接到Google Cloud SQL over SSL。 OpenSSL版本中,节点0.12.6中的tls库现在拒绝任何具有512或1024的DH密钥长度的SSL密钥。但是Google Cloud SQL不允许我生成/上传自己的SSL私钥,而自动生成的似乎被拒绝了。 当我尝试连接到云SQL时,出现以下错误消息: Error: 140735270576896:error:14082174:SSL routines:SSL3_CHECK_CERT_AND_ALGORITHM:dh key too small:../deps/openssl/openssl/ssl/s3_clnt.c:3377: 我正在使用node-mysql2库进行连接 这里有一个可能的重复的问题: SSL操作失败,代码1:dh键太小但是他们没有讨论解决这个问题的方法。

节点中第二次请求延迟15秒

我有一个服务器需要发送多个http请求。 但是除第一个请求之外,每个请求都会触发一个15秒的延迟。 如果我从linux控制台,POSTman或Fiddler发送请求,它的工作很好,没有延迟,但我不能得到它从节点工作。 我已经尝试使用https.get() , request ,套接字,甚至在一个单独的文件分叉请求。 但延误还在。 服务器回复正确的Connection: close标题。 该服务器是一个nginx服务器。 从节点工作的唯一时间是如果我把我的请求在一个单独的脚本,只运行这个脚本。 这可能是有效的,因为节点在请求后退出并释放连接。 我曾尝试与agent: false ,我发送Connection: close服务器,但它为什么需要15秒钟closures,为什么不使用小提琴手或POSTMAN时发生这种情况? 编辑:添加代码。 这个代码在我第一次运行的时候运行的非常完美,但是如果我运行了两次或者更多的话,延迟就会出现。 这是导致延迟的第二个函数,第一个函数工作正常。 async.waterfall([ function(cb) { console.log('making first connection'); var post_data = querystring.stringify({ 'login' : username, 'password' : password }); var options = { hostname: 'hostname', port: 443, path: '/path', method: 'POST', agent: agent, pool: false, keepAlive: false, […]

使用node-apn发送Push始终返回无效标记(8)

我试图让我的node.js应用程序成功地发送推送通知到我的设备。 在开始的时候,我确定我的推送证书/密钥出错了,所以我在Ruby中写了同样的东西,只是为了确保它完美地工作。 当我尝试使用nomad-cli(命令行工具)或只是在Ruby中使用Nomad它工作正常,它需要一个包含密钥和证书的PEM文件 它看起来像这样 apn push "21329bc4164a56226a982f3daea4e3ace5e6c1788e4dc3a75248eca330b280a300" -c ./apns.pem -m "CLI Hello" 并返回“1推送通知成功发送”,立即显示在我的设备上。 在我的node.js代码中,我使用的是node-apn,它需要单独的证书和关键的PEM文件。 所以我尝试用各种方法分离,但我总是得到相同的错误: 无效令牌(8) 这是没有道理的,因为同样的道理与我写的Rubytesting中的同一个PEM文件一起工作… 我真的把我这些秃头的头发拉在这里…现在已经呆了两天了。 我尝试用以下方法分离: 试图将p12转换为pem,并在证书/关键字段中使用PEM 转换为PEM,然后手动打开PEM,并将其分离为key.pem和cert.pem(使用—–BEGIN CERTIFICATE—–和—–BEGIN RSA PRIVATE KEY—– 尝试分开使用以下命令: openssl pkcs12 -in apns.p12 -nocerts -out key.key // Extract key openssl rsa -in key.key -outform PEM -out key.pem // Decrypt key openssl pkcs12 -in apns.p12 -clcerts -nokeys -out cert.pem […]

我应该在哪里存储我的密钥和https服务器证书(Node.js)

我对ssl非常陌生,并且无法使用https设置我的节点项目。 我已经注册并获得了StartSSL的免费证书。 我有一个名为key.pem的文件我的私钥。 我已经validation了我的域名,并在cert.pem文件中有我的证书。 以下是我在HTTP上设置服务器的方法: var server = require('http').createServer(app); var port = process.env.PORT || 3000; server.listen(port, function () { console.log('Server listening at port %d', port); }); 这工作正常,所有我的页面加载相应。 以下是我如何设置我的https服务器: var https = require("https"); var fs = require("fs"); var key_file = "key.pem"; var cert_file = "cert.pem"; var passphrase = "…"; var config = { key: fs.readFileSync(key_file), cert: […]

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

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

服务器中止SSL握手错误

我无法获得运行在HTTPS工作node.js后面的服务器。 我的目标是让一个Hapi服务器运行一个自签名证书。 这就是我如何生成我的自签名证书: openssl genrsa -out key.pem openssl req -new -key key.pem -out csr.pem openssl x509 -req -days 9999 -in csr.pem -signkey key.pem -out cert.pem rm csr.pem 这是我在Hapi启动服务器的方式: server.connection({ port: 9920, tls: { key: fs.readFileSync(path.resolve(__dirname, './cert/key.pem')), cert: fs.readFileSync(path.resolve(__dirname, './cert/cert.pem')), rejectUnauthorized: false }, routes: { cors: true } }); 为了validation它不是一个Hapi唯一的问题,我证实,这也不能在香草node.js工作: var https = require('https'); var fs […]