I Tried Termius for My Home Lab and Replaced My SSH Client

Termius ssh client

I am always on the lookout for the next tool that makes sense for me to use in my home lab environment or that brings new features or capabilities to what I can do. If you spend enough time in a home lab, you eventually stop thinking of SSH as a protocol and start thinking of it as your main tool. You open a terminal, connect to a host, run a few commands, and so on. Then you do it all again by jumping over to a different host. I have been hearing about a tool called Termius that I hadn’t tried out as of yet. It looked really slick and so I decided to try it out. As a mention, no one engaged me to write about Termius, these are strictly my thoughts in using the product in the home lab. Let’s look at the Termius SSH client and see how things turned out using it as my daily driver for SSH connections.

Why I started looking for something different

Like most of us in the home lab, I have tried a LOT of different terminal emulator tools over the years. On Windows I bounced between different tools, including built-in ones like Windows Terminal, PuTTY, and the RDP built-in app in Windows.

But most recently over the past few years, I have mainly used the Remote Desktop Manager (RDM) from Devolutions. I think this is a great tool in general for all that it can do and the wide range of connectivity protocols it gives to you. Nothing has been broken for me with RDM, but I just wanted to try something new for a chance.

My environment has definitely changed over the past couple of years. I have way fewer Windows hosts now compared to Linux hosts. So primarily, my main connectivity to my home lab happens over SSH connections. Now I have primarily Proxmox nodes, Kubernetes clusters, and Docker hosts.

This is where trying out Termius seemed to make a lot of sense, since it is focused around SSH connectivity and SFTP, it covers what I need to do for the majority of my workflows and sessions.

What is Termius?

If you haven’t heard about Termius as of yet, you are not alone. In all fairness, I have heard about it mentioned from time to time, but just hadn’t tried it out. Termius is self-described as a “modern SSH client” and I think it fits that description fairly well in the features, and the look and feel of the solution.

Termius is a modern ssh client for terminal based connectivity
Termius is a modern ssh client for terminal based connectivity

In reading the Termius documentation, it also lists quite a few other things that I think are worth noting about it, especially when it comes to security. Note the following:

  • 2FA for authentication – they provide 2FA on your account to prevent takeover type attacks
  • Account monitoring – They protect users against having their accounts brute-forced, etc
  • Encryption at rest and in transit – they protect your data at both layers
  • SOC 2 Compliance – they are certified as SOC 2 compliant
  • Other protections – DDoS protection, network-level security, custom security headers to help protect users from attacks

Also, one of the things that caught my attention is that the “starter” version is totally free. They also use my kind of language and mention “home labs”. They also cater to teams and enterprise customers as well. But great to know you can use it for totally free.

Viewing pricing for termius and the free home lab starter version
Viewing pricing for termius and the free home lab starter version

With the Starter version that I have tried now in the home lab, there are some really nice features that I like as well, including just the modern look and feel of the app. But, you also get some neat things like AI-powered autocomplete (I didn’t have to plugin an API key, etc). Also, there is almost an insane amount of themes to choose from, along with a nice history browser that makes seeing your history extremely easy to do. Let’s look into these in more detail.

Using Termius – Adding connections

I am not going to detail the process to install it as it is very straightforward. You just run the installer they provide you with, when you sign up.

After you launch Termius, you will have the ability to then start creating connections. Below, I had already added a couple of hosts to play around with. But to add more I just click the + New host button to begin the process.

Beginning the process to add a new host in termius
Beginning the process to add a new host in termius

Enter the address of the host you want to target with the connection. Below, you will see the Proxmox VE Servers which is a “group” that I have already added. This allows you to organize your hosts into groups of like connections, which is great for keeping things organized.

Entering the new hostname for termius to connect to
Entering the new hostname for termius to connect to

When you click to connect, you will be prompted to enter the username for the connection.

Entering the username for the host connection
Entering the username for the host connection

Then you will get the prompt asking if you want to trust the fingerprint of the host. Click the Add and continue button.

Verifying the authenticity of the ssh target in termius
Verifying the authenticity of the ssh target in termius

Then, you can type in your password.

Entering the password in termius for a new host
Entering the password in termius for a new host

Also though, you can use the public key authentication tab if you want to use that instead of a password to connect to the new host.

Authenticating in termius using public key authentication
Authenticating in termius using public key authentication

After connecting to the new Proxmox host in Termius.

Connected to a proxmox host using termius
Connected to a proxmox host using termius

Customizing the look and feel of Termius

One of the cool things I really like about Termius is the ability you have to easily customize the look and feel. A lot of other apps like Remote Desktop Manager (RDM), the look is highly customizable as well for terminal sessions, but it means you have to customize the RGB values for text, background, and fonts. It is not nearly as easy.

Termius has predefined themes that make this process really easy. Under the settings you just click the one you want. You can also do this in real-time outside of the settings.

Termius has tons of themes that you can use to customize your terminal experience
Termius has tons of themes that you can use to customize your terminal experience

Below, you can see the font customization:

Changing the font in termius
Changing the font in termius

Snippets are one of my favorite features

One of my absolute favorite features of Termius is the Snippets feature. What are snippets? Think of these like little scriptlets that you can save and then literally just click on them to send them to your terminal. So if you run a set of commands a lot in troubleshooting or in day-to-day maintenance, you can save these commands as a Snippet and then use them across all your hosts.

Saving and running snippets
Saving and running snippets in the termius ssh client

Imagine some of the things that you could store in your Snippets area of Termius. I am thinking about things like the following.

Container troubleshooting:

docker ps -a
docker logs <container>
docker inspect <container>
docker exec -it <container> bash

Kubernetes checks:

kubectl get nodes
kubectl get pods -A
kubectl get pvc -A
kubectl top nodes

Proxmox health checks:

pveversion -v
ceph -s
pvesm status
qm list
pct list

Network troubleshooting:

ip addr
ip route
ss -tulpn
ping <host>
traceroute <host>

I think these are great as I have historically saved commands in my “second brain” notes app and then copied and pasted from there. But with the Termius Snippets, you can have those commands already available to you in your saved Snippets. Then all you need to do is click the Snippet and choose either Paste or Run.

Another feature that mattered more than I thought it would

There was another feature that before I worked with it, I didn’t really expect it to be as powerful as it turned out to be. That is the History feature of Termius. Termius takes your command history and presents this to you in a way that I think makes it more powerful than it is from the normal terminal prompt.

When you click the history button in the right-hand pane (looks like a clock), you will see your command history. But, that is not all. It is searchable. This is a game changer. Have you ever been looking for a specific command that you knew you ran at some point, but you just couldn’t find it with the history command? Granted there is grep and other tools you can use. But Termius just makes this brain-dead simple. You can type in the search field for the command history and easily find what you are looking for.

History feature of termius is really powerful and searchable
History feature of termius ssh client is really powerful and searchable

Also, from the history pane, you can also save any of the commands to the Snippets area. This makes it even handier to recall commands that you may have found in history that you want to have closer at hand the next time.

Port forwarding in Termius

Another neat feature I found in Termius is the Port forwarding feature. This allows you to securely access a service that is behind a firewall on a private network. So, you can access things like web dashboards, databases, Kubernetes, Proxmox web interfaces, etc. Instead of exposing all those ports, Termius lets you create SSH tunnels that can securely forward traffic over the encrypted SSH session.

With local port forwarding, you can securely map a remote service to a local port on your workstation and access it as if it were running locally. For example, if you need to access a remote database or internal web interface, you can find that to localhost without exposing it externally. Termius also supports remote and dynamic forwarding for more advanced scenarios.

Port forwarding options found in termius
Port forwarding options found in termius

Vault allows your connections to follow you

One of the things that I wasn’t sure about in the wording of the different Termius offerings, including Starter, was if the Starter offering actually allowed your connections to be remembered in the cloud vault, instead of just your local device.

In testing, I did find that my Vault was available to me on my mobile app as soon as I logged in, meaning all my connections were there and available without having to do anything extra.

Mobile version of termius app
Mobile version of termius app

Pros and Cons of Termius

Note what I think are the main pros and cons of the solution to take note of:

ProsCons
Clean, modern UICollaboration features require Pro plan
Syncs across devicesNo RDP support yet
Command snippetsSome features will take some time to get familiar with coming from other solutions
Command history + history searchTrusting a cloud service with encrypted private keys may concern some users
Strong security and key managementReliance on cloud sync for convenience
Good tools to organize resources
Fast host/session search

Wrapping up

Termius SSH client definitely checks a lot of the right boxes for me in what I look for in a terminal app that I use to access resources over SSH connections. I am really impressed with the features of the app like Snippets and the History tab that is searchable. The look and feel of the app is really great too with easy customization so you enjoy your terminal experience. How about you? Have you tried out Termius as of yet? What is your SSH app of choice that you use in your home lab?

Google
Add as a preferred source on Google

Google is updating how articles are shown. Don’t miss our leading home lab and tech content, written by humans, by setting Virtualization Howto as a preferred source.

About The Author

Brandon Lee

Brandon Lee

Brandon Lee is the Senior Writer, Engineer and owner at Virtualizationhowto.com, and a 7-time VMware vExpert, with over two decades of experience in Information Technology. Having worked for numerous Fortune 500 companies as well as in various industries, He has extensive experience in various IT segments and is a strong advocate for open source technologies. Brandon holds many industry certifications, loves the outdoors and spending time with family. Also, he goes through the effort of testing and troubleshooting issues, so you don't have to.

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments