Comment on Beginner looking for advice on open-source NAS hardware and OS for self-hosting
lemmyvore@feddit.nl 17 hours ago
want to move away from US-based and other non-EU cloud providers
Which operating system would you recommend? I’ve been looking into TrueNAS Community Edition and OpenMediaVault, but I’m open to other suggestions.
Unraid is a very solid choice. You need to pay a yearly fee for the upgrades but it’s very easy to use and suited for more than just storage (but also makes storage very easy).
I’d prefer a compact, reasonably power-efficient, ready-made NAS rather than building a full PC, mostly due to limited space.
This goes against your preference for open software, because all ready-made compact NAS appliances will come with proprietary software and proprietary hardware… because that’s their business model, tying you to their products.
Regarding power, you’re not saving as much as you think when you consider that the HDDs will take the lion’s share. It doesn’t really matter if the base system consumes 4W or 20W in idle if the HDDs consume 15W/drive.
If you’re an experienced PC builder this is a no-brainer. Building a PC lets you replace components separately and get away with buying used and off-the-shelf.
Choose a case with the right amount of (dampened) HDD cages (I prefer Fractal Design but there are others) and a quality power supply. The motherboard should also have an appropriate amount of SATA connectors. The CPU is not terribly important and can be a decade old. In fact you can get away with buying a used kit. You don’t need a lot of RAM, even 8 GB will do (but if you can get 16 or 32 that’s nice too). Same for the system SSD, it can be as low as 64 GB or even lower.
How much hardware performance do I actually need?
Depends if you have specialized usage. For example if you want to do AI on the CPU. Or if you want to do video transcoding. If you don’t, anything will do.
Which software stack would you recommend?
A dedicated CalDAV/CardDAV server for contacts and calendar/tasks. Radicale and Baikal are the most popular.
Immich for photo organization (albums, sharing, face recog, semantic search) and photo backup. Basically it was designed to be a great Google Photos replacement.
Personally I would avoid Nextcloud, it’s a beast. I would definitely not tie important stuff like calendars into it. Strictly for files may wanna look at alternatives like Seafile or OpenCloud.
For file sync most people use Syncthing but I don’t like their mobile (non-official) support. Personally I prefer FolderSync + SSH.
If you get into media libraries then Jellyfin can cover video, audio and books too, but there are also other specialized ones for music and books.
What should I consider regarding backups and remote access?
Not sure why you’re conflating these two.
For remote access if you’re not behind CGNAT at the ISP then VPN (Wireguard or OpenVPN) and/or SSH is the most secure.
Tailscale is a good alternative, it works behind CGNAT too, and it has a bunch of other interesting features like exit nodes. Look into it. It’s a “mesh VPN” that uses open source clients with a central server that facilitates the pairing from behind NAT. The connections themselves are always private.
If you have to expose HTTP services over the Internet you must get a domain, reverse proxy, HTTPS certificates (with auto-renewal, most reverse proxies will help with this) and mTLS is the best security option. But keep in mind very few mobile apps support mTLS (Immich, DAVx5, Ntfy do).
For backups, first of all use a proper backup tool like Borg or Restic, not sync tools like Rsync. You want your backup tool to offer integrity checks, recovery, encryption, deduplication and compression, sync tools offer almost none of these.
Secondly, look into 3-2-1 backup strategy. Affordable backup methods for home use include backup “cold” HDDs, Blu Ray optical discs, and online storage subscriptions. Borg/Restic include support for transparent online backups too.
You don’t have to backup everything. Categorize your data and figure out some priorities. Usually the truly important data is not very large.
RAID and other forms of storage redundancy are NOT backup, they’re mostly about keeping services going during drive failures. If you have to work with limited amount of drives I would prioritize backup over redundancy.
Email:
You don’t have to self-host the sending and receiving of email to retain control over it. It’s in fact very hard to do that.
What you need is to choose a good domain for your @ addresses, on a long-lasting TLD (preferably an EU ccTLD, perhaps your own country’s), and an email provider (see the link at the top) that offers SMTP and IMAP without any shenanigans.
You can use IMAP to sync your online mailboxes constantly at home, and also use IMAP to check your online mailbox with any email client, and use the provider’s SMTP to send mail. Any decent provider will supply you with the DNS records that need to go into your domain setup so you can use them.
If you ever want to switch provider it’s as simple as signing up with another and changing your DNS records.
You can if you want self-host an IMAP server and a webmail client at home on top of your local email archive, so you can search through old emails, and so you can delete them from the online mailbox so you can reduce your online mailbox size (and perhaps pay less). Just as long as you don’t try to self-host the ability to send and receive.
Other things you might want to look for at a provider is alias capability, or at least a catch-all. Helps a lot if you give each different online account its own different email address, and never give out your real address (the one you use to login to the email server).
Most email providers will tax you per mailbox and for things like aliases. IMO that’s bullcrap. Personally I prefer a provider that allows for unlimited mailboxes and aliases and taxes for tiers of storage space and emails sent/received. Migadu is one such European example. For two people YMMV, either model might be ok. When you have more than two accounts the unlimited model can become much cheaper very fast.
Things you may not have considered:
Look into a reverse proxy and getting a domain + HTTPS certificates for it, and putting your services behind it at addresses such as https://cal.example.com/. It will make your service consumption 100x better.
Also consider your home router. Is it a capable one? Most people overlook this completely, but a good router can help immensely with self-hosting for things like DNS, VLANs, port forwarding, having stable IPs for servers etc.
If you need notifications, or sending messages+attachments across devices, or action buttons, Ntfy can either be self-hosted or used through their public service.