SSH managers on Linux?
from plumbercraic@lemmy.sdf.org to linux@lemmy.ml on 09 May 19:47
https://lemmy.sdf.org/post/34226760

Curious what folks are using to organise their remote connections? I liked WinSSHTerm and have tried replacing it with Remote Desktop Manager, but it seems a bit broken (fonts look terrible in a terminal, sftp doesn’t work, RDP sort of works, but it’s not great).

RDP is not a must. Folders, ssh, key auth, sftp and scp are the main things I’m looking for. Currently considering Remmina but though I would check if ppl have strong views on this topic before trying the next app.

I’m using cinnamon with mint 22.

#linux

threaded - newest

just_another_person@lemmy.world on 09 May 19:54 next collapse

ssh config? Not sure what you’re looking for. Like a list of preconfigured connections?

plumbercraic@lemmy.sdf.org on 09 May 19:57 next collapse

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.

ignoble_stigmas@sh.itjust.works on 09 May 20:25 next collapse

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 <host> 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.

plumbercraic@lemmy.sdf.org on 09 May 20:38 collapse

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.

just_another_person@lemmy.world on 09 May 20:36 next collapse

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.

plumbercraic@lemmy.sdf.org on 09 May 20:47 collapse

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.

Badabinski@kbin.earth on 09 May 21:12 next collapse

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.

just_another_person@lemmy.world on 09 May 22:47 collapse

As everyone keeps saying…it’s just not a thing that actual sysadmins or fluent users need. Using git 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.

plumbercraic@lemmy.sdf.org on 09 May 23:18 collapse

It absolutely isn’t the same, but I appreciate learning that this is how many linux admins manage their connections.

Nibodhika@lemmy.world on 09 May 23:34 collapse

Why do you think it’s not? What feature would a GUI have that’s not trivial in a terminal?

plumbercraic@lemmy.sdf.org on 09 May 23:58 collapse

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.

jerkface@lemmy.ca on 10 May 00:28 next collapse

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.

Nibodhika@lemmy.world on 10 May 07:25 collapse

A single app is not necessarily a good thing, I would argue that you’re already using multiple apps on your day-to-day work, and it would be better if remote connectivity were integrated into those. For example, you mentioned a side-by-side view of two locations, this is a normal workflow on day-to-day even without remote access, sometimes you want to have your file explorer split the view in two and look at two folders simultaneously to perform operations, ideally this exact same flow should be able to connect to any remote host and show it to you seamlessly, so you can use the same flow for copying stuff from folder A to folder B regardless of the folders being in different machines.

Unified hierarchy doesn’t make much sense for remote connections. I see why you would want to have some organization as in groups of machines, but I don’t understand what you mean by hierarchy. In any case ssh/config is a unified source of truth for this that all of the commands you mentioned (and many more) use when trying to connect remotely via ssh.

You know the name of the tool, what’s the problem with using the tool directly? For ssh you’re going to be dropped in a terminal, so starting in a terminal should be acceptable, for VNC or RDP whatever client you use should be able to parse the ssh/config files so you’re not duplicating information, for SFTP or SCP you should be using your default file explorer as of the other machine were a different folder, there’s no need to have a separate app for it (also you should consider looking at rsync since it’s much better than naively copying files over).

I know it’s not the same as you’re used to, but it’s one of the core differences in philosophy from Windows to Linux. The philosophy on Unix in general os for an app to do one thing, but do it well, so it’s much more common to use different apps for different stuff than having a monolithic app that does everything but nothing perfectly. That being said, the closest I know of for what you’re asking is Remmina, although I use it only for RDP since for ssh and rsync I prefer a terminal (and since I have the hosts configured I get tab completion as if they were local folders). That being said I only have a handful of machines to connect to, so I don’t need any sort of organization on them, and when I had dozens of machines to attend to I used Ansible and other stuff to perform bulk actions per group and other maintenance stuff.

