XPipe is what I use, supports syncing via git, SSH, sftp, RDP, vnc, etc.. And can manage docker containers too. It also has scripts you can define that automatically work on any SSH connection.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
I just use ~/.ssh/config
e.g.
Host website
Hostname some.hostname.foo
User bob
Port 1500
This is the way. Even if you have a lot, it's not hard to pull up a list of options;
❯ cat ~/.ssh/config | grep 'Host ' | awk '{print $2}'
Or you can make it interactive;
❯ ssh $(cat ~/.ssh/config | grep 'Host ' | awk '{print $2}' | fzf)
ez pz
And most secondary apps, e.g. git and sshfs, even Gigolo, recognize these aliases. It's the best.
Take a look at PortX. Just installed it today in Windows and Fedora 42. I have a Synchthing server where I store a Veracrypt vault with the public keys.
Remmina is great but no Windows option.
That looks pretty good, cheers. Another comment mentioned Tabby, also cross platform.
Both PortX and Tabby seem a whole lot nicer than winsshterm. Shout out to guacamole for a dockerised jump sever solution.
How about XPipe?
It can even auto-configure itself by parsing out your ~/.ssh/config so you can keep everything defined there for easy CLI access but also use the GUI when desired.
I will check this out - thank you.
Not a GUI, but I keep my ~/.ssh/config
clean by splitting my configs into folders, and including them in the main ~/.ssh/config.
I have the folder, ~/.ssh/config.d/
, and here's what it looks like:
~/.ssh/config.d
.
├── work
│ ├── dev.config
│ ├── staging.config
│ └── prod.config
└── server
├── development.config
├── containers.config
├── home.config
├── pis.config
└── server.config
Then my ~/.ssh/config
looks like this:
Include config.d/work/*
Include config.d/server/*
Include config.d/other/*
Oh well that's just sexy. Never knew ssh config recognized Include
.
Cool, I did it with my git
config a couple weeks ago, I didn't know you could do it with ssh
too.
for those interested:
[include]
path = ~/.config/git/shared.ini
path = ~/.config/git/dev-machine.ini
path = ~/.config/git/aliases.ini
path = ~/.config/git/self.ini
ssh config? Not sure what you're looking for. Like a list of preconfigured connections?
A graphical interface to store and sort the remote connections. I have 20+ remote systems I need to maintain and apps like this provide tabbed experience like a browser to connect to them.
I have 20+ remote systems I need to maintain and apps like this provide tabbed experience like a browser to connect to them.
I've found that if you're using ssh then taking your hands off the keyboard to grab a mouse just to click a different tab is slow and annoying.
I use a terminal multiplexer, tmux, and just keep different sessions open for each server that I need to connect to.
leader = CTRL+b (you can change this but this is the default)
leader s - Open session manager
leader c - Open new window in the session
leader 0-9 - Swap to Window 0-9
leader % - Split screen vertically
leader left/right arrow, move between split screens
leader z - full screen the active screen
leader d - disconnect from the tmux session
etc
tmux -a to re-connect to the tmux session
There's a ton of hotkeys and plugins that can handle essentially anything you'd like to do. Once you learn the few hotkeys (print a cheatsheet and force yourself to use the hotkeys).
Tmux is awesome. We've somehow fallen into using screen at work, I think just old habits. So yes, on the other side of the ssh connections there's usually a series of screen sessions for us to join. Should try to move onto tmux - it is nicer.
If you're dead set on a GUI for this, I guess you'd be in the minority which is why you're probably not finding a lot out there.
I think Remmina does this though, and it's solid as an RDP client otherwise.
Yeah seems like Remmina is it. Termius looks nice but the price doesn't make sense.
Surprising that not many Linux sysadmins want a central console with folders for SSH, file copy and remote desktop connections.
As everyone keeps saying...it's just not a thing that actual sysadmins or fluent users need. Using ssh configs is essentially the same thing that you're looking for, but you're just typing alias hostnames instead of clicking on them. Otherwise absolutely no difference. Not many people are connecting by IP address or anything like that.
It absolutely isn't the same, but I appreciate learning that this is how many linux admins manage their connections.
Why do you think it's not? What feature would a GUI have that's not trivial in a terminal?
I've explained this at length?
Single app with unified hierarchy for all systems sorted by work, home, client, prod, staging. Within each you can choose to use SSH or VNC or RDP or SFTP or scp. When copying files there's a side by side GUI so you can browse easily. I have done this using various apps in windows for 20 years and couldn't imagine tracking all those servers/routers/devices without a central console.
It is obviously not the same as manually making all these connections and using different apps for each of them and backing them up with git.
It is obviously not the same as manually making all these connections and using different apps for each of them and backing them up with git.
I mean, that's the whole unix philosophy. Rather than one big monolithic app, we use dozens of tiny ones that can all be scripted and work together. I think I'd just use an org-mode file to create the sort of centralized UI you're describing.
I've yet to find anything more efficient than opening my shell and typing ssh
or scp
. Remote desktop is irrelevant to me because none of the systems I administrate will ever have a GUI.
EDIT: tab auto completion also makes things far, far smoother.
You can have multiple ssh config files, with includes, to keep the configurations structured and organized, and not one long dump file, then use any gui terminal app that supports tabs. And tab+auto complete hostnames from the said configs. Some apps also support something like multiple profiles, so you can put there your ssh command, if you want some gui lists. I follow this approach and it is very portable, as the only thing I need to care about are my config files.
I dunno. The folders keep things sorted between work and home. And within work each client. And within there the prod and staging systems are separated. I guess I could make separate scripts for each host but that's kind of what I want the manager for. Also not sure how this covers the right click, copy files workflow of scp or sftp.
Both: ssh config AND your fancy gui. Because most secondary and tertiary apps recognize the ssh config aliases. I know first hand Gigolo does.
Or your file manager: enter sth like sftp://user@host_alias/home/user - after success, create a bookmark.
I think I'm starting to see this workflow. I can use git to manage the files, then use bitwarden secrets for the keys if I want them backed up too. And once all the shortcuts are setup it can be made portable by syncing to another place with syncthing. Have to setup each link for each host with each app separately.
Still think it seems like manually managing bookmarks using vim and storing them outside of the web browser.
I really like Asbru and have been using it for a couple of years. I used Remmina for a little while but never liked its look and feel.
Not too much active development has been going on lately, sadly, but the latest version still works very well.
This looks great - thanks!
I would say, like many others, Remmina.
Putty also has a Linux version, so you can use that as well. Its session management is a bit clunky, but it works and it offers some fairly good functionalities.
But ssh is first and foremost a command line tool. As others have said, invest some time to learn its commands and configuration files.
SecureCRT. Expensive but my work paid for it.
I bought it personally but I would hardly call it expensive. The three year license is like ~67 USD a year for both CRT and FX.
I love it mainly because it's multi-platform but I wish it had more features. They boast their great integration with VShell but it would be much better if they just had better support for OpenSSH, like being able to push ssh keys to a host.
Uh, I just type ssh
or rsync
into the terminal and that's it. It's a manageable amount of computers/servers I connect to, so I can remeber their names. Regular ssh stores all the keys or custom ports / IPs in its config. What's the advantage of using some manager?
I'll be watching this discussion, as I'm currently using Remmina. It meet the bare minimum of SSH & RDP, but it doesn't have a clear method to organize connections and instead uses a big list. I also find the interface a tad counterintuitive, so maybe I'm just using it wrong.
It also seems to have a bug where it launches twice whenever I start my computer. So I have to close one.
Portx, tabby and guacamole are my contenders so far. Guac would be needed for the graphical stuff - it's sort of like a jump server running in a docker container that you would vpn into I guess? Neat concept.
Use Tabby. It is, by far, the closest to a Linux terminal experience. Likely because it's cross platform. I say this as someone that absolutely despises Windows terminal experiences.
tabby looks neat. already has an mcp plugin - impressive.
I just install my keys as needed to the machines and then configure aliases for quick connections. For file transfer with SFTP I'm using Filezilla because its queuing functionality and site management are nice.
I think for what you are looking for, both puTTY and Remmina should be capable as well as the other options suggested here
Termius?
It is $120 per year for a single user. And to be fair I didn't specify a budget.
Curious though if you use terminus and think that it's worth it? It looks slick but it costs more than my IDE.
The free tier is pretty decent as is (at least I think there’s a free tier, unless I was grandfathered in or something). I did pay the $120 and it is pretty handy for mobile usage. The iOS app is great. Although, my poor impulse control is not a good measure of value
I use Apache Guacamole, which works great for just about any kind of remote access and has a dead simple to use Docker Container.
It supports folders, copy/paste, uploading/downloading files, multiple open connections at once, and alternative mouse modes for touch screens. Best of all, it's completely free and open source.
This looks seriously impressive - and with a docker. Nice. Thank you.
I currently run it with Keycloak for Auth and previously had it behind a Nginx Proxy Manager reverse proxy, but have since switched to using a Cloudflare tunnel.
It works great and allows me to provision limited and controlled access over various game servers to admins of those servers. They can access what they need and nothing more, and only on the servers that they have been granted access.
Rustdesk? Guacamole?