I’ve wanted to do this for a long time. My current ADHD hyperfixation is NodeBB, but I think my questions fit most anything that you want to be available to the general public and not just yourself and your friends.

Basically, I want to host a NodeBB instance intended for the general public out of my house. What are the risks of doing this? In particular, what are the risks of doling out a web address that points to my personal IP address? Is this even a good idea? Or should I just rent a VPS? This is 80% me wanting to improve my sysadmin skills, and 20% me wanting to create a community.

I have a DMZ in place. Hosts in the DMZ cannot reach the LAN, but LAN hosts can reach the DMZ. If necessary, I can make sure DMZ hosts can’t communicate with each other.

I have synchronous 1 Gb fiber internet. Based on the user traffic of similar forums, I don’t anticipate a crush of people.

I know the basics of how to set up a NodeBB instance, and I’ve successfully backed up and restored an instance on another machine.

I’m not 100% on things like HTTPS certs. I can paste a certbot command from a tutorial, that’s it.

Anything else I should know? Thanks!

EDIT:

I also have a domain, a couple of them, actually. They’re like potato chips; you can’t stop at just one.

I don’t plan on self-hosting email used for forum registration and announcements. I’m not a masochist.

EDIT for future readers:

I think for now I’m not going to self host anything I intend to be accessed by the public. While I pay the internet bill, my name is on the account, and I own all the equipment, I’m not the only member of this household, so it would be somewhat inconsiderate of me to share our bandwidth with public traffic. In general I think those warning against self-hosting resources one intends to be accessed by the general public are pretty sound.

