Tag: ssl

HTTP 400:ADFS HTTPS请求中的错误请求错误

我正在写一个Node.js应用程序,并试图集成一个ADFS服务器来获取身份validation。 为此,我正在使用wstrust-client ,并使用ADFS服务器URL作为我的端点。 我的代码到目前为止是: app.get('/login', function(req, res) { trustClient.requestSecurityToken({ scope: 'https://mycompany.com', username: "username", password: "password", endpoint: 'https://[adfs server]/adfs/services/trust/13/usernamemixed' }, function (rstr) { // Access the token var rawToken = rstr.token; console.log('raw: ' + rawToken); }, function(error) { console.log(error) }); }); 我通过wstrust-client请求https 我到目前为止在wstrustclient.js代码是: var req = https.request(post_options, function(res) { res.setEncoding('utf8'); res.on('data', function(data) { console.log("Entered res") var […]

用sails.js修改响应头来实现HSTS

我正在使用sails.js实现一个nodejs应用程序。 我希望我的用户只通过https进行通信。 所以为此,我需要按我的方式configuration我的服务器,以便每次响应都会添加一个标头“Strict-Transport-Security”,“max-age = 31536000”来告诉浏览器只与HSTS进行通信。 现在我怎么可以修改每个响应头,我将从风帆js.我搜查文件,但没有find任何帮助。

如何创buildnodejs ssl服务器?

nodejs版本:0.8.6 我使用openssl创build了一个ssl csr文件,命令如下:openssl req -nodes -newkey rsa:2048 -keyout myserver.key -out myserver.csr csr内容被发送到我的SSL提供商,证书被发回。 现在我想创build一个SSL安全的服务器: var fs = require("fs"); var https = require('https'); var credentials = { key: fs.readFileSync(options.base_project_folder + 'privatekey.pem'), cert: fs.readFileSync(options.base_project_folder + 'certificate.pem') }; var server = https.createServer(credentials, app); server.listen(port, address, function() { var addr = this.address(); console.log('listening on %s:%d', addr.address, addr.port); }); 服务器正在运行,但我得到:“SSL连接错误” 试图检查我所做的问题:openssl […]

在可以处理多个安全域的NodeJS中创build一个反向代理

我正在尝试在NodeJS中创build一个反向代理。 但我一直在运行的问题是,即使我想为多个域服务,我也只能在同一个端口(443)上提供一套authentication/密钥对。 我已经做了研究,并继续跑到同一个路段: 可以服务多个域的节点脚本从非安全的本地源(http本地访问和服务https公共) 让我dynamic服务器SSL证书通过域标头 例: https://www.someplace.com:443将从http:// thisipaddress:8000中获取并使用www.someplace.com的证书和密钥文件 https://www.anotherplace.com:443将从http:// thisipaddress:8080中提取,并使用www.anotherplace.com的证书和密钥文件 等。 我看过使用NodeJS的https.createServer(options,[requestListener]) 但是这个方法每个端口只支持一个证书/密钥对 我找不到根据域标头dynamic切换证书的方法 我不能要求我的人使用自定义的https端口 如果我为多个域名提供相同的SSL证书,即使它是安全的,我也会碰到浏览SSL证书错误 我看着node-http-proxy,但据我所见,它有相同的限制 我查看了Apache的mod-proxy和nginx,但我宁愿有一些我可以直接控制的东西 如果任何人都可以向我展示一个使用NodeJS和https.createServer或node-http-proxy从同一端口号(443)提供多个安全域的示例,那么我将对此感激不尽。

通过Mongoose.js连接到使用SSL和mongos的Compose.io MongoDB部署

我正在使用compose.io来托pipetesting和生产mongodb数据库,并试图使用mongoose.js(使用标准nodejs mongodb驱动程序)通过节点应用程序进行连接。 我的连接选项如下: var connectionString = 'mongodb://user:password@host1:port1,host2:port2/dbname?ssl=true'; var options = { mongos: true, server: { ssl: true, sslValidate: true, sslCA: [fs.readFileSync('/path/to/cert/certificate.pem')] // cert from compose.io dashboard } } mongoose.createConnection(connectionString, options); 虽然这个连接似乎悬而未决。 我没有收到服务器的错误,也没有收到“公开”事件。

如何访问OpenShift通配符SSL证书和私钥

在OpenShift网站上: https ://help.openshift.com/hc/en-us/articles/202535440-How-do-I-get-SSL-for-my-domains-,它陈述 You can always take advantage of our *.rhcloud.com wildcard certificate in order to securely connect to any application via it's original, OpenShift-provided hostname URL. 但是,Node的HTTPS服务器需要指向证书和私钥的文件path才能使用HTTPS: var privateKey = fs.readFileSync('sslcert/server.key', 'utf8'); var certificate = fs.readFileSync('sslcert/server.crt', 'utf8'); var credentials = {key: privateKey, cert: certificate}; var express = require('express'); var app = express(); var httpsServer […]

如何修复在nodejs中缺less中间/链式证书

我已经在我的服务器上安装了nodejs和ssl 和我的app.js代码 var sslOptions = { key: fs.readFileSync('/etc/ssl/private/private.key'), cert: fs.readFileSync('/etc/ssl/certs/cert.com.crt'), requestCert: true, ca: fs.readFileSync('/etc/ssl/certs/ca.crt'), rejectUnauthorized: false }; var secureServer = https.createServer(sslOptions,app).listen(443, function(){ console.log("Express server listening on port "); }); 现在当我检查 https://www.sslshopper.com/ 它给我错误 所有Web浏览器都不信任该证书。 您可能需要安装中间体/链式证书才能将其链接到受信任的根证书。 详细了解这个错误。 您可以通过遵循适用于您的服务器平台的Comodo证书安装说明来解决此问题(使用InstantSSL的这些说明)。 注意关于中间证书的部分。 任何想法 ? 如何解决这个问题

使用Node.js通过SSL连接到MongoDB

如何使用Node.js通过SSL连接到MongoDB服务器? 我已经阅读了一些驱动程序( mongojs , mongodb-native )的源代码,我一直在使用googlesearch,但似乎找不到任何适当的教程,指南或文档。

保护Socket.io

我正在使用一个基于Node.js的https服务器,使用HTTP Basic进行身份validation(数据通过SSLencryption连接发送,这很好)。 现在我想提供一个应该是的Socket.io连接 encryption和 仅限经过身份validation的用户。 问题是如何做到这一点。 我已经发现,在连接到套接字时,我需要在客户端JavaScript代码中指定{ secure: true } ,但是如何在服务器端强制套接字连接只能通过SSL运行,而且它只能工作对于经过authentication的用户? 我认为SSL是简单的部分,因为Socket.io服务器只绑定到https服务器,所以它应该只使用SSL运行,并且不应该通过(另外)运行的http服务器运行它, 对? 关于另一件事,我没有丝毫的想法确保只有当用户使用HTTP Basic成功validation后才能build立套接字连接。 有任何想法吗?

在node.js中使用socket.io设置服务器 – 服务器SSL通信

我试图通过ssl连接使用socket.iobuild立服务器到服务器的链接。 这是我的例子: /** * Server */ var app = require('express')(); var config = require('./config'); var https = require('https'); var http = require('http'); var fs = require('fs'); var server = https.createServer({key: fs.readFileSync(config.ssl.key), cert: fs.readFileSync(config.ssl.cert), passphrase: config.ssl.passphrase}, app); //var server = http.createServer(app); var io = require('socket.io').listen(server); server.listen(config.port); app.get('/', function (req, res) { res.send('Server'); //res.sendfile(__dirname + '/index.html'); }); […]