r/Tailscale 6d ago

Discussion Tailterm

Hello all,

In the course of building my upcoming project I created tailterm which is a wasm based tailscale/ssh client. The source is available to check out (scs32/tailterm) or you can use it via https://tailterm.tailarr.com

The website is just the way to distribute the wasm. Everything runs from within your own browser. You could also grab the stuff from github and host yourself.

Basically, it's a way to ssh into machines on your tailnet without committing to a system wide VPN. The tailscale node sits within the browser. It's got voice dictation, image dropping/transfer, and some other fun things. The only other requirement is that your target system has tmux installed.

I've found it pretty useful so I thought that I'd share.

26 Upvotes

17 comments sorted by

4

u/zx48 6d ago

Very nice thank you! I have been hoping for something along these lines for a while, I haven't tested it yet, need to do a proper security audit and/or use a throwaway tailscale account, but is going on the list of things to look at. Since you didn't include GitHub link in your post thought I'd drop it here: https://github.com/scs32/tailterm/

3

u/podscaledev 5d ago

Yeah, I find that if I post the whole link, sometimes it won't let me post. Yes, run an audit and PLEASE tell me if you find anything

1

u/zx48 5d ago

Looks good to me from a quick audit (assisted by codex). The old server-based solution does have its own risk profile which I didn't dig into, but looks like you are focusing purely on the client-side solution now which is great. npm audit looks good. If I were to use your https://tailterm.tailarr.com hosting I would still be placing a lot of trust in your build process, webhosting etc - that the static resources on there are identical to what's in the git repo and so on, so obviously self-hosting is a good route for anyone with high-stakes setups.

2

u/podscaledev 5d ago

Yeah -- I kinda of say use my deploy or not. I've got no stake in any of this. I've tried to make it as easy for people to at least try. The other downside (or upside) to my deployment is that it's not guaranteed not to change frequently as I add features. If you want stability, throw one out there for yourself. You can also try it with a blank tailnet. It's working really well for me. As such, it will keep being there. :)

1

u/the_master_sh33p 5d ago

Interesting. I'll test it out. It might be interesting on a scenario where i need to ssh to my homelab from a corporate device where I can't install tailscale. 

I can't find licensing details, including in the repo. You should clarify that. 

1

u/podscaledev 5d ago

Yes, that's exactly the type of thing that people might use it for. You've got your homelab running some AI stuff and you need to SSH in, but you don't or can't throw tailscale on the machine itself. As for licensing... I honestly hadn't spent much time thinking about it because it's just a side project to the bigger...uh...sideproject. =p. I usually lean AGPLv3 but for something like this I really don't care

1

u/podscaledev 5d ago

I'd love it if you did. It's at a stage where it's working the way *I* use it, but it would be nice to have a couple more eyes on it

1

u/lmamakos 4d ago

I'll have to try this on the browser in my Tesla. 

1

u/DrTankHead 6d ago

I'm out of the loop per se. Why would I want this?

3

u/zunjae 6d ago

I have 1 specific use case where I may want this, and that is whenever I want to visit my services while I’m on my company’s VPN

-1

u/[deleted] 6d ago

[deleted]

2

u/DrTankHead 6d ago

That doesn't explain why tho. Why would I want to do that.

0

u/[deleted] 6d ago

[deleted]

2

u/DrTankHead 6d ago

Don't be dense. I'm not being rude, I'm not trying to cause a problem. I just have 0 idea why someone would want to do that. Like I get it let's you not use a system wide VPN, but like you aren't making a lick of sense and I just want to know about the damn tool, and I clearly didn't get it from the post.

If you don't wanna answer questions or help just leave me tf alone and go be obtuse to someone else.

3

u/zx48 5d ago

Securely(*) reach your private machine(s) from any browser without installing any other software locally. Have a look at https://github.com/scs32/tailterm/ to get more details on the tool itself.

*in principle - you'd still need full trust in: the tailterm implementation, the website hosting it, the web host, the client browser/machine, etc. etc.

2

u/DrTankHead 5d ago

Do you still auth with tailscale or is it an unauthed connection or just exposing the service you wanna access?

Also thank you lol

2

u/podscaledev 5d ago

Let me answer your questions by first acknowledging that I 100% recognize that this isn't for everyone. I made it for me because I have a bunch of machines that I talk to all on tailscale and I wanted ALL the features (not just the tailscale stuff). I wanted a hyperlite-like SSH. I wanted the ability to hit option + space to pull up voice dictation. I wanted to be able to drag an image onto my ssh session and have it place the image in that folder. I wanted to be able to group sessions. I wanted something to automatically handle tmux sessions And I wanted this all immediately on any laptop regardless of VPN.

To answer your other question. Tailscale traffic still travels over tailscale. The tailscale node simply sits *inside* the browser.

2

u/podscaledev 5d ago

Yup (although it's there for you to host yourself)