I hope Remmina works for you, or that you find something that does, unfortunately I think that might be very hard because of the philosophical differences from Linux to Windows, in general Linux users prefer that their default file manager be able to connect via ssh using the default ssh configs than a secondary ssh manager that can browse files but is neither the source of truth for ssh nor the default file manager. I know I keep using the same example, but it is very telling of the difference in philosophies (and yes, most if not all of the file explorers in Linux can in fact connect via ssh using your default configs).

A_norny_mousse@feddit.org on 09 May 21:40 next collapse

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.

plumbercraic@lemmy.sdf.org on 09 May 22:27 collapse

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.

FauxLiving@lemmy.world on 10 May 00:02 next collapse

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).

plumbercraic@lemmy.sdf.org on 10 May 00:15 collapse

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.

oshu@lemmy.world on 10 May 09:08 collapse

you are managing 20+ remote systems by hand?

[deleted] on 09 May 23:39 collapse

.

slazer2au@lemmy.world on 09 May 20:02 next collapse

Mobaxterm?

Stupid windows only.

plumbercraic@lemmy.sdf.org on 09 May 20:21 collapse

I meant for Linux. I am not brave enough to ask for windows app recommendations on Lemmy in the Linux community

slazer2au@lemmy.world on 09 May 21:05 collapse

I didn’t realise it was windows only. I assumed it was like royal TS where they also have a cross platform client.

ivgranite@lemmy.world on 09 May 20:04 next collapse

Termius?

plumbercraic@lemmy.sdf.org on 09 May 20:28 collapse

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.

ivgranite@lemmy.world on 09 May 21:59 collapse

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

Peffse@lemmy.world on 09 May 20:07 next collapse

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.

plumbercraic@lemmy.sdf.org on 10 May 00:09 next collapse

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.

timbuck2themoon@sh.itjust.works on 10 May 18:39 collapse

It has groups FYI. Set it under your specific connection settings.

hendrik@palaver.p3x.de on 09 May 20:08 next collapse

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?

thenextguy@lemmy.world on 09 May 20:11 next collapse

I just use ~/.ssh/config

e.g.

Host website
    Hostname some.hostname.foo
    User bob
    Port 1500
A_norny_mousse@feddit.org on 09 May 21:36 next collapse

And most secondary apps, e.g. git and sshfs, even Gigolo, recognize these aliases. It’s the best.

thenextguy@lemmy.world on 10 May 13:58 collapse

And vscode uses them for remote ssh development.

Xanza@lemm.ee on 10 May 01:22 next collapse

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

elmicha@feddit.org on 10 May 04:19 next collapse

Or just use completion: press tab once or twice after the ssh command (and a space). If that doesn’t work, install the bash-completion package.

A_norny_mousse@feddit.org on 11 May 08:19 collapse

Shell completion ftw. Once you grok the double-tab you might start using the terminal more than your filemanager.

A_norny_mousse@feddit.org on 11 May 08:28 collapse

Meh. ssh<space><tab><tab> does the same.

Also, useless use of cat. And grep.

awk '/Host / {print $2}' ~/.ssh/config | fzf
igorette@lemmy.ml on 10 May 04:41 next collapse
markstos@lemmy.world on 11 May 13:34 collapse

For a shared set of hosts at work, you can check a shared SSH include file into got so changes to the cluster can be updated in one place.

golden_zealot@lemmy.ml on 09 May 20:16 next collapse

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

rutrum@programming.dev on 09 May 20:16 next collapse

If youre on windows, mremoteng is very comprehensive: mremoteng.org

Valon_Blue@sh.itjust.works on 09 May 20:25 next collapse

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.

plumbercraic@lemmy.sdf.org on 09 May 22:54 next collapse

tabby looks neat. already has an mcp plugin - impressive.

plumbercraic@lemmy.sdf.org on 12 May 09:08 collapse

