Self hosting your website at home - my experience so far reddit / selfhosted ---------------------------------------------------------------------- desarrollador53 · 2023-11-26 15:20 Hi all, some months ago I had an accident that required surgery, long story short, found this sub and it helps me go through the slow recovery process. I have been learning a lot with you and now I want to share my experience so far, I put together a post about self- hosting my website at home, the hardware I'm using, the software, tools, etc. I hope you find it useful or even inspirational if you haven't started yet, and I would love to hear your comments. [https://proderror.eu/blog/self-hosting-my-website-at- home-2023-11-25.md](https://proderror.eu/blog/self-hosting-my-website- at-home-2023-11-25.md) ​ ---------------------------------------------------------------------- wCOW · 2023-11-26 18:41 There are some improvements to do ;) https://securityheaders.com/?q=proderror.eu&hide=on&followRedirects=on ---------------------------------------------------------------------- desarrollador53 · 2023-11-26 19:53 Good one, noted to the list of things to improve in my adhoc node web app, thanks! ---------------------------------------------------------------------- Nintenuendo_ · 2023-11-27 05:19 Very cool site! You're so right, hosting at home is so fun and actually super useful! My setup is soooo much easier to access and control now, and I've learned so much. My self hosted site is at https://nintenuendo.tv heh, cheers to many more years of open-source! ---------------------------------------------------------------------- desarrollador53 · 2023-11-27 07:37 Man that's sick! You have lot's of exposed services, can you expand what app you are running in [https://shell.nintenuendo.tv/](https://shell.nintenuendo.tv/) ? Do you have any blog? Cheers ---------------------------------------------------------------------- Faith-in-Strangers · 2023-11-27 08:00 I would add cloudflare tunnels to avoid showing your ip to the world and easily setup some access rules ---------------------------------------------------------------------- Nintenuendo_ · 2023-11-27 08:12 for the shell, that's an easy one, shellinabox, with a custom dark mode. for the exposed services you describe, none are "exposed", they are hosted in nginx (meant to face the WAN, subdomained and not port forwarded) with fail2ban setup for custom filtering, and beyond that are proxied through cloudflare and their filtering for ddos etc. Most of my services are behind htpasswd hashed/salted pw's or ldap (right now just htpasswd for the local site), and the ones that arn't use token logins like plex, overseerr, etc. I'll be ok :) ---------------------------------------------------------------------- Nintenuendo_ · 2023-11-27 08:18 Why cloudflare tunnels? If you already have a domain, and are going to use cloudflare, why add their dns nameservers to your registrar admin page, and use their dns for free?? That solves the issue of hosting at home and showing your ip to the world via any method using your domain name, all they'll see is cloudflare. ---------------------------------------------------------------------- Faith-in-Strangers · 2023-11-27 08:23 Because that's not all tunnels do ---------------------------------------------------------------------- Nintenuendo_ · 2023-11-27 08:32 This comment is less than useless..... if you don't feel stupid, you should. ---------------------------------------------------------------------- Faith-in-Strangers · 2023-11-27 08:48 No need to be aggressive/defensive. I'm talking about being able to also close ports. You realise your router is still accessible, even tho you have a domain name and DNS setup at your registrar, right ? You're aware that even if you only opened a few ports you are still at risk right ? > I don't think you have a clue what you're talking about Ahem. ---------------------------------------------------------------------- wCOW · 2023-11-27 11:45 I think the "better" solution would be to add the appropriate headers via Webserver (Nginx). Depending on the used software (for example nextcloud, minio), different headers are required. ---------------------------------------------------------------------- desarrollador53 · 2023-11-27 14:05 Very interesting, I would take a look at this 👍 > Link Sure, thx ---------------------------------------------------------------------- desarrollador53 · 2023-11-27 14:14 Cloudflare It's definitely something I'm considering. Thx ---------------------------------------------------------------------- gringo_9210 · 2023-11-27 22:55 The choice of router doesn't do much as most if not all home routers these days have built-in firewalls enough to block most intrusions on network without open ports. If self-hosting a website at home then make sure to secure the two web hosting ports (TCP port 80/443) with UFW, Fail2Ban, or even Port Knocking on for ex. Linux. Don't forward but limit access (locally) to SSH port. Encrypt your DNS at home by running either AdGuard Home or Pi-hole. Proxy DNS via Cloudflare & make sure to use full (strict) end-to-end SSL encryption (DNSSEC enabled). Also, use stronger security headers & SSL encryption parameters (minimum TLSv1.2, SSL ciphers, stapling & ECDH curve, etc.). Use a software firewall on your websites such as Wordfence, Sucuri, or BBQ Pro on Wordpress. Don't overkill with your network setup. If you're just gonna be running a website that serves primarily cached & preloaded static pages then no use spending hundreds of dollars for it. Even a wireless Rasp. Pi Zero W is an overkill for such a setup. ---------------------------------------------------------------------- RuffKez · 2023-11-28 03:57 Damn, Cat8 Cables! I still dangle around with 5e 🫠 ---------------------------------------------------------------------- desarrollador53 · 2023-11-28 07:24 Haha, absolutely not necessary if you have up to 1gb, forgot to mention that