Should I buy a domain if I want to run my own cloud storage? I am planning to use owncloud or nextcloud in my freenas box and host my own cloud storage.
I want HTTPS/encryption for the cloud. Is it recommended to buy a domain and link it to my WAN IP? THANKS
It primarily depends on whether you want it to local only or accessible on the interest, having a domain will make it easier to access the site as you won't have to remember the ip address but it isn't really necessary and you can still use HTTPS without a domain, it'll just always show that the certificates are insecure.
A domain makes everything easier, you can get a free cert from Let's Encrypt, and you can use dynamic DNS so if your WAN IP ever changes you're not locked out of your stuff. Namecheap with CloudFlare's free tier is what I use.
The first link will help you setup your web server configuration for SSL, I use modern in Apache/Nginx as all the devices I have are fairly new, and the second link will test your SSL setup and give it a rating with suggestions on how It could be improved.
Yes, lets encrypt provides proper SSL encryption for free.
Also I'm not familiar how a owncloud/nextcloud setup on FreeNas works as I run it on my dedicated server with apache but the SSL confirmation isn't too hard to setup as there are loads of resources available to help you, lets encrypt is very well documented and the mozilla.github.io link I stated in my other post basically does the configuration for you.
NameCheap is paid without the student thing, but CloudFlare is free regardless, they're just a CDN. You could use just NameCheap but I kinda like CloudFlare.