forked from KaKi87/sshception
87 lines
No EOL
3.3 KiB
Markdown
87 lines
No EOL
3.3 KiB
Markdown
# SSHception
|
|
|
|

|
|
[](./LICENSE.md)
|
|
|
|
This project is, at the same time, an SSH server, an SSH client, and a password manager.
|
|
|
|

|
|
|
|
|
|
## Getting started
|
|
|
|
### Using the main instance
|
|
|
|
- Login or sign up in your terminal with `ssh ssh.kaki87.net` (or `ssh <custom_username>@ssh.kaki87.net`) ;
|
|
- Follow the instructions.
|
|
|
|
### Self-hosting
|
|
|
|
Requirements :
|
|
- `nodejs`
|
|
- `npm`
|
|
- `yarn`
|
|
- `ssh-keygen`
|
|
|
|
Start :
|
|
- Run `yarn keygen` to generate an SSH key pair
|
|
- Copy `config.example.js` as `config.js` and specify a custom port
|
|
- Run `yarn install` to install dependencies
|
|
- Run `yarn start` to start the SSH server
|
|
|
|
Stop : press `Ctrl + C`
|
|
|
|
### Testing
|
|
|
|
The account manager at [`@sshception/account`](/KaKi87/sshception-account) is unit-tested.
|
|
|
|
### Usage
|
|
|
|
- Connect using any SSH client
|
|
- Follow the steps
|
|
|
|
## Comparison with [Termius](https://termius.com)
|
|
|
|
SSHception has been created after Termius made syncing and host chaining paid, therefore those are the main common features between the two solutions.
|
|
|
|
| Feature \ App | Termius (free) | Termius (paid) | SSHception (free & open source) |
|
|
| -------------------------------- | ------------------ | ------------------ | ------------------------------- |
|
|
| Desktop support | :white_check_mark: | :white_check_mark: | :white_check_mark: |
|
|
| Mobile support | :white_check_mark: | :white_check_mark: | :white_check_mark: |
|
|
| Server support | :x: | :x: | :white_check_mark: |
|
|
| SSH | :white_check_mark: | :white_check_mark: | :white_check_mark: |
|
|
| SFTP | :white_check_mark: | :white_check_mark: | :orange_square: <sup>(1)</sup> |
|
|
| Syncing | :x: | :white_check_mark: | :white_check_mark: |
|
|
| Host chaining | :x: | :white_check_mark: | :white_check_mark: |
|
|
| AI, automation and team features | :x: | :white_check_mark: | :x: <sup>(2)</sup> |
|
|
|
|
<sup>(1)</sup> Between remote hosts only, powered by Midnight Commander.<br>
|
|
<sup>(2)</sup> SSHception aims to remain simple.
|
|
|
|
## FAQ
|
|
|
|
### Why should I use SSHception ?
|
|
|
|
#### It is open source.
|
|
|
|
This project is released under the [MIT license](LICENSE.md).
|
|
|
|
#### It is multiplatform.
|
|
|
|
Firstly, the server can run on any platform supporting NodeJS.
|
|
|
|
Secondly, the server can be accessed from any SSH client.
|
|
|
|
#### It respects your privacy.
|
|
|
|
Your data is encrypted using the AES-256 asymmetric encryption algorithm using your own as password.
|
|
|
|
The standard TOTP 2FA is supported.
|
|
|
|
### Why shouldn't I use SSHception ?
|
|
|
|
#### No direct connection.
|
|
|
|
Since this project is a server-side service, the SSH connection to your target host is not initiated from your client itself but from the SSHception server-side client then streamed to you.
|
|
|
|
Therefore, your SSH client-side logs will always log your connections to the SSHception server and your SSH server-side logs will always log the connections from the SSHception server. |