Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/marceldobehere/goofy-ssh
SSH over Websockets bc yes
https://github.com/marceldobehere/goofy-ssh
csharp proxy ssh web websocket websockets
Last synced: about 1 month ago
JSON representation
SSH over Websockets bc yes
- Host: GitHub
- URL: https://github.com/marceldobehere/goofy-ssh
- Owner: marceldobehere
- License: agpl-3.0
- Created: 2024-04-03T20:52:39.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2024-05-08T21:19:43.000Z (9 months ago)
- Last Synced: 2024-11-09T10:18:35.722Z (3 months ago)
- Topics: csharp, proxy, ssh, web, websocket, websockets
- Language: C#
- Homepage:
- Size: 60.5 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Goofy Websocket SSH
A tool that lets you ssh into a server using a websocket, in case port 22 is blocked on your network.It essentially launches a local mini proxy that redirects tcp traffic over the websocket.
You can start SSH directly with it or you can set it to proxy only mode and then connect to localhost with the given port. (By default it is 6020)
This is a cross platform C# client. I am also working on a [web client](https://github.com/marceldobehere/goofy-web-ssh-client) that can be statically hosted / accessed locally.
NOTE: This should be used with the [Goofy Websocket Socket Bridge](https://github.com/marceldobehere/Goofy-Websocket-Socket-Bridge)!
## How to use
Launch the program and enter the hostname. It does not require `http://` or `ws://`, just the hostname. (`goofyssh.com`)NOTE: By default it will use normal websockets (`ws://`) but you can specify the port to be 443 like `goofyssh.com:443`
and then it will attempt to connect to a secure websocket server (`wss://`).## How to run/build
You can either open the project in [Visual Studio](visualstudio.microsoft.com/) or [compile it manually](https://learn.microsoft.com/en-us/dotnet/core/install/linux).NOTE: The project uses .NET 8
## Drawbacks
For some reason the `ClientWebSocket` in C# cannot communicate with a secure websocket server running in NodeJS.This means that by default it is running with normal websockets.
It might be fine if the secure websocket server is running in like C# but I have not been able to test it much.
## Images
![Startup Prompt](./images/login.PNG)
![Successfull connection](./images/logged%20in.PNG)
![Proxy only mode](./images/proxy%20mode.PNG)