upterm | Instant Terminal Sharing
What is upterm?
upterm is, in my opinion, the coolest way to access your devices via SSH without a complex and annoying setup.
How does it work?
It's quite simple. You only need upterm on the device you want to access over the internet, without any port forwarding or anything like that. You can start it with the following command:
You'll then receive a token, which you use as the username when you want to SSH into your device:
You can automatically accept sessions from another device, interactively accept or reject a session, or even allow only specific public keys from your git profiles. It supports services like Github, Gitlab, and even sourcehut. I found this very convenient, as I switched to sourcehut a few months ago, where access to git repositories primarily works with SSH keys.
That's too insecure for me. I'm not going to let the upterm hoster find out what cat pictures I'm transferring from one device to another >.<
No problem. Of course, I wouldn't be cashmere if I didn't have a suitable Nix service configuration ready for you :D
{
...
}:
{
services.uptermd = {
enable = true;
openFirewall = true;
listenAddress = "0.0.0.0";
port = 2223;
};
}
That's it?
That's it! It's not for nothing that SSH is one of my favorite protocols, one I've grown to love over time.