Hello,
I stopped using TeamViewer a very long time ago. Since then, I’ve been using DWService and I’m quite happy with it. I like the fact that I can access to the terminal without launching any graphical component on the machine (which is handy for my headless servers, and allows me not to open SSH port). I also like the fact that it works even if my VPN server is down, as I can access remote servers that aren’t accessible via the web when they’re no longer reachable through my VPN.
However, there are a few issues that are bothering me more and more. I’ve switched my mum’s computer to Fedora and, whilst it worked perfectly under Windows, remote control is very buggy under fedora because the connection isn’t great. Furthermore, it’s impossible to access the screen if the computer isn’t unlocked.
So, I’d really like to find a solution that meets my criteria:
- Accessible via a web browser
- Ideally open-source
- Free
- Ideally self-hostable, but I’m worried that if, for example, my reverse proxy or VPN crashes, I won’t be able to access my machines to debug them?
- Allows access to servers without a monitor
- Allows access to computers running Fedora without the need for prior unlocking
Thanks!


why don’t you want to open an ssh port? what’s wrong with that?
just disable password authentication, and maybe get fail2ban. am i missing something?
Optional extra, which I do: Change the SSH port to something non-standard. It’s not more secure, but it does cut down on the logspam.
I’d argue it’s even more secure, as it reduces the amount of attacks you are exposed to. For targeted attacks it changes absolutely nothing. But it keeps you our of a few DBs and spares some brute force attacks.
Essentially, log spam… But also an irrational fear of a security breach.
You could spin a publicly exposed WireGuard daemon firewalled to allow peers access to the non-public SSH port only, which would result in double encryption, but would give you the peace of mind that an attacker would have to compromise both at the same time, which is very unlikely. Plus, WireGuard is very cheap to deploy and produces no logs. We use that model in my office to access our server.
Edit: Otherwise, as others mentioned, you’d move the SSH daemon to a random port, disable password login and weaker keys and cyphers, setup Fail2ban, and optionally setup GeoIP blocking (only allow IPs from your region to connect).
IMO ssh is the tool you’re describing. My ssh server is exposed to the WAN and is configured like this:
PasswordAuthentication noPermitRootLogin nowhy no root login? how do you become root if you need it?
Without root user login, the attacker would have to guess not only the password to the user but also the username (hopefully it’s not something simple like admin), and once you are logged in you can use sudo -i to chage into root, which will require a password, therefore, we also disable password login so if someone does manage to somehow compromise the SSH user, they’d still need the password to become root.
rootis a user account that has all privileges and is what bots are programmed to probe, so exposing it introduces unnecessary risk. IMO there’s no reason to permit root login via ssh in any circumstance, ever, in all cases, absolutely.For all the people thinking, “well the world doesn’t work in absolutes, there’s always a special case!” There isn’t.
If a user needs to use elevated permissions, there are many ways to do that without exposing root. sudo(8) is one way to do that.
Thanks for the great explanation! Seems like because logging in as root is never necessary and indeed never done; people confuse sudoer for root login.
do you use sudo with a password? this and the unknown username is what get as additional security then?
sudo -iis what I would do orsu rootif your other user is not a superuser.