Skip to content

Commit

Permalink
README update with comparisons
Browse files Browse the repository at this point in the history
  • Loading branch information
gzz2000 committed Feb 8, 2023
1 parent 336a419 commit e377674
Showing 1 changed file with 40 additions and 8 deletions.
48 changes: 40 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,52 @@
```
___ __________ __
/ _ \___ / __/ __/ // /
/ , _/ _ \_\ \_\ \/ _ /
/_/|_|\___/___/___/_//_/
```

# RoSSH
Robust SSH: Long live, auto reconnect ssh session that just works. No manual server installation or root privilege required. Support servers behind NAT and reverse proxies.

## Usage
Just replace `ssh` with `rossh`.
``` shell
rossh <hostname>
```
## Why another one?
RoSSH is more robust than most of the outstanding SSH clients.

Perhaps the most useful feature of RoSSH is its ability to bypass NAT and firewalls without manually installing any software on the remote server.
Even with this simplicity, RoSSH supports some complex features like public key agent forwarding.

Below is a detailed feature comparison with some similar projects.

|Feature|[Mosh](https://github.com/mobile-shell/mosh)|[AutoSSH](https://github.com/samueleaton/autossh)|[EternalTerminal](https://github.com/MisterTea/EternalTerminal)|RoSSH|
| ----- | ----- | ----- | ----- | ----- |
|**No need to install remotely**|Yes|Yes|No|Yes|
|Normal user (no root required)|Yes|Yes|No|Yes|
|Long live shell|Yes|No|Yes|Yes|
|**Support servers behind NAT, firewalls, etc**|No|Yes|No|Yes|
|Support native scroll|No|Yes|Yes|Yes|
|**Port forwarding**|No|Yes|Yes|Yes|
|**Stable Agent forwarding**|No|No|Yes|Yes|
|Better experience with long delay server echo|Yes|No|No|No|

## Install
RoSSH supports Linux and MacOS. Windows users can install it in WSL. Please run the following in your terminal, then follow the on-screen instructions.

## Installation
``` shell
bash <(curl -s https://raw.githubusercontent.com/gzz2000/RoSSH/master/install.sh)
```

RoSSH supports Linux and MacOS. Windows users can install it in WSL. Please run the above one-liner in your terminal, and then follow the on-screen instructions.

This would download `rossh_server.py`, `rossh_client.py`, `rossh_common.py` and put them under `~/.rossh`.

RoSSH is implemented using python. So both your host and your remote server should have a python 3.4+ interpreter (which most UNIX distros already do).
RoSSH is written in Python. As a result, both your host and your remote server should have a Python 3.4+ interpreter -- which most UNIX distros already do.


## Usage
Just replace your familiar `ssh` commands with `rossh` instead.

``` shell
rossh <user>@<hostname>
```

You can add `-L xxxx:xxxx`, `-A`, `-X`, and other SSH client options along with the command line, or just store them in your `~/.ssh/config` and RoSSH will obey them.

Note that you can't directly specify a command to execute at remote server, because RoSSH always opens a shell for you instead.

0 comments on commit e377674

Please sign in to comment.