Links
Summary
MC Server Panel is a web based minecraft server monitoring and deployment application. While managing my own small minecraft servers with friends, I grew tired of having to ssh into my personal server to run the same simple commands to create, restart, or update a minecraft server. MC Server panel provides an online interface to run these commands.
Languages Used: Typescript, HTML, CSS
Technologies Used: Vue, Sockets.io, Node
Takeaways
This project gave me insights into managing System resources with node. This project required heavy use of the node fs
and child-process
modules
to perform actions that would generally be done by a server administrator. Information also had to be passed through multiple layers (Child Process <-> Web Server <-> Web Client) so this project also aided in my understanding of communication channels like web sockets.
This project also brought into consideration some security concerns. The general idea is that if you have access to this, you generally have about as much access as if you were to just ssh into the host machine (under the user that is running the application). At the time of creating this project, I did not have the security backgroudn to confidently ensure that no malicious attacker could execute commands on a remote machine they were not supposed to. For this reason, it is recommended that the project is just run on a local trusted network, without being exposed to the outside world.