mirror of
https://github.com/Ylianst/MeshCentral.git
synced 2025-02-12 11:01:52 +00:00
Added MeshCentral Router as part of the server.
This commit is contained in:
parent
145a804e1c
commit
62314f4f6b
9 changed files with 28 additions and 9 deletions
BIN
agents/MeshCentralRouter.exe
Normal file
BIN
agents/MeshCentralRouter.exe
Normal file
Binary file not shown.
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "meshcentral",
|
"name": "meshcentral",
|
||||||
"version": "0.3.2-x",
|
"version": "0.3.2-y",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"Remote Management",
|
"Remote Management",
|
||||||
"Intel AMT",
|
"Intel AMT",
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -2294,8 +2294,13 @@
|
||||||
|
|
||||||
// Add a "Add Device Group" option
|
// Add a "Add Device Group" option
|
||||||
r += '<div style=border-top-style:solid;border-top-width:1px;border-top-color:#DDDDDD;cursor:pointer;font-size:10px>';
|
r += '<div style=border-top-style:solid;border-top-width:1px;border-top-color:#DDDDDD;cursor:pointer;font-size:10px>';
|
||||||
if ((view < 3) && (sort == 0) && (meshcount > 0) && ((userinfo.siteadmin == 0xFFFFFFFF) || ((userinfo.siteadmin & 64) == 0))) { r += '<a onclick=account_createMesh() title="Create a new group of devices." style=cursor:pointer>Add Device Group</a> '; }
|
if ((view < 3) && (sort == 0) && (meshcount > 0) && ((userinfo.siteadmin == 0xFFFFFFFF) || ((userinfo.siteadmin & 64) == 0))) {
|
||||||
if ((userinfo.siteadmin == 0xFFFFFFFF) || ((userinfo.siteadmin & 128) == 0)) { r += '<a onclick=p10showMeshCmdDialog(0) style=cursor:pointer title="Download MeshCmd, a command line tool that performs many functions.">MeshCmd</a></div>'; }
|
r += '<a onclick=account_createMesh() title="Create a new group of devices." style=cursor:pointer>Add Device Group</a> ';
|
||||||
|
}
|
||||||
|
if ((userinfo.siteadmin == 0xFFFFFFFF) || ((userinfo.siteadmin & 128) == 0)) {
|
||||||
|
r += '<a onclick=p10showMeshCmdDialog(0) style=cursor:pointer title="Download MeshCmd, a command line tool that performs many functions.">MeshCmd</a> ';
|
||||||
|
if (navigator.platform.toLowerCase() == 'win32') { r += '<a onclick=p10showMeshRouterDialog() style=cursor:pointer title="Download MeshCentral Router, a TCP port mapping tool.">Router</a> '; }
|
||||||
|
}
|
||||||
r += '</div><br/>';
|
r += '</div><br/>';
|
||||||
|
|
||||||
QH('xdevices', r);
|
QH('xdevices', r);
|
||||||
|
@ -4114,8 +4119,16 @@
|
||||||
setDialogMode(2, "Network Interfaces", 1, null, "<div id=d2netinfo>Loading...</div>", 'if' + currentNode._id );
|
setDialogMode(2, "Network Interfaces", 1, null, "<div id=d2netinfo>Loading...</div>", 'if' + currentNode._id );
|
||||||
meshserver.send({ action: 'getnetworkinfo', nodeid: currentNode._id });
|
meshserver.send({ action: 'getnetworkinfo', nodeid: currentNode._id });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Show MeshCentral Router dialog
|
||||||
|
function p10showMeshRouterDialog() {
|
||||||
|
if (xxdialogMode) return;
|
||||||
|
var x = "<div>MeshCentral Router is a Windows tool for TCP port mapping. You can, for example, RDP into a remote device thru this server.</div><br />";
|
||||||
|
x += addHtmlValue('Win32 Executable', '<a style=cursor:pointer onclick=fileDownload("meshagents?meshaction=winrouter","MeshCentralRouter.exe")>MeshCentralRouter.exe</a>');
|
||||||
|
setDialogMode(2, "MeshCentral Router", 1, null, x, "fileDownload");
|
||||||
|
}
|
||||||
|
|
||||||
// Show router dialog
|
// Show MeshCmd dialog
|
||||||
function p10showMeshCmdDialog(mode, nodeid) {
|
function p10showMeshCmdDialog(mode, nodeid) {
|
||||||
if (xxdialogMode) return;
|
if (xxdialogMode) return;
|
||||||
var y = "<select id=aginsSelect onclick=meshCmdOsClick() style=width:236px>";
|
var y = "<select id=aginsSelect onclick=meshCmdOsClick() style=width:236px>";
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -279,7 +279,7 @@
|
||||||
validateLogin();
|
validateLogin();
|
||||||
validateCreate();
|
validateCreate();
|
||||||
if ('{{loginmode}}' != '') { go(parseInt('{{loginmode}}')); } else { go(1); }
|
if ('{{loginmode}}' != '') { go(parseInt('{{loginmode}}')); } else { go(1); }
|
||||||
QV('newAccountDiv', ('{{{newAccount}}}' != '0') && ('{{{newAccount}}}' != 'false')); // If new accounts are not allowed, don't display the new account link.
|
QV('newAccountDiv', ('{{{newAccount}}}' === '1') || ('{{{newAccount}}}' === 'true')); // If new accounts are not allowed, don't display the new account link.
|
||||||
if ((passRequirements.hint === true) && (passhint != null) && (passhint.length > 0)) { QV("showPassHintLink", true); }
|
if ((passRequirements.hint === true) && (passhint != null) && (passhint.length > 0)) { QV("showPassHintLink", true); }
|
||||||
QV("newAccountPass", (newAccountPass == 1));
|
QV("newAccountPass", (newAccountPass == 1));
|
||||||
QV("resetAccountDiv", (emailCheck == true));
|
QV("resetAccountDiv", (emailCheck == true));
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -2339,6 +2339,12 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
|
||||||
if (obj.args.lanonly != true) { meshaction.serverUrl = ((obj.args.notls == true) ? 'ws://' : 'wss://') + obj.getWebServerName(domain) + ':' + httpsPort + '/' + ((domain.id == '') ? '' : ('/' + domain.id)) + 'meshrelay.ashx'; }
|
if (obj.args.lanonly != true) { meshaction.serverUrl = ((obj.args.notls == true) ? 'ws://' : 'wss://') + obj.getWebServerName(domain) + ':' + httpsPort + '/' + ((domain.id == '') ? '' : ('/' + domain.id)) + 'meshrelay.ashx'; }
|
||||||
res.set({ 'Cache-Control': 'no-cache, no-store, must-revalidate', 'Pragma': 'no-cache', 'Expires': '0', 'Content-Type': 'text/plain', 'Content-Disposition': 'attachment; filename=meshaction.txt' });
|
res.set({ 'Cache-Control': 'no-cache, no-store, must-revalidate', 'Pragma': 'no-cache', 'Expires': '0', 'Content-Type': 'text/plain', 'Content-Disposition': 'attachment; filename=meshaction.txt' });
|
||||||
res.send(JSON.stringify(meshaction, null, ' '));
|
res.send(JSON.stringify(meshaction, null, ' '));
|
||||||
|
} else if (req.query.meshaction == 'winrouter') {
|
||||||
|
var p = obj.path.join(__dirname, 'agents', 'MeshCentralRouter.exe');
|
||||||
|
if (obj.fs.existsSync(p)) {
|
||||||
|
res.set({ 'Cache-Control': 'no-cache, no-store, must-revalidate', 'Pragma': 'no-cache', 'Expires': '0', 'Content-Type': 'text/plain', 'Content-Disposition': 'attachment; filename=MeshCentralRouter.exe' });
|
||||||
|
try { res.sendFile(p); } catch (e) { res.sendStatus(404); }
|
||||||
|
} else { res.sendStatus(404); }
|
||||||
} else {
|
} else {
|
||||||
res.sendStatus(401);
|
res.sendStatus(401);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue