A lightweight remote Minecraft server controller backend written in C.
This project acts as a relay/controller server that allows authenticated clients to:
- Wake a remote Minecraft host PC using Wake-on-LAN
- Start and stop the Minecraft server remotely
- Authenticate securely using SHA-256 challenge-response
- Maintain persistent client sessions
- Log and monitor connections
Designed to run efficiently on low-power hardware such as Raspberry Pi systems or lightweight Linux servers.
- TCP server backend
- SHA-256 challenge-response authentication
- Wake-on-LAN support
- Persistent authenticated sessions
- Command handling system
- Lightweight C implementation
- Logging system
- Linux/Raspberry Pi friendly
The server uses a challenge-response authentication model.
- Client connects
- Server generates random challenge
- Client computes:
- Client sends computed hash
- Server validates hash
- Client becomes authenticated
The password itself is never transmitted across the network.
| Command | Description |
|---|---|
WOL |
Sends Wake-on-LAN packet |
START |
Starts Minecraft server |
STOP |
Stops Minecraft server |
PING |
Status check |