remove encryption from nodejs server
This commit is contained in:
parent
b0df352f70
commit
a324a9edad
@ -17,7 +17,7 @@ class APIMethods {
|
|||||||
cb({ result: require("./server-info") });
|
cb({ result: require("./server-info") });
|
||||||
}
|
}
|
||||||
|
|
||||||
setSession (isEncrypted, address, { key, counter }, cb) {
|
/*setSession (isEncrypted, address, { key, counter }, cb) {
|
||||||
if (!global.config.server.secureMode)
|
if (!global.config.server.secureMode)
|
||||||
return cb({ error: "Encryption is off by configuration file into server" });
|
return cb({ error: "Encryption is off by configuration file into server" });
|
||||||
if (!isEncrypted)
|
if (!isEncrypted)
|
||||||
@ -28,7 +28,7 @@ class APIMethods {
|
|||||||
} catch (err) {
|
} catch (err) {
|
||||||
return cb({ error: "Invalid params. Must be key and counter" });
|
return cb({ error: "Invalid params. Must be key and counter" });
|
||||||
}
|
}
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
class API {
|
class API {
|
||||||
@ -52,11 +52,7 @@ class API {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async exec (address, bytes, cb) {
|
async exec (address, bytes, cb) {
|
||||||
const requestUnencrypted = parseRq(bytes);
|
const request = parseRq(bytes);
|
||||||
const requestEncrypted = parseRq(this.decrypt(address, bytes));
|
|
||||||
|
|
||||||
const request = requestEncrypted ?? requestUnencrypted;
|
|
||||||
const isEncrypted = request === requestEncrypted;
|
|
||||||
|
|
||||||
if (request === undefined)
|
if (request === undefined)
|
||||||
return cb({
|
return cb({
|
||||||
@ -67,7 +63,7 @@ class API {
|
|||||||
const {
|
const {
|
||||||
method
|
method
|
||||||
} = request;
|
} = request;
|
||||||
this.methods[method]?.(isEncrypted, address, request, cb);
|
this.methods[method]?.(false, address, request, cb);
|
||||||
} else {
|
} else {
|
||||||
return cb({
|
return cb({
|
||||||
error: "required JSON-object based request"
|
error: "required JSON-object based request"
|
||||||
|
@ -8,13 +8,12 @@
|
|||||||
"wsPort": 57891,
|
"wsPort": 57891,
|
||||||
"httpPort": 49901
|
"httpPort": 49901
|
||||||
},
|
},
|
||||||
"secureMode": true,
|
|
||||||
"ssl-path": null,
|
|
||||||
"auth-mode": 1,
|
"auth-mode": 1,
|
||||||
"info": {
|
"info": {
|
||||||
"name": "FullGreaM Test Neuro-RP Server",
|
"name": "FullGreaM Test Neuro-RP Server",
|
||||||
"tag": "fullgream-server",
|
"tag": "fullgream-server",
|
||||||
"pubaddress": "fullgream.online"
|
"pubaddress": "airp.fullgream.tech",
|
||||||
|
"pubusetls": true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"database": {
|
"database": {
|
||||||
|
@ -87,12 +87,13 @@ fl.bindLoad("/connect", () => {
|
|||||||
const mp = servers.map(async serverItem => {
|
const mp = servers.map(async serverItem => {
|
||||||
const promise = new Promise((resolve, reject) => {
|
const promise = new Promise((resolve, reject) => {
|
||||||
console.log("serverItem:", serverItem);
|
console.log("serverItem:", serverItem);
|
||||||
const socket = new WebSocket(`ws://${serverItem.address}:${serverItem.port}`);
|
const socket = new WebSocket(`${!serverItem.secureMode ? "ws" : "wss"}://${serverItem.address}:${serverItem.port}`);
|
||||||
let ping = new Date();
|
let ping = new Date();
|
||||||
socket.onopen = () => {
|
socket.onopen = () => {
|
||||||
ping = (new Date()) - ping;
|
ping = (new Date()) - ping;
|
||||||
socket.onmessage = (ev) => {
|
socket.onmessage = (ev) => {
|
||||||
const data = JSON.parse(ev.data).result;
|
const data = JSON.parse(ev.data).result;
|
||||||
|
data.secureMode = serverItem.secureMode;
|
||||||
itemIDs.push({
|
itemIDs.push({
|
||||||
...data,
|
...data,
|
||||||
itemID: `con-btn-to:${data.tag}:${serverItem.address}:${serverItem.port}`
|
itemID: `con-btn-to:${data.tag}:${serverItem.address}:${serverItem.port}`
|
||||||
|
@ -3,7 +3,7 @@ module.exports = async function (req, res) {
|
|||||||
result: [{
|
result: [{
|
||||||
address: global.config.server.address === "0.0.0.0" ? req.headers.host.split(":").at(0) : global.config.server.address,
|
address: global.config.server.address === "0.0.0.0" ? req.headers.host.split(":").at(0) : global.config.server.address,
|
||||||
port: global.config.server.port,
|
port: global.config.server.port,
|
||||||
secureMode: global.config.server.secureMode
|
secureMode: false
|
||||||
}, {
|
}, {
|
||||||
address: "offline.example.org",
|
address: "offline.example.org",
|
||||||
port: 8891,
|
port: 8891,
|
||||||
|
@ -179,6 +179,9 @@ cfgHandle(server, defaultConfigData, logger);
|
|||||||
|
|
||||||
logger.log("Current config:", global.config);
|
logger.log("Current config:", global.config);
|
||||||
|
|
||||||
|
server.run(global.config.server.address, global.config.server.port);
|
||||||
|
|
||||||
|
/*
|
||||||
if (global.config.server.secureMode) {
|
if (global.config.server.secureMode) {
|
||||||
async function initEncryption () {
|
async function initEncryption () {
|
||||||
const datadir = global.config.server["ssl-path"] ?? path.join(__dirname, "/encryption");
|
const datadir = global.config.server["ssl-path"] ?? path.join(__dirname, "/encryption");
|
||||||
@ -232,3 +235,4 @@ if (global.config.server.secureMode) {
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
server.run(global.config.server.address, global.config.server.port);
|
server.run(global.config.server.address, global.config.server.port);
|
||||||
|
*/
|
@ -12,16 +12,12 @@ module.exports = (address, port, api) => {
|
|||||||
const peerAddress = `${req.socket.remoteAddress}:${req.socket.remotePort}`;
|
const peerAddress = `${req.socket.remoteAddress}:${req.socket.remotePort}`;
|
||||||
console.log("peerAddress is", peerAddress);
|
console.log("peerAddress is", peerAddress);
|
||||||
ws.on('message', async (message) => {
|
ws.on('message', async (message) => {
|
||||||
//console.log('received: %s', message);
|
|
||||||
logger.wslog("api received:", message);
|
logger.wslog("api received:", message);
|
||||||
try {
|
|
||||||
message = Buffer.from(message, "base64");
|
|
||||||
} catch (_) {}
|
|
||||||
await api.exec(peerAddress, message, (rs, encryptor) => {
|
await api.exec(peerAddress, message, (rs, encryptor) => {
|
||||||
logger.wslog("api sended:", rs);
|
logger.wslog("api sended:", rs);
|
||||||
let result = JSON.stringify(rs);
|
let result = JSON.stringify(rs);
|
||||||
if (encryptor)
|
if (encryptor)
|
||||||
result = encryptor.encrypt(result).toString('base64');
|
throw new Error("encryptor is deprecated. Use TLS wrapping");
|
||||||
ws.send(result);
|
ws.send(result);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user