

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