Hello! I am interested in creating my own cloud storage network, but I have to idea how to even start it. It’s just for myself, mainly pictures and videos. Ideally what I would like to do is be able to manually and/or automatically upload pictures and videos from my phone to my home cloud storage. I have Xfinity as my service provider. What is the cheapest and simplest way to achieve this?
Get an old computer, install Linux on it, and run Nextcloud.
Nextcloud is basically a cloud storage app like Google Drive or Dropbox, but self-hosted.
Your choice of Linux distro should depend on your level of experience. If you’ve never used linux before, then I suggest using Linux Mint XFCE edition. XFCE provides a friendly graphical interface while not taking up too much system resources.
I don’t have any good tutorials that I can link to, but I’m sure you’ll find something if you search for “nextcloud linux mint”.
Once you can access Nextcloud from within your home network, you should make it accessible from the outside internet. This is probably the most difficult part. You need to dig around in your router’s settings to assign a static internal IP to your homserver, then add a port forwarding rule. Again, search for something like “<your router name> port forwarding” and “nextcloud port forwarding”. Once you have that working, you can just remember your public IP address and use that to connect to owncloud from the outside world. Or, if you have a bit of money, you can purchase your own domain name and use that instead.
It may also be the case that Xfinity does something fucky like assigning an IPv6 address or using CG-NAT. This makes it difficult to make your homeserver accessible from the outside. In that case, I would recommend calling Xfinity and asking for a plain old IPv4 address.
Another consideration is what kind of storage you want to have in your homeserver. The simplest option is to just have one disk (SSD or HDD) with both the operating system and the storage on it. However, keep in mind that drive failures do happen. To keep your data safe, you should make periodic backups to a second storage medium. You can create whole-disk backups using
dd
, or you can just copy the Nextcloud data directory. The former approach takes up more space, but has the advantage that you can restore the entire system in case of a drive failure, without having to manually re-install linux and nextcloud.Anyway, this is just the approach I’ve always been taking. Hope this helps!