Ylianst / MeshCommander

MeshCommander is a Intel(R) Active Management Technology (Intel(R) AMT) remote management tool. It's feature rich and includes a built-in remote desktop viewer for Hardware-KVM, a Serial-over-LAN terminal, IDER-Redirection support and much more. MeshCommander is built on web technologies and runs on many plaforms. In addition to being available as a stand-alone tool, MeshCommander was built to be very space efficient to that it can be uploaded into Intel AMT flash space to have it served diretly from the Intel AMT web serve.
Apache License 2.0
352 stars 75 forks source link

meshcmd source code? #17

Open rgl opened 4 years ago

rgl commented 4 years ago

I do not seem to find meshcmd in this repository nor in https://github.com/Ylianst?tab=repositories. Can you help me find its source code?

nomis commented 4 years ago

It's in the MeshCentral repository but it depends on custom node.js modules with names that conflict with existing modules and core modules. Those are in MeshAgent.

Ylianst commented 4 years ago

For meshcmd, if you grab the following files and put them in the same directory:

All files from meshcentral/agents/modules_meshcmd. The meshctrl.js file and meshservice.exe from here.

Then you can run:

meshservice.exe meshctrl.js

And you will see it's the same as running meshctrl.exe. In fact, meshctrl.exe is the just MeshAgent from MeshCentral with JavaScript appended to it. Hope that helps.

rgl commented 4 years ago

Thanks for the explanations!

Is the whole amt library contained in https://github.com/Ylianst/MeshCentral/tree/master/amt?

Does it make sense to convert it into a stand-alone node library (a separate repository/npm package) so it could be used by others?

@nomis, are you trying to port/incorporate/convert this amt library in https://github.com/nomis/intel-amt?

nomis commented 4 years ago

That repository just contains things I needed to do that MeshCommander couldn't like creating a server certificate without giving MeshCommander the Root CA private key. I also implemented KVM redirection because MeshCommander is mostly Windows-only and WebSocket redirection isn't currently working on Intel AMT 12.

rgl commented 4 years ago

It seems the amt library is at two places:

  1. https://github.com/Ylianst/MeshCentral/tree/master/amt
  2. https://github.com/Ylianst/MeshCentral/tree/master/agents/modules_meshcmd

Which one is the canonical source code?

I ended up using the code from the first at https://github.com/rgl/intel-amt-toggle-power-example, but I'm not sure if I'm using the correct one.