Hi. Some friends of mine are starting a business and they want to setup a server to host a simple “contact” website, run an e-mail service (about 10 accounts for now but with possibilities of expanding it to support more) and to store and remote access documents.
Im a computer savvy person so they asked me for help, but dont know much about self-hosting so I come here asking you:
What kind of hardware do they need and would be best?
What OS and other software is required and recomended?
How to set it up/configure it? Im partial to foss but if there are good propietary options they are acceptable too.
And last: What do we have to watch out for or avoid.
Also, space is a bit of an issue, I was thinking they could use something small like an intel nuc but Im worried that hardware would be underpowered for their needs.
I have been googling for stuff myself but I get overwhelmed by the ammount of information and some contradicting opinions so I appreciate your recomendations and guidance. Im not asking you to give me a full tutorial, although I would appreciate it too, but just to be pointed in the right direction to avoid, as much as possible, spending money and time on things they might not really need or might not perform as well.
Thanks in advance.
Seek someone with professional experience. Also you don’t want to host your own email server. Use the cloud for this as it is way simpler and doesn’t have the same issues.
Others have already mentioned about the challenges on the software/management side, but you also need to take into consideration hardware failures, power outages, network outages, acceptable downtime and so on. So, even if you could technically shoehorn all of that into a raspberry pi and run it on a windowsill, and I suppose it would run pretty well, you’ll risk losing all of the data if someone spills some coffee on the thing.
So, if you really insist doing this on your own hardware and maintenance (and want to do it properly), you’d be looking (at least):
- 2 servers for reundancy, preferably 3rd one laying around for a quick swap
- Pretty decent UPS setup, again multiple units for reundancy
- Routers, network hardware, internet uplinks and everything at least duplicated and configured correctly to keep things running
- A separate backup solution, on at least two different physical locations, so a few more servers and their network, power and other stuff taken care of
- Monitoring, alerting system in case of failures, someone being on-call for 24/7
And likely a ton of other stuff I can’t think of right now. So, 10k for hardware, two physical locations and maintenance personnel available all the time. Or you can buy a website hosting (VPS even if you like) for few bucks a month and email service for a 10/month (give or take) and have the services running, backed up and taken care of for far longer than your own hardware lifetime is for a lot cheaper than that hardware alone.
So don’t take this as rude, but if none of you have experience running email for a business, you’re probably better off contracting that part out.
It’s a lot of work to get working, keep working, and is prone to exploding for no particular reason so if this is a business-critical component, it’s worth the $20 a month to get it hosted where making your email actually deliver to people’s inbox is someone else’s problem.
Same for the business website: if it being down is going to cost money, a simple static page like that is hostable for literally free with cloudflare or netlify or any of a couple of other providers, and that’s probably what I’d do. (And, frankly, is what I do with a lot of stuff I host.)
As for storing and accessing remote documents, if you pay for gsuite or office365, you’ll get that included in the price, so like uh, that might be the best way to go.
I know this is literally not what you asked, but…
It sucks, but as someone who hosts their own services and supports business clients: If they have a budget, Office365 all the way. Does it suck paying money to M$? Oh hell yeah. But it’s a ‘cost of doing business’. Don’t screw around if they can afford it, just go O365 :(
I understand the ease from an admin POV, but besides locking users into a third party, corporate suite, everything UX about Office365 sucks balls.
Agreed. For businesses, spend the couple bucks to have Microsoft or whoever put their huge resources behind keeping you online. It’s a lot better than having the server with all your services go down when you’re expecting an important email.
I have been looking.at the same thing. Basically alternatives to Google Workplace or MSFT 365.
https://lemmy.ml/post/21772726. I think most people are using a hosting providers email and web hosting and then maybe running Nextcloud and other apps themselves though there are some providers who are doing integrated email and Nextcloud.
There are things like coop.cloud and yunohost that appear to be trying to provide.out of the box self hosting ‘recipies’ Im just starting to look at yunohost but just for me / the family. - Id personally love to meet people and work through using these together as I am not an expert. It would seem that these might be the ‘killer app’ for self hosted alternative cloud services but Im not sure and they might not be quite mature enough. I have know knowledge of the admin overhead.
Google and MSFTs free for non-profits mean that clubs/small charities end up using those two anyway.
Sorry that should be coopcloud.tech
Wholeheartedly agree with everyone else on the email. I’ve worked IT in a range of different sized businesses. The hardest one to date was the super paranoid place that insisted on hosting email. It’s an absolute pain to maintain and can be an unnecessary security risk for a few bucks!
For email and calendar I’D probably look into proton. For other software tools i would start with services people like that you don’t have to manage other than be like the admin and as you go try and find alternatives and self host your own and teat it out. Maybe even something like digital ocean where you can just spin up a droplet that’s presetup for you and learn more and more until you’re comfortable to transition other people to it
they want to setup a server to host a simple “contact” website
Not sure what sort of uptime/reliability your friends are expecting out of a self hosted solution but for something like that you wouldn’t need much processing power, even a Raspberry Pi can host a simple website. Not sure what to recommend offhand but there are definitely vendors in that space that sell simple DIY “contact us” form software, or I guess if you wanted to roll your own that’s an option too. I’d be more concerned about keeping it locked down/secure.
Keep in mind for the internet your friends would likely need business class internet with multiple static IPs so you can give your little DIY box its own public IP address. Many (most?) residential internet service providers do not allow self hosting websites on their network and they’d be dynamic IP anyway though you could work around that somewhat with dynamic DNS since you’re going to need to purchase a domain name and point it to somewhere anyway.
run an e-mail service (about 10 accounts for now but with possibilities of expanding it to support more)
Like others said you really don’t want to go that route unless you’re well versed in that area. It would be annoying for a business especially a new one, those emails will likely keep going into other provider’s spam folders for a good period of time. All the big mainstream email providers are notorious for not trusting new email domains / new IP addresses.
Seems easier to just go to Google Workspace / Microsoft 365 / whatever other provider you like to use, presumably the business has a business use case for reliable email among other things.
Bonus: Those cloud services can easily host simple contact forms for you so maybe that’s your all in one solution. Look into Google Forms and similar.
and to store and remote access documents.
That sounds like the above commercial cloud solutions again :)
But sure technically you could go through the extra step hosting that yourself. Depends on how the business wants to use/access this stuff, it’s really a question for them. Could be as simple as a Windows server with RDP (if they’re Windows people & just want to log into something “windows” to browse/open files) or maybe multi-user Linux with VNC (the geeks might like, maybe not so much the general Windows/Mac users). Or if you’re trying to do something web oriented maybe something like Nextcloud if you want to do all this in a web browser.
You should triple check what exactly they are expecting when it comes to remote access documents… you really don’t want to spend the time setting up something that they totally weren’t expecting and end up hating.