Articles of ssl

在Node express应用程序中安装Entrust SSL证书

我不知道如何传递给定的证书来启动https服务器。 Entrust提供了以下文件: 1.根证书。 (。文本) 2.链接根证书文件。 (。文本) 3.连锁证书。 (。文本) 4.服务器证书。 (.CRT) 我的快递应用程序目前需要 exports.key1 = { key:'./server/config/keys/server.key', // ? cert:'./server/config/keys/server.crt', // ? ca:'./server/config/keys/ca.csr' //given to entrust to generate their cert }; 我不知道如何修改密钥来匹配新的文件。

HTTP代理(Node.js)不执行正确的SSLvalidation

我需要创build一个能够处理SSL证书validation的代理服务器。 我一直在使用Node.js的http-proxy库来处理sslvalidation。 我的问题是代理服务器没有做任何事情来validation客户端是否有适当的凭据。 我有一个代理服务器,我传递的ssl certRequire = true和rejectUnauthroized = true的服务器options 。 但是,客户端能够连接到没有证书/密钥的服务器,我不知道为什么。 这是我的代码: var options = { ssl: { key: fs.readFileSync('/Users/grantherman/Desktop/ssl_certificates/client1-key.pem'), cert: fs.readFileSync('/Users/grantherman/Desktop/ssl_certificates/client1-crt.pem'), requestCert: true, rejectUnauthorized: true } }; var proxy = new httpProxy.createProxyServer(options); http.createServer(function (req, res) { setTimeout(function () { proxy.web(req, res, { target: { host: 'localhost', port: 9002 } }); }, 200); }).listen(8002); //Server […]

Node.js SSL错误 – 没有可用的密码

我能够使用request.js模块上传文件到Dropbox。 我正在尝试使用纯Node.js https.request()和request.write()来上传文件。 由于Dropbox需要https连接,我正在使用https.request()。 但是我使用它们时收到错误(第二个代码): 当secureProtocol是SSLv2_method时: Problem with request: 3074844416:error:140650B5:SSL routines:CLIENT_HELLO:no ciphers available:../deps/openssl/openssl/ssl/s2_clnt.c:562: 在将secureProtocol更改为SSLv3_method后,我收到错误消息: Problem with request: write EPROTO 3074537216:error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number:../deps/openssl/openssl/ssl/s3_pkt.c:348: 我无法安装Kerberos。 这可能是问题吗? 这是我的代码: 使用request.js模块:在最后几行我将可读stream传递给request.put()。 var crypto = require('crypto'), express = require('express'), request = require('request'), url = require('url'), cookieParser = require('cookie-parser'), fs = require('fs'); app = express(); app.use(cookieParser()); var APP_KEY = 'opmdwo6kpnyswfp'; var […]

WebSocket WS SSL

我正在使用Google App Engine / Managed VM来使用Web套接字开发nodeJS应用程序。 作为应用程序的一部分,前端需要使用Websockets连接,例如 connection = new WebSocket('wss://127.0.0.1:3001'); 我正在努力的是如何确保SSL部分工作。 我当前的代码来启动WebSocketServer是: var WebSocketServer = require('ws').Server; var wss = new WebSocketServer({port:3001}); 但是这只会创build一个标准的服务器(即ws://127.0.0.1:3001)。 我的问题是,使用WebSocketServer,我如何创build一个WebSocketServer用于SSL?

如何使用JavaScript请求库忽略无效的SSL证书?

有没有办法使用stream行的请求库忽略无效SSL证书: https : //www.npmjs.com/package/request 我在一个nodejs服务器中使用这个命令向具有自签名证书的服务器发出https请求,并且需要能够忽略无效的ssl证书。 我在文档中找不到这个选项,有没有人知道这是可能的?

如何在节点中使用客户端证书进行HTTPS GET

我可以使用curl来进行GET请求 – > `curl -v https://example.com:82/v1/api?a=b` -E client_cert.pem:password 我怎样才能在节点中使用相同的。 我试过请求,绝对不能通过证书。 提前致谢!

Node.js无法从电报bot websocket中获取数据

我正在尝试使用自签证书与nodejs https服务器build立一个电报机器人。 ssl证书: openssl req -newkey rsa:2048 -sha256 -nodes -keyout key.pem -x509 -days 365 -out crt.pem -subj "/C=IR/ST=A.Sh/L=Tabriz/O=DominoSystem/CN=5.235.36.42" 非常简单的服务器: var options = { key : fs.readFileSync(__dirname + '/key.pem'), cert: fs.readFileSync(__dirname + '/crt.pem') }; https.createServer(options, function (req, res) { console.log('https server'); console.log(req.url); res.end('yoo hooo'); }).listen(8443,'0.0.0.0'); 服务器可通过Internet访问: https://5.235.36.42:8443/ : https://5.235.36.42:8443/ : https://5.235.36.42:8443/ Telegram bot setWebhook返回ok {"ok":true,"result":true,"description":"Webhook was […]

如何将.crtstring转换为.der证书二进制文件并将其保存到Redis中?

我试图将.crtstring转换成.der证书并将其保存到Redis中。 我试图用Nodejs复制以下步骤 openssl x509 -outform der -in certificate.pem -out certificate.der openssl rsa -outform DER -in key.pem -out key.der redis-cli -x HMSET domain:testsite1.com cert < testsite1.com.der redis-cli -x HMSET domain:testsite1.com key < testsite1.com.key.der .crtstring看起来像这样 —–BEGIN CERTIFICATE—– XXXXXXXXXXX —–END CERTIFICATE—– —–BEGIN CERTIFICATE—– XXXXXXXXXX —–END CERTIFICATE—– —–BEGIN CERTIFICATE—– XXXXXXXXX —–END CERTIFICATE—– 这是我使用node-forge forge npm和redis失败的尝试。 var certDER = forge.asn1.toDer(forge.pki.certificateToAsn1('/opt/resty/ssl/*.ngdeploy.com.chained.crt',{encoding: […]

从Client.py到Node Server.js的套接字(_ssl.c:590)

我得到这个错误 File "C:\Python27\lib\ssl.py", line 844, in connect self._real_connect(addr, False) File "C:\Python27\lib\ssl.py", line 835, in _real_connect self.do_handshake() File "C:\Python27\lib\ssl.py", line 808, in do_handshake self._sslobj.do_handshake() ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) 我试图build立一个安全的连接(ssl.socket)之间的python客户端和node.js服务器,我采取了上述错误。 我不知道什么是缺失或什么是我的错。 这里是我的源代码python客户端和node.js服务器 Node.js中的服务器套接字: var _HOST = '192.168.1.136'; var _PORT = 1337; var _address; const tls = require('tls'); const fs = require('fs'); const options = […]

如何为节点js项目创build一个.pem和.cert文件

我想运行一个https服务器。 我在网上find这个代码: var fs = require('fs'), http = require('http'), https = require('https'), express = require('express'); var port = 8000; var options = { key: fs.readFileSync('./ssl/privatekey.pem'), cert: fs.readFileSync('./ssl/certificate.pem'), }; var app = express(); var server = https.createServer(options, app).listen(port, function(){ console.log("Express server listening on port " + port); }); app.get('/', function (req, res) { res.writeHead(200); res.end("hello world\n"); […]