I tried the Cloudflare tunnel suggestion, but it doesn’t seem to play nice with NodeBB. I can access the forum, even over HTTPS, but I can’t log in. Some quick googling leads me to believe it has something to do with web sockets. The first fix I found involves exposing my IP, which defeats the purpose of using a cloudflare tunnel. There may be a way around it, but I frankly can’t be bothered.

  • poVoq
    link
    fedilink
    English
    -113 days ago

    Well, obviously if you host from your home ISP, people will be able to figure out your home’s approximate location via a reverse IP search.

    But otherwise go for it. It’s not that hard to do and a nice learning experience.

  • @rice@lemmy.org
    link
    fedilink
    English
    0
    edit-2
    13 days ago

    Do it.

    There’s really not much that can end badly, someone gets in your network (unlikely anyone even knows it exists)? reformat all your shit. Just by knowing what a DMZ is you are already more qualified than half the people I’ve met self hosting

    do you run a business out of your house? do you run a bunch of peoples personal info? does anyone else? If you answered no to all of these then there really isn’t much that can “go wrong” you can just unplug your shit.

    hosting email also isn’t that big of a deal but your home ISP will block port 25, you need to have a “business” one for them to unblock it and even then sometimes have to directly request it. Things like mailcow docker make it dead easy.

    and yea as the other guy said always update your stuff

    • @Onomatopoeia@lemmy.cafe
      link
      fedilink
      English
      113 days ago

      Scans for open ports run continuously these days.

      Ten years ago I opened a port for something for a couple days - for months after that I was getting regular scans against that port (and others).

      At one point the scans were so constant it was killing my internet performance (poor little consumer router had no defense capability).

      I don’t think the scans ever fully stopped until I moved. Whoever has that IP now probably gets specifically scanned on occasion.

      And just because you don’t run a business doesn’t mean you have nothing to lose.

      DMZ should be enough… But routers have known flaws, so I’d be sure to verify whatever I’m using.

      • @rice@lemmy.org
        link
        fedilink
        English
        2
        edit-2
        12 days ago

        scans for open ports ran continuously since the 1990s, it was never a big deal. Also they only run on lower ports (not that it matters)

        what are you talking about killing your internet performance? You can have hundreds of thousands of scans per day (which isn’t gonna happen, you won’t even get 100) and it still won’t bog down jank cable internet from early 2000s

  • Encrypt-Keeper
    link
    fedilink
    English
    2213 days ago

    If you are based in America, you will want to keep a close eye on the semi-regular attempts from congress to repeal Section 230 of the Communications Decency Act.

    If it’s ever successfully repealed, you’d become liable for anything posted to your forum.

    • NSRXN
      link
      fedilink
      English
      313 days ago

      If it’s ever successfully repealed, you’d become liable for anything posted to your forum

      unless you refuse to moderate it. then you are only criminally liable in the circumstances that have been codified, which usually has a takedown grace period.

      • @ChapulinColorado@lemmy.world
        link
        fedilink
        English
        612 days ago

        By then you would have racked up thousands of dollars in legal fees. Not to mention if anyone posts anything negative about the current administration you could be used as an example.

        We already have students on visas being kidnapped off the streets, let’s stop pretending the law actually matters for the people in power.

        • NSRXN
          link
          fedilink
          English
          -112 days ago

          it’s settled law that you are absolved of responsibility if you don’t moderate.

          • El Barto
            link
            fedilink
            English
            112 days ago

            You chose to ignore OP’s point.

            let’s stop pretending the law actually matters for the people in power.

            • NSRXN
              link
              fedilink
              English
              112 days ago

              i mean… we’re talking about civil torts here, not constitutional law. i think you can still count on a court to throw this out even with a pro se defense.

  • _cryptagion [he/him]
    link
    fedilink
    English
    313 days ago

    You don’t need to put the server in the DMZ, just port forward port 80 and 443. Most routers these days ignore all requests to ports that aren’t open. And stick it behind Cloudflare, so you don’t have to expose your IP. Cloudflare also allows you to generate SSL certs that are good for a decade.

      • _cryptagion [he/him]
        link
        fedilink
        English
        212 days ago

        Yeah, it’s a huge PITA to just, you know, click the button to generate a new cert and revoke the old one.

          • _cryptagion [he/him]
            link
            fedilink
            English
            112 days ago

            You’re just not a pleasant person, are you? Every time you’ve replied to one of my posts, it’s to be a twatwaffle.

            An ignorant twatwaffle, considering you obviously have no idea how Cloudflare certs work. Which ends up making me look like I’m smarter than I really am, so thanks!

              • _cryptagion [he/him]
                link
                fedilink
                English
                112 days ago

                Well, if you were so smart yourself, you would know the Cloudflare certs aren’t for public use. The certs your site uses to communicate with the user are shared among multiple Cloudflare users, and aren’t accessible to anyone but Cloudflare. You can’t generate, revoke, view, or download them. The decade long certs you generate are for communication between your origin server and Cloudflare, they aren’t exposed to the public internet. If you use an Argo tunnel, which many selfhosters do, they’re used for the secure VPN tunnel between yourself and Cloudflare. Since all your traffic comes from Cloudflare, a smart user would whitelist those IPs and ignore web traffic from everything else if they weren’t going to use a tunnel. Even if someone got ahold of them, which is unlikely, they wouldn’t do anyone any good, because they would need access to your Cloudflare account as well to change the origin server.

                But then, you aren’t so smart yourself. You’re just some random nobody on the internet that decided to start using their arsehole for speaking. And as is typical in such a situation, everything you say reeks of shit.

                Now, do you want to continue embarrassing yourself? Because you’re not hurting my feelings by doing so.

  • @RagingHungryPanda@lemm.ee
    link
    fedilink
    English
    213 days ago

    I have dynamic dns through cloudflare that provides a proxy ip address for me in addition to some protections.

    After that I use a reverse proxy to route specific domain names to services. My router is set up to forward only ports 80 and 443 to that reverse proxy, so there’s a good layer of safety there. There could be a weakness on the router, but at this point traffic is pretty limited.

    After that, at least for your service, if you can have some control or throttling of signings and be more selective about who you let in, then that could help.

    I say do it. Sure there’s risk someone could put something on there you don’t want, but I wouldn’t say it’s big enough to not do it.

  • @variants_of_concern@lemmy.one
    link
    fedilink
    English
    1013 days ago

    I just want to say that you should make sure to take notes on what you’re doing and why. It helps when you break something and want to go through what you did and sometimes notes don’t make sense unless you put why so you can research it again

  • Knossos
    link
    fedilink
    English
    413 days ago

    That’s always a danger.

    You could host the server on its own vlan and use tailscale to tunnel from a VPS to your server. This way your IP isn’t exposed to the public. You can also add crowdsec or similar on the VPS.

    I do the same thing with traefik on my dirt cheap VPS.

  • Shimitar
    link
    fedilink
    English
    813 days ago

    I would do it. Its fun…

    Will you mess up? Yes. Who cares, Do it, just ensure its data you can lose no worries.

    I would host on a vps, just to keep you home safe from swat raids (assuming you in the us, other nations should be safe).

  • Björn Tantau
    link
    fedilink
    English
    213 days ago

    Try to automate updates as much as possible so that new security bugs get fixed quickly.

  • @0x0@programming.dev
    link
    fedilink
    English
    613 days ago

    Hosting for yourself so you can access your content outside your home is usually the use-case, use WireGuard for that though (checkout headscale) along with virtualization, VLANs, etc.
    Hosting for a group of friends and/or family can usually be ok, assuming that is a well known and restrict group.

    Hosting for the general public from home is usually not recommended, use a VPS for that. Bear in mind you’ll likely be liable for what you host, one way or the other, depending on your jurisdiction.
    If you store content (files others may upload like movies and photos) you may be responsible for that (i.e. is that content legal in your jurisdiction?).
    There may be a legal distinction between the server’s geographic location and the entity responsible for it - but in your case it’s the same, so, again, beware.
    Just linking to content deemed illegal may get you into trouble.
    Putting the site behind a login-only page and vetting account creation could mitigate (or exponentiate) this.
    Anyway IANAL.

    What do you want to host and for whom?

  • @MTK@lemmy.world
    link
    fedilink
    English
    913 days ago

    Don’t do it.

    Hosting a public service with no real knowledge of security can only end badly.

    Get a vpc, do it there, learn from mistakes.

    It’s more than just HTTPS, you also need proper authentication, regular updates, emergency updates for critical vulnerabilities, ideally some sort of monitoring to detect potential misuse of the service or any escalations from the service to the OS.

    Ask yourself this: If this was your first time driving a car, would you rather do it in an empty parking lot where at worst you will damage the car. Or would you rather do it in a busy street where at worst you can kill someone?

    • @MTK@lemmy.world
      link
      fedilink
      English
      313 days ago

      Especially if this is from a computer that has access/information beyond just the public service.

      • @MTK@lemmy.world
        link
        fedilink
        English
        413 days ago

        If for example the server is actually a computer in the LAN and maybe it’s also his media server and his backup server then potentially any compromise could lead to his personal information leaked and or other computers in the LAN compromised.

        So what could actually happen? His personal photos and passwords and accounts can be leaked or taken over. He could be spied on by accessing his webcam. A lot of things could go wrong.

        You are right. Learning by doing is awesome. Just be sure to do it in a safe way. Get a VPC. Do it there. No personal information, no access to other services. Just this service, just for this purpose. Worst case scenario, if it’s taken over, the only thing that’s harmed is the forum itself. Which is not the end of the world, I’m guessing.

  • 🇰 🌀 🇱 🇦 🇳 🇦 🇰 🇮
    link
    fedilink
    English
    2
    edit-2
    9 days ago

    Risk of people uploading images that are illegal and you would end up being liable for hosting them. Risk of being hacked…

    I don’t know how big of a risk this really is these days… I used to host a PHPbb forum in the early 2000’s off my personal computer and it didn’t get any traffic beyond myself and the friends I told about it. Kinda curious about that, myself, with how things have changed over the last 25 years.

  • 3DMVR
    link
    fedilink
    English
    -2
    edit-2
    12 days ago

    Its so cheap to just get a vps from a littlecreekhosting deal, I checked them all on lowendtalk and its the cheapest for highest specs, you do have to comment your invoice to double ram, but its 4 core 8gb ram for 3.50 a month and 8core 16gb 7$ cogent amd epyc, and solid ssd space 140-160 idr exactly, they have multiple deals posted, the one with the prices I mention is the best one, they also had windows vps deals. Spent way too long testing hella, its not the best ping out there for me since I’m fairly far but I’m not hosting gameservers so its a non issue.

    There are many other deals on lowendtalk but they are typically for way less resources or way more expensive for a lot more resources

    • @CeeBee_Eh@lemmy.world
      link
      fedilink
      English
      311 days ago

      Its so cheap to just get a vps from a littlecreekhosting deal

      This site seems suspicious as hell. Incredibly basic site, no info on where they’re located, and the “About Us” links aren’t even links. There’s no About Us page.

      • 3DMVR
        link
        fedilink
        English
        0
        edit-2
        9 days ago

        its one of the more trusted ones on lowendtalk? nicer site doesnt equal better company and typically equals worse deals, a lot of the nicer looking sites on lowendtalk have had comment saying they are scams

        • @CeeBee_Eh@lemmy.world
          link
          fedilink
          English
          09 days ago

          No, I didn’t say this “isn’t a nice site”. I said it’s “suspicious as hell”.

          Having a working site and a navigable “About Us” page isn’t “nice”. It’s the bare minimum I would expect of any legitimate nice or ugly site.

          There’s just a lot on their site that reeks of sloppy scammers.

          • 3DMVR
            link
            fedilink
            English
            09 days ago

            either waymy suggestion was to find a deal that suits your needs at low end talk over trying to self host anything otherppl will be accessing from your home, you wont find good deals just googling around, or even on reddit

          • 3DMVR
            link
            fedilink
            English
            09 days ago

            but thats the exact issue, the businesses with clean perfect sites tend to be the scams, while these where you need specific links off a forum like lownendtalm to even access the deal work well and are hella cheap in comparison? Racknerds also been great but way less resources, their deals also never go away if you get a link.

            • @CeeBee_Eh@lemmy.world
              link
              fedilink
              English
              09 days ago

              Three incoherent replies with jumbled run-on sentences.

              the businesses with clean perfect sites tend to be the scams

              Uhhh, no. Objectively no. A legit website is not going to have spelling mistakes and broken links. Looking professional and thorough is a direct lead to increased business. What you just said is completely false, and frankly idiotic.

              Everything else you said (in all three replies) is just a jumbled mess of a brain dump that I’m not even going to try and address any of it.

          • 3DMVR
            link
            fedilink
            English
            09 days ago

            well, i have a lot of stuff running on it fine for the last 3 months, and lowendtalk is what I trust, I made a thread there asking about it and ppl trusted them.

            You use a virtualizer panel and they provision from cogent, its pretty straightforward what you’re getting and you can stress test it or whatever? Do you only trust the major players like digital ocean, aws, etc.?

      • 3DMVR
        link
        fedilink
        English
        19 days ago

        Ill check them out, been curious about unlimited data transfer, does it allow torrenting done through their hosting

      • 3DMVR
        link
        fedilink
        English
        09 days ago

        its just way less risky and not that expensive tho? I had the same idea as op til I realized that fit my needs and gave a lot more resources than hetzner.

  • @ikidd@lemmy.world
    link
    fedilink
    English
    513 days ago

    You might consider using something like Cloudflared or Tailscale’s Funnels to proxy the connections through to prevent DDOSing and apply ACLs. You can still use your domains with those.

  • @rumba@lemmy.zip
    link
    fedilink
    English
    912 days ago

    The DMZ is the right idea. But it’s the old way. You definitely want whatever is serving your website to be separated out from your house. You’re hosting should be on an isolated VLAN. The internet should only be able to talk to the server it needs to talk to, no other ports. That box should only be allowed to talk to what it absolutely must talk to and only on the ports that are required. You should run an independent firewall on each one of the boxes that are involved in the hosting with only the proper ports open.

    Giving up your private IP Will definitely give away your general location to everyone and your precise location to the authorities.

    I would highly recommend using cloudflare or one of the other funnel options. A lot of people don’t like cloud flare because they can capitalize on your traffic, The cloudflare also just won’t shut you down and sell you out like your ISP will at the first request, They don’t do shit about anything until there’s a warrant or a court filing. On the upside you don’t give out your private IP to anyone. You have DDOS protection, and a reasonable layer of anominity.

    You need to check daily to make sure all of your software is updated. We’re talking OS, middleware, plugins, application. Preferably via automation. All of the software and plugins you use for this type of hosting end up getting vulnerabilities.

    Security is especially difficult on forums. There’s lots of opportunities there for skilled people who are pissed off at what you or someone else is saying to get butthurt. People know exactly what you’re running, then they do some magic behind the scenes next thing you know there’s a bunch of admins you didn’t create.

    You don’t need to be hosting your own email but you are going to need an SMTP provider, most free services won’t let you masquerade the from address.

    • El Barto
      link
      fedilink
      English
      112 days ago

      Doesn’t Cloudflare cost money for DDoS protection?

      • @rumba@lemmy.zip
        link
        fedilink
        English
        212 days ago

        You get some coverage for free but if you’re really getting slammed I wish to stay up they’re not going to do everything for free. I believe They click here to prove you’re not a butt is gratis.