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!

    • Guiorgy@lemmy.ml
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 hour ago

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

    • lntl@lemmy.ml
      link
      fedilink
      English
      arrow-up
      9
      ·
      9 hours ago

      IMO ssh is the tool you’re describing. My ssh server is exposed to the WAN and is configured like this:

      • set to a random port to reduce spam (completely eliminated it for me)
      • set PasswordAuthentication no
      • set PermitRootLogin no
        • Guiorgy@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          57 minutes ago

          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.

        • lntl@lemmy.ml
          link
          fedilink
          English
          arrow-up
          4
          ·
          6 hours ago

          root is 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.

          • DougPiranha42@lemmy.world
            link
            fedilink
            English
            arrow-up
            4
            ·
            5 hours ago

            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.

          • 7EP6vuI@feddit.org
            link
            fedilink
            English
            arrow-up
            1
            ·
            5 hours ago

            do you use sudo with a password? this and the unknown username is what get as additional security then?

        • lewy@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          6 hours ago

          sudo -i is what I would do or su root if your other user is not a superuser.