web based ssh reddit / selfhosted ---------------------------------------------------------------------- AhmedBarayez · 2023-12-01 18:32 So, I've been using putty on my pc & laptop for quite some time since my servers were only 2 or 3, and termius on my iphone and it was good. But they're growing fast (11 until now :)), And i need to access all of them from central location, i.e [mysshserver.mydomain.com](https://mysshserver.mydomain.com), login and just my pick my server and ssh I've seen many options: \#1 teleport, it's very good but it's actually overkill for my resources right now and it's very confusing while setup \#2 Bastillion, i didn't even tried it becuase of it's shitty UI, i'm sorry \#3 sshwifty, looks promising until i found out that there is no login or user management ​ So what i need is, a web based ssh client to self host to access my servers that have user management so i can create user with password and otp so it will contain all of my ssh servers pre-saved ​ ---------------------------------------------------------------------- Jaconah · 2023-12-01 18:39 I used Apache Guacamole for this for a while, as i also wanted browser based rdp into a couple windows devices and it worked out very well! ---------------------------------------------------------------------- raffaeleguidi · 2023-12-01 18:41 You need Apache Guacamole! ---------------------------------------------------------------------- AhmedBarayez · 2023-12-01 18:55 I’m a little picky, I’m sorry, it doesn’t look good 😂 ---------------------------------------------------------------------- Inevitable-Unit-4490 · 2023-12-01 18:56 Using at the moment, works great. ---------------------------------------------------------------------- raffaeleguidi · 2023-12-01 19:03 It is a wonderful product, almost enterprise grade, I’ve been using it for years at work and it also handles rdp and vnc. Oh, it is quite easy to install and has docker images as well 😎 ---------------------------------------------------------------------- acbadam42 · 2023-12-01 19:13 You come to the subreddit to ask for advice, and then you reject the advice everybody gives you. Good for you. ---------------------------------------------------------------------- nik_h_75 · 2023-12-01 19:14 If you dont like guacamole (suggest you give it another go - it has sftp as well) - maybe wetty with a static page behind proxy login linking to each server. ---------------------------------------------------------------------- AhmedBarayez · 2023-12-01 19:14 That’s called discussion 🙄🙄 ---------------------------------------------------------------------- Parking-Advantage-49 · 2023-12-01 19:24 this is like the definition of Guacamole. Put it behind Authentik and you're golden. ---------------------------------------------------------------------- BlackBeltGoogleFu · 2023-12-01 19:25 Guacamole ticks all your boxes when it comes to features and "complexity". ---------------------------------------------------------------------- ghanjiboy · 2023-12-01 19:26 I use sshwifty behind authelia, so that only authorized users can access the UI ---------------------------------------------------------------------- Bykow · 2023-12-01 19:30 Have a look at Warpgate. https://github.com/warp-tech/warpgate ---------------------------------------------------------------------- subven1 · 2023-12-01 19:33 Guacamole is awesome and what I would recommend. ---------------------------------------------------------------------- nerdyviking88 · 2023-12-01 19:34 Almost enterprise grade? Glyptodon, the company founded by the guys that started Guac, got purchased by Keeper and now offer Keeper Connection Manager. It's guac with a small facelift. ---------------------------------------------------------------------- jonyskids · 2023-12-01 19:34 Cloudflared works too. ---------------------------------------------------------------------- subven1 · 2023-12-01 19:36 Fork it and customize it to your need then. ---------------------------------------------------------------------- z3roTO60 · 2023-12-01 19:38 What container do you use? I shut mine down because it was no longer maintained and I didn’t want a security hole. Didn’t actually spend time looking into a new solution though lol ---------------------------------------------------------------------- nutterbg · 2023-12-01 19:39 Meshcentral? Though might also be a bit overkill. ---------------------------------------------------------------------- raffaeleguidi · 2023-12-01 19:45 Yep. The free/open one is almost as good ---------------------------------------------------------------------- Jaconah · 2023-12-01 20:15 It looks like the one i was using is also no longer maintained sadly. Something like this may work for you https://github.com/itiligent/Guacamole-Install ---------------------------------------------------------------------- unofficialtech · 2023-12-01 20:23 What are you using for OS? I have cockpit on my hosts. You can either install on many and just connect to one then connect to others, or you can connect to one for ssh access to then ssh again. ---------------------------------------------------------------------- Snowmobile2004 · 2023-12-01 20:34 What about it doesn’t look good - the UI? It’s a bit dated, but the SSH client is as recent as it gets - pretty sure it even has syntax highlighting. There aren’t really many other options out there for what you want. ---------------------------------------------------------------------- parer55 · 2023-12-01 20:41 I use wetty. https://github.com/butlerx/wetty ---------------------------------------------------------------------- kasalacto · 2023-12-01 21:03 Cockpit ---------------------------------------------------------------------- Internal-Initial-835 · 2023-12-01 21:09 Another vote for this. It’s great for ssh and windows. Can be a pita to setup but it’s well worth the effort. ---------------------------------------------------------------------- Possible-Week-5815 · 2023-12-01 21:12 im using Webmin for this, not only terminal, but whole server configurations ---------------------------------------------------------------------- MacGyver4711 · 2023-12-01 21:12 Same here... One "admin node" which has cert based ssh access to the other nodes. Works great, and I run Guacamoe through Cloudflare with a few rules, plus TOTP on Guacamole itself. Probably not 100% bulletproof, but good enough for a homelab imho. ---------------------------------------------------------------------- Internal-Initial-835 · 2023-12-01 21:13 I setup a small vm for this using dietpi so I could keep things updated and seperate. If you run in a container it limits you working on the machine hosting the container a little and you’re relying on somebody keeping things upto date. ---------------------------------------------------------------------- Internal-Initial-835 · 2023-12-01 21:14 You can but it supports 2fa so authentik or similar isn’t a requirement. Sure you can do that too if you really want ---------------------------------------------------------------------- zfa · 2023-12-01 21:16 Perfect answers already given so throwing out a leftfield one... but if you're happy with PuTTY then just keep using it but from a webtop. Use that session as your base of operations (unlikely to be phone friendly though). ---------------------------------------------------------------------- lucky_my_ass · 2023-12-01 21:17 This. I highly recommend wetty. It just works. No BS ---------------------------------------------------------------------- Myghael · 2023-12-01 21:25 I use Apache Guacamole, but if it's just for SSH, I strongly recommend Cockpit - getting it up is super easy and fast and it works flawlessly. ---------------------------------------------------------------------- AhmedBarayez · 2023-12-01 21:35 does it run on docker? ---------------------------------------------------------------------- lazzurs · 2023-12-01 21:51 It does. I’ve got a Docker Compose setup that has Oauth2 Proxy sitting in front. Works great. ---------------------------------------------------------------------- Whyd0Iboth3r · 2023-12-01 21:51 This gets my vote. So much better than guac, IMO. ---------------------------------------------------------------------- Myghael · 2023-12-01 21:57 Didn't try since I use it on systems that don't run docker at all, but people say it does. ---------------------------------------------------------------------- zoredache · 2023-12-01 22:26 It would be a much better 'discussion' if you actually gave more detail beyond "it doesn't look good". What exactly makes you think it isn't good? ---------------------------------------------------------------------- CAP_NET_ADMIN · 2023-12-01 22:28 You can use Termius on all your devices, you can set your own encryption key and synchronize both config and keys between devices. Other than that maybe look at Tailscale? [https://tailscale.com/](https://tailscale.com/) If you don't like Termius. I'd argue against using web based shells. I know people like guacamole, but there have been some nice exploits for it, unless you know what you're doing, you can make yourself very vulnerable to attacks. ---------------------------------------------------------------------- PumaXCS · 2023-12-01 22:38 Mine is a bit unconventional but I use Webtops. Only accessible by wireguard ip or local ip. It's on reverse proxy so go to url, login, and it's a Linux desktop that I have ssh/filezilla/bookmarks to other admin panels and I do most of my management through it. ---------------------------------------------------------------------- StonehomeGarden · 2023-12-01 22:38 I use cloudfared and a Cloudflare Zero Trust Application to get a browser rendered terminal for my Kubernetes based homelab. I can share a post I wrote about it if you’re interested. ---------------------------------------------------------------------- Odd-Command9114 · 2023-12-01 22:51 Give this a try. Web-based terminal with basic auth. [https://github.com/yudai/gotty](https://github.com/yudai/gotty) ---------------------------------------------------------------------- Impressive-Cap1140 · 2023-12-01 22:53 Are you doing this with a port opened on your firewall? ---------------------------------------------------------------------- Muizaz88 · 2023-12-01 23:22 I personally use Sshwifty behind Authentik. ---------------------------------------------------------------------- Jaconah · 2023-12-01 23:42 Sadly yes. I have a VPN setup on my firewall, however i wanted the ease of access and being able to connect without a vpn. I currently have Guac configured to require 2FA via DUO for all login, to help protect my self some. ---------------------------------------------------------------------- [deleted] · 2023-12-01 23:43 [removed] ---------------------------------------------------------------------- z3roTO60 · 2023-12-02 00:15 Thanks for the suggestion! ---------------------------------------------------------------------- linkthepirate · 2023-12-02 00:29 Fyi, this one is actively maintained. https://github.com/jwetzell/docker-guacamole/blob/master/README.md ---------------------------------------------------------------------- victortroz · 2023-12-02 01:31 Change the order of the edits, its confusing. Only understood Guacamole solved your problem after reading the comments. ---------------------------------------------------------------------- thepenis_mightier · 2023-12-02 01:53 I have Guacamole on a cloudflare tunnel, with 2FA enabled. Very handy. ---------------------------------------------------------------------- thepenis_mightier · 2023-12-02 01:54 Cockpit for SSH? I thought Cockpit was for host admin stuff? ---------------------------------------------------------------------- QT31416 · 2023-12-02 02:37 I use [Shellngn](https://hub.docker.com/r/shellngn/pro). It's pretty good, it has user management I think (only I use it), it remembers the servers I SSH into, okay UI. ---------------------------------------------------------------------- jwink3101 · 2023-12-02 03:09 I run Jupyter Lab. It’s nice to set up lots it editors and shells when I need it. ---------------------------------------------------------------------- Frozen_Gecko · 2023-12-02 03:33 I love cockpit. I actually just it as a web based terminal 99% of the time. The other tools are just nice cherries on top ---------------------------------------------------------------------- highedutechsup · 2023-12-02 03:46 Putty ...so Y2k ---------------------------------------------------------------------- Ronbruins · 2023-12-02 04:14 What’s the advantage of guacamole over e.g. RustDesk for the RDP part? ---------------------------------------------------------------------- aadoop6 · 2023-12-02 04:49 Sshwifty doesn't have a login, but it does have authentication. And yes, multi user auth should have been better. ---------------------------------------------------------------------- aadoop6 · 2023-12-02 04:55 Do you need Authentik? For a single user it has built-in auth. No? ---------------------------------------------------------------------- benjaminchodroff · 2023-12-02 05:42 Shellinabox is my favorite. I have it working great with authelia to ensure 2fa logins too. ---------------------------------------------------------------------- Nexushopper · 2023-12-02 06:46 Shellinabox ---------------------------------------------------------------------- legendary_anon · 2023-12-02 07:13 TIL, thank you 🙏 I also adore the juxtaposition of the Guacamole site, having a screenshot of Windows Vista/7 with the classic theme, while their site looking pretty contemporary. ---------------------------------------------------------------------- jbarr107 · 2023-12-02 11:36 Look into Docker-based Kasm. It now provides "server" workspaces, similar to Guacamole, and also provides other incredible workspaces reaching from isolated browsers to productivity apps to full Linux desktop environment. Port it behind a Cloudflare Tunnel and Application, and you have a secure, anywhere-accessible solution. ---------------------------------------------------------------------- TEF2one · 2023-12-02 11:42 There an official guacamole image that is still updated regularly: https://guacamole.apache.org/doc/gug/guacamole-docker.html ---------------------------------------------------------------------- jaredearle · 2023-12-02 12:51 This terrifies me more than I can imagine. Every solution offered sounds like a security liability. Besides, this is a solved problem with ssh configs and a bastion server. ssh config: `Host: server-one` ` HostName 10.0.12.34` ` User me` ` Port 2222` ` ProxyJump my-bastion-user@bastionhost.secure` With this, you just type `ssh server-one` and you’re in. Safe, secure, etc. ---------------------------------------------------------------------- Myghael · 2023-12-03 11:14 It does that, too. I only use it for the terminal, though. You can then just SSH anywhere just as if you were on the local terminal. ---------------------------------------------------------------------- chrishch · 2023-12-06 18:23 I use the Docker build from [this person's release](https://hub.docker.com/r/flcontainers/guacamole). It looks quite active and it's still being maintained.