I would like to set up a NAS/Home Server Combination. I am not particularly experienced with networking and this general area, although I can handle Linux well enough at the very least, so I have a few questions, particularly about security, but also other things.
So, here’s what I want, to provide a general idea of my plans:
I’d like
- Storage for my local network
- Nextcloud
- “Sync sources” for myself like a self-hosted RSS Reader and I guess Nextcloud counts for this too, with Calendars, Contacts, etc. (These should be available primarily to me, but indirectly through other apps)
- Collaborative tools also accessible to others (OnlyOffice, Etherpad, etc.)
- Plex/Jellyfin/Similar
- Factorio/Minecraft/Tf2 server for a handful of players (not all at once)
This isn’t a comprehensive list, but should provide a rough idea
So, my questions:
- Is it reasonable to combine a NAS and Home Server?
- How do I keep it secure, especially with potentially sensitive data on Nextcloud or in general storage, if I also want others to be able to access parts of it?
- What price range am I reasonably looking at if I want, let’s say, 8TB (is that normal?) of storage and enough performance to run all the above plus some extra things?
- What are some general best practices for hardware upkeep / preventing data loss?
- What are some best practices for security overall?
- Is there anything you’d like me to know, as a total novice in this field?
I am grateful for any tips, even if they’re not entirely related to my direct questions, so please feel free to dump all kinds of knowledge and tips on me, if it’s not too much of a bother for you!
I have a server exposed to the wan. some ideas:
- disable password auth for pubkey when you can
- don’t use default ports
- open as few ports as possible
- be conservative with your firewall allows: this is your server and not a public service
have fun!
On that second point use actual random port numbers. Don’t be like oh this webapp defaults to port 443, I’ll use 4443. You have 65000 ports to pick from. Maybe good to avoid any number that ends in a well known port too. 23,22,25,80,443,8080,8081
you can find me on Port 70
Random ports are easy to discover and there are tools to discover what service is behind a port.
It’s annoying for the legitimate user and easy to bypass by an actual attacker.
Also, if you use a random port above 1024 it could be a security issue since any user could star listening if the legitimate process crashes.
See this
You’re advocating for running private services on the default ports?