Remote command execution, clarified

Your shell.Anywhere.

A focused C++17 remote shell that turns sockets, processes, authentication, and command execution into one readable system.

C++17 POSIXv1.1.0
server@easy-rsh:~LIVE

Easy Remote Shell Server v1.1.0

Loaded 1 user from data/users.txt

Mode: Multi-client (fork)

Mode: Command execution

Server listening on port 8080

Network: 10.255.255.254:8080

Local: 127.0.0.1:8080


Connect: ./client 10.255.255.254 8080


SIGCHLD handler installed for zombie reaping

Waiting for connection

OPENSSL AUTHFORK PER CLIENTPIPE + EXECVPSESSION TOKENSRAII SOCKETS
UNDER THE HOOD

Small surface.
Real systems work.

Easy RSH is intentionally compact. Each subsystem is visible enough to study, modify, and reason about without hiding behind a framework.

01

TCP, kept simple

A direct client-server protocol built on POSIX sockets, with clear connection and command flows.

02

Authenticated sessions

Salted SHA-256 credentials and cryptographically random session tokens powered by OpenSSL.

03

Process isolation

Optional fork-per-client concurrency with automatic SIGCHLD cleanup and pipe-based output capture.

READY ON PORT 8080

From clone to connected in minutes.

Start building
COMMON QUESTIONS

Frequently asked questions

Quick answers for developers evaluating how Easy RSH works, where it runs, and what security assumptions it makes.

Easy RSH is a compact C++17 remote shell project that demonstrates command execution, sockets, authentication, and process management in a readable client-server codebase.

Easy RSH stores salted SHA-256 password records and uses OpenSSL-backed randomness for session tokens after login.

Easy RSH targets Linux and other POSIX-style environments because it relies on APIs such as fork, execvp, pipe, signals, and BSD sockets.

Yes. The server can run in a fork-per-client mode so each accepted client session is handled in its own child process.

No. It has authenticated access controls, but it should be treated as an educational or controlled-environment project rather than a hardened remote administration service for hostile networks.