update to say that tabby is nice for ssh including key auth, and with profiles and groups it gets most of the job done. There is an sftp “plugin” but all it does is summon sftp. Will see if I can get it to open filezilla and use the env vars in calling the command. Setting aside RDP for now as guac looks like a good fit there.

isgleas@lemmy.ml on 09 May 20:30 next collapse

Rustdesk? Guacamole?

CocaineShrimp@lemm.ee on 09 May 20:48 next collapse

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/*
eager_eagle@lemmy.world on 09 May 20:52 next collapse

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
Xanza@lemm.ee on 10 May 01:23 next collapse

Oh well that’s just sexy. Never knew ssh config recognized Include.

ashley@lemmy.ca on 11 May 02:48 collapse

(looks at my 230 line config)

yeah… maybe

auginator@lemmy.world on 09 May 20:51 next collapse

SecureCRT. Expensive but my work paid for it.

theit8514@lemmy.world on 09 May 23:04 collapse

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.

auginator@lemmy.world on 13 May 08:09 collapse

Don’t know why I thought it was like 150. $67 isn’t bad.

Termight@lemmy.ml on 09 May 20:59 next collapse

Remmina proves a reliable solution for remote desktop access when a graphical interface is required. However, for more streamlined operations, terminal-based SSH access ssh username@remote_host remains the preferred method. Establishing passwordless authentication is, naturally, a matter of convenience. The command ssh-copy-id username@remote_host facilitates this process. It’s a rather elegant solution, isn’t it? A testament to the power of minimalism.

aMockTie@lemmy.world on 09 May 21:06 next collapse

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.

plumbercraic@lemmy.sdf.org on 09 May 22:32 collapse

This looks seriously impressive - and with a docker. Nice. Thank you.

aMockTie@lemmy.world on 10 May 01:32 collapse

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.

ParadeDuGrotesque@lemmy.sdf.org on 09 May 21:33 next collapse

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.

RandomChain@lemm.ee on 09 May 21:49 next collapse

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. www.asbru-cm.net

plumbercraic@lemmy.sdf.org on 09 May 22:29 collapse

This looks great - thanks!

i_am_not_a_robot@feddit.uk on 09 May 22:32 next collapse

Muon.

Does SSH, SFTP and other stuff.

suicidaleggroll@lemm.ee on 09 May 23:49 next collapse

How about XPipe?

xpipe.io

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.

plumbercraic@lemmy.sdf.org on 10 May 00:16 next collapse

I will check this out - thank you.

flubba86@lemmy.world on 11 May 00:58 collapse

+1 for XPipe. This is pretty much exactly what OP is asking for. It also does SSH tunneling, SSH reverse-tunneling, manages connections into containers, and many other things. I’m a big fan.

Marthirial@lemmy.world on 09 May 23:51 next collapse

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.

plumbercraic@lemmy.sdf.org on 10 May 00:07 collapse

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.

MangoPenguin@lemmy.blahaj.zone on 10 May 02:13 next collapse

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.

BrilliantantTurd4361@sh.itjust.works on 10 May 03:19 next collapse

The reason you are having trouble finding a replacement is because thats not really how the linux world approaches things.

Learn the terminal, scp, ssh (esp key auth if you havent), sshfs, tmux, vim or emacs and you will find you are incredibly effective at modern admin tasks. If you havent already, look into something like saltstack or ansible to make your life even easier.

plumbercraic@lemmy.sdf.org on 10 May 06:55 collapse

I use those tools already and have been administering Linux/bsd/docker for years. What’s new for me is using it as a desktop. The existence of scp, ssh etc dont solve this problem and while I find it interesting to learn how other admins are essentially making their own central console out of these components, it is a bit much seeing commenters insist that this is the same thing, or suggesting that anyone who wants a central console for their remote systems must be somehow incompetent. Sysadmins can have different workflow and tooling preferences.

ikidd@lemmy.world on 11 May 03:59 next collapse

I’ve been using Linux for almost 30 years, and I agree with you completely. There should be a plethora of tools to organize SSH hosts, but unfortunately none of them are great, or at least I’ve never particular gelled with any. I just remember the hostnames and what user I happen to use for each, and copy my keys around, because I jump around between a lot of computers.

I did use SSHwifty for a while because then I could just jump into a browser and go to a webpage with all of them. Dunno why I got away from that, it was handy.

utopiah@lemmy.ml on 11 May 04:50 collapse

Folders, ssh, key auth, sftp and scp are the main things I’m looking for.

suggesting that anyone who wants a central console for their remote systems must be somehow incompetent

IMHO that’s exactly what ~/.ssh/config using its Include directive as shown in lemmy.ml/post/29858248/18510482

       Include
               Include the specified configuration file(s).  Multiple
               pathnames may be specified and each pathname may contain
               glob(7) wildcards, tokens as described in the “TOKENS”
               section, environment variables as described in the
               “ENVIRONMENT VARIABLES” section and, for user
               configurations, shell-like ‘~’ references to user home
               directories.  Wildcards will be expanded and processed in
               lexical order.  Files without absolute paths are assumed
               to be in ~/.ssh if included in a user configuration file
               or /etc/ssh if included from the system configuration
               file.  Include directive may appear inside a Match or Host
               block to perform conditional inclusion.

from man7.org/linux/man-pages/man5/ssh_config.5.html

So what I think people are highlighting is not that your need is wrong, rather that you rather than going back to fundamentals (e.g. lower command-line or even configuration here level stuff) you are looking for more complex and specialize tools. That tends to be reasonable in the Windows world where people are often looking for GUI but in Linux, started from Unix and thus CLI, this is a process that will often lead to disappointment. I believe people who are saying things perceived negatively here are pointing out, maybe poorly, a cultural difference that will be problematic in the future, thus why they are insisting.

utopiah@lemmy.ml on 11 May 04:52 collapse

Indeed someone else pointed out lemmy.ml/post/29858248/18514122

gnuplusmatt@reddthat.com on 10 May 07:01 next collapse

in my terminal I press ctrl + r and then type the name of the machine

Lemmchen@feddit.org on 10 May 07:37 next collapse

Konsole (KDE’s Terminal) has built-in SSH management features:

techrepublic.com/…/use-kde-plasmas-konsole-ssh-pl…

flubba86@lemmy.world on 11 May 00:54 collapse

Thanks for the reminder, I always forget about this feature, I should use it more.

Lemmchen@feddit.org on 11 May 13:22 collapse

I had to be a KDE user for 7 years or something to first notice it is there.

timbuck2themoon@sh.itjust.works on 10 May 18:34 next collapse

I hear ya on RDP. Sadly I still need to use that at times so reminna is good.

Otherwise, I just use tmux. Colleagues use midnight-commander.org for SCP and stuff of you like. I prefer simple rsync and whatever but they seem to like it. Something to look into.

ikidd@lemmy.world on 11 May 03:55 next collapse

Konsole has an SSH Manager plugin you can enable.

plumbercraic@lemmy.sdf.org on 14 May 18:29 collapse

that is cool. I hadn’t tried konsole before - there are menus for days in here, I’ll never get any work done lol. Slick, and makes that fedora kde fling I have been considering more tempting.

ikidd@lemmy.world on 14 May 18:43 collapse

Fedora KDE is what I’ve settled on for the last couple years. I’ve used Linux a very long time, this setup has been completely painless since I installed, and always very up to date.

phoenixz@lemmy.ca on 11 May 04:29 next collapse

ssh.serverdomain scripts that immediately can do things like turn on the required vpn. In combo with SSH keys and non port 22, it’s ideal

foremanguy92_@lemmy.ml on 11 May 09:05 next collapse

Just the old .ssh/config file, works like a charm on all terminals :)

Zeoic@lemmy.world on 12 May 12:18 collapse

Odd that you have so many issues with Remote Desktop Manager, I use it all the time from my linux desktop, and both rdp and ssh work flawlessly