It depends what your level of experience and how much work you want to put in. There are a bunch of good server distros:
Fedora and Nixos could also be one the list but you will have to upgrade them a lot more often than the others.
That being said, you are just getting a basic Linux install. For the things you describe, you would have to locate software that does each of those things and install/configure them. This is probably what I would do but it isn't the right answer for everyone.
The alternative is to go with a prebuilt distro that comes with those things out of the box. You will have less control but also less to setup yourself.
- ClearOS
- ZentyalOS
- SME Server
- OpenMediaVault
- TrueNAS, formerly called FreeNAS
- XigmaNAS
There are probably more like this.
I put links to the slightly less know distros. I am guessing you can find the sites for Debian and Ubuntu on your own
The last 3 are actually based on BSD-based, not Linux, if that matters to you.