Maybe I’m using the wrong terms, but what I’m wondering is if people are running services at home that they’ve made accessible from the internet. I.e. not open to the public, only so that they can use their own services from anywhere.

I’m paranoid a f when it comes to our home server, and even as a fairly experienced Linux user and programmer I don’t trust myself when it comes to computer security. However, it would be very convenient if my wife and I could access our self-hosted services when away from home. Or perhaps even make an album public and share a link with a few friends (e.g. Nextcloud, but I haven’t set that up yet).

Currently all our services run in docker containers, with separate user accounts, but I wouldn’t trust that to be 100% safe. Is there some kind of idiot proof way to expose one of the services to the internet without risking the integrity of the whole server in case it somehow gets compromised?

How are the rest of you reasoning about security? Renting a VPS for anything exposed? Using some kind of VPN to connect your phones to home network? Would you trust something like Nextcloud over HTTPS to never get hacked?

  • @spez_@lemmy.world
    link
    fedilink
    English
    132 years ago

    I am not exposing any ports online. I do not trust myself

    Instead, I am using Tailscale (Wireguard)

    • @notleigh@aussie.zone
      link
      fedilink
      English
      22 years ago

      I’ve got a very similar setup now. Only recently adopted tailscale and was previously port tunnelling over SSH to access anything on the local network. SSH is still open, and am just waiting a bit to see if theres any cases where I need it before closing that out too.

      Short story: If you don’t need stuff open to the general public, just having Tailscale will probably cover you.

  • @droidpenguin@lemmy.world
    link
    fedilink
    English
    122 years ago

    Ya my paranoia only allows me to expose Wireguard to access everything. I sleep better at night knowing that’s the only thing exposed. Too many instances of major companies getting hacked who have dedicated security teams to manage that. I am one person, learning to manage my own stuff in my free time.

  • @MaxMouseOCX@lemmy.world
    link
    fedilink
    English
    82 years ago

    Run your own vpn, and only allow access to your services remotely if they are coming through that vpn.

    Now you’ve shifted some of the security over to how secure your vpn server’s authentication is.

    • @EddyBot@feddit.de
      link
      fedilink
      English
      12 years ago

      This year I started using DynDNS with only my IPv6 address since IPv4 is behind CGNAT and it actually works quite well nowadays

      • kratoz29
        link
        fedilink
        English
        12 years ago

        What do you mean works? Like you could access from everywhere some services like Plex or Nextcloud?

          • kratoz29
            link
            fedilink
            English
            12 years ago

            Ok, I’m not sure of how exactly this works, but I’m gonna check it out since I have IPv6 addresses.

            Just to be clear, even from IPv4 only can access my exposed services?

            • @EddyBot@feddit.de
              link
              fedilink
              English
              12 years ago

              If you expose ports on IPv4 or IPv6 (port forwarding) anyone can access the service behind these ports if they know your address but so do you too

  • @blackstrat@lemmy.fwgx.uk
    link
    fedilink
    English
    12 years ago

    I run a few services that require ports to be open. Everything that can go behind a reverse proxy does so. But there’s some that can’t and that’s OK.

  • @csm10495@sh.itjust.works
    link
    fedilink
    English
    2
    edit-2
    2 years ago

    I’ll put a recommendation out for if you’re going to open ports: use abnormal ports. Someone is likely to try to hit your port 22 for ssh, but not your port 49231.

    Edit: It’s definitely some security by obscurity. Still use a strong password or keys.

  • @redballooon@lemm.ee
    link
    fedilink
    English
    52 years ago

    I did for a while, but it never felt right.

    I’m also lazy a f, so I purchased a new router that comes with WireGuard VPN and that works well enough with our iPhones.

  • @static09@lemmy.world
    link
    fedilink
    English
    2
    edit-2
    2 years ago

    I don’t technically open any ports to the public. I have a site-to-site wireguard tunnel to a hosted server. The hosted server is running a hypervisor with two virtual switches. One switch is my external switch and only my Wireguard server is using it. The other is an internal switch where I place other VMs for separate things. A container host, a terminal server with xrdp, a monitoring server with netdata, stuff like that. All technically, but unnecessarily, accessed through nginx proxy manager.

    Because it’s site2site with my home equipment on the Wireguard server, i can still connect to my home network where i host a number of separate services like HomeAssistant from outside the home network.

    I don’t use tailscale, but Wireguard vanilla is super easy to work with. I also have fail2ban pretty much everywhere I can install it because it takes up practically zero resources.

  • zib
    link
    fedilink
    42 years ago

    I have https open along with a non-standard port for ssh. Just for fun, I have the standard ssh port open, but redirecting to a Raspberry Pi running a honeypot. It’s fun to mess with foreign bots trying to access my network.

    • FarraigePlaisteach
      link
      fedilink
      02 years ago

      Do you see much activity there?

      I know that they say that security through obscurity doesn’t work, but to me (a novice) it sounds like a good idea to route the default port to a dummy server.

      • zib
        link
        fedilink
        22 years ago

        I do see a decent amount of activity on it. Full disclaimer, I am not a security expert. I know just enough to be dangerous. But, I see at least a few connection attempts from different IPs about every day. The top 3 countries of origin are China, Russia, and Brazil (based on the reverse DNS, but it’s possible some are using VPNs to hide their origin). My impression is they’re all bots that just go through a list of IP addresses, attempting to connect to the standard ssh port, then guessing the username and password. What I’ve found is they usually go through a list of likely ssh ports until one of them connects. Having the default port open to only the honeypot means they usually establish the connection, then leave it at that, so my real ssh port never gets hit. I kinda think of it like scambaiting, where I’m just wasting time they might otherwise spend trying to break into someone else’s real ssh server.

  • @notannpc@lemmy.world
    link
    fedilink
    English
    7
    edit-2
    2 years ago

    I’ve got a few layers of security for my homelab setup that make me feel pretty comfortable against random attacks.

    Cloudflare is used to manage my domains and act as an external proxy to obscure my IP address, I’ve only forwarded ports 80 and 443 to Traefik my containerized reverse proxy, Authelia to add 2FA to services that I feel should have extra protection and my homelab nodes are on a separate vlan that is configured to drop all attempts to initiate communication outside of that vlan. I also use the ubiquity intrusion detection and prevention features on my firewall to attempt to stop any know malicious activity.

    A majority of these configurations are overkill for a homelab, but were fun to implement. If you use a reverse proxy and keep your software up to date you will likely be fine unless you are specifically targeted by skilled hackers. Any random scans, or shotgun style attacks tend to target unpatched vulnerabilities.

  • I use Remote Desktop, BitTorrent, and play games, so I need some things open for that. I used to be super paranoid about hackers and viruses and shit like that, but it’s not like those things are looking for regular, everyday users and even if they did get in my system, I don’t keep anything important on my computer so I can just wipe it all out and reinstall everything.

  • milkjug
    link
    fedilink
    English
    12 years ago

    80, 443 for HTTP/S, and 587 for a VPN service. Reason being that I travel frequently, and often have to connect through a bunch of different networks, Airport WiFi, mobile roaming, hotel WiFi, etc. and you never know the kinds of network restrictions they impose on their pipes.

    80 and 443 is least likely to be dropped, while 587 is a common SMTP port that could make it through most networks.

  • @BCsven@lemmy.ca
    link
    fedilink
    English
    22 years ago

    I’m somewhat like you, in that I recognize I’m not a network guru. My home server with containers, as well as a few other devices are blacklisted from accessing the internet at my router. When i have needed outside access I have one machine with wireguard and some ip forwarding/masqurade etc so I have one connection in but can see the LAN for logging into stuff “locally”. The only pain is non internet access devices losing sync with a time server.

  • @Smk@lemmy.ca
    link
    fedilink
    English
    92 years ago

    I open 443 and 80 on my router and forward it to a reverse proxy.

    I have a couple of service that are exposed but most of them make sense only when I’m home so I whitelist private IP address on my reverse proxy.

    If you do.your basic security such as updating your servers and services and not having dumb password, you shouldn’t be afraid. Think about it, all of the services that you use is exposed on the internet. I did work for big company and they don’t do much more than what you would probably do, except maybe having some automated monitoring that flag weird stuff. But hey, aside from bots, I don’t think Russian hackers are interested in your stuff. Stay low profile with your exposed things and it’s gonna be alright. Make sure you backup.