| ▲ | A native graphical shell for SSH(probablymarcus.com) | |||||||||||||||||||||||||||||||||||||||||||
| 44 points by mrcslws an hour ago | 18 comments | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | saltamimi 2 minutes ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||||||||
One of the more interesting pieces of Microsoft software is the Windows Admin Center where it's a web app to configure a Windows Server. Ideally, it was made for core installs where there's no GUI but it's there as a viable web management panel. The tool from OP and WAC are pretty similar in terms of functionality and usecase. Why would you want this? Well, imagine your team needing to be able to do server functions but you have less technical team members to do it for you, which is very often the case in big places, most people are familiar with the web browser and having a website to do these sorts of actions makes it easier to have things done in one place without a lot of tools like Remote Desktop, SSH, WinRM, etc. configured. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | purplehat_ 11 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
i'm trying to understand how outer shell works here. on the website you give the following as your motivation: > Apps like Jupyter and Tensorboard are not typically visible to standard web browsers if they’re running on remote servers, because it would be terribly unsafe to let the whole internet touch this app. Instead, they run on a local port on the server, which your computer can’t access directly. > Classically, to get access to these, you had to open a new terminal and run: > ssh -L 24601:localhost:8889 mrcslws@lambda4.mycompany.com & > ssh -L 24602:localhost:6006 mrcslws@lambda4.mycompany.com & is this true? isn't the normal thing just to do this ssh forwarding for prototyping, then for deployment, you set up a website like myjupyternotebook.com, and then set up auth so that others can't access it. HTTP basic auth is not too much work. if you want SSH, not HTTP, to be what's publicly exposed, there's other options too, like putting it behind a VPN or tunnel. all this to say, outer loop is super cool, but I don't get it. I must be missing something about why you built it, so could you help me understand? | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | flying_sheep 9 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
That's interesting idea. If we put into CLI with some ANSI escape code, that may become something real. Imagine a normal terminal app just render part of the UI in web and communicating in UNIX socket. While doing the fancy UI, everything is still controllable with keyboard, and optionally with mouse. The UI will fallback to text UI for older terminal | ||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | tom1337890 16 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Lovely video and ingenious implementation. Kudos! As someone managing various servers, both at home and at work, I see how this can be really useful. I see it not in the production space yet but rather in the experimenting, using a Linux machine as a second compute device! So regarding your last point, I'm convinced. I think it is useful! The one fact that is bugging me is that now it requires a client specific app, with GUI, on my PC and I wonder if using ssh port forwarding could reduce the surface. I mean I wonder if either having a rich client that executes commands via ssh or a rich server (including Web Server) with ssh port wouldn't suffice, so that I can avoid installing stuff on the server AND on my computer. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | torm 20 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
I can’t make up my mind if I love it or hate it. On one hand this is like SSHapi on the other there’s no structure, no contract… i had similar doubts with Cockpit. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | myaccountonhn 15 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
I am not sure I'd use this over exposing websites with wireguard as those will automatically work across platforms. But it looks like you could create some really cool experiences with it, and I'm happy people are exploring this space. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | akshayKMR 24 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
This is cool. Though I don't see why someone would want to do more work/design for the custom GUI rendering for a custom/renderer (your viewer app) ? | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | toenail 35 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Interesting, kind of like a more fancy web shell. Haven't really ever seen the need for those, mostly because terminals work better than browsers. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | CamperBob2 8 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Please consider mirroring your video on YouTube. Being forced to watch a video at 1x with a nonstandard, featureless embedded player is a good way to guarantee I'll skip it. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | supertroop 35 minutes ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Defeats the purpose of the shell. The shell is for CLI interaction. | ||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | arnefm 23 minutes ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||||||||
Heresy! | ||||||||||||||||||||||||||||||||||||||||||||