My own root server
Having an root server that is 100% under your control may be handy as you do not have the restrictions you normally get by the shared hoster. This system is for a small server and if you plan to run at large scale, this is not for you, but I guess in this scenario you have all the tools and knowledge at your fingertips to build a large system. :-D
How should I manage my server
One way is just by configuring each required service by hand. Install a webserver, install php and configure both. Install all tools for let’s encrypt and configure a ftp server if needed. The fun starts when you set up a mail server with all the tools to make it easier to manager. This approach brings the highest level of flexibility but comes with the price to do everything by hand.
If you really want to know each setting made on your system and have full control, this is the way to go.
I like to know how my system is set up but I prefer a nice web UI to manage my server and I do not like to write all the configuration files by hand. So I took a look what kind of control panels are out there as of summer 2018.
Check your installation
There are good tools to check the configuration of your server. I use the tools below to check the mail server and the settings of the http server.
Yes, they do not show all issues that may be caused by misconfiguration. I improve the settings every time I see something to check.
There are many solutions available. The focus was on an admin panel that has the isp style all in one server as focused usecase. So traditional panels like webmin are not within the criteria I set for it. I took a closer look at the following systems:
- ISPConfig 3 - https://www.ispconfig.org/
- Froxlor - https://www.froxlor.org/
- VestaCP - https://vestacp.com/
- CentOS Web Panel - http://centos-webpanel.com/
These seem to be the most popular tools currently out there to do this task.
I tried to install all of them. But ISP-Config has a ton of manual steps to execute and I could not get comfortable with the UI of it. So I dropped it quite fast. It might be a good solution but not for my personal use.
The same for Froxlor as it has only minimalistic support for mail configuration. The argument I found in the forum was that one would probably host this service somewhere else. So as I want to have all services fully supported, I dropped this solution as well.
So there is VestaCP and CentOS Web Panel left and as I’m more familiar with the Debian world, I started with VestaCP and went over to CentOS Web Panel
One word about the licenses
If FREE Software as called by the Free Software Movement is your highest priority, You should take a closer look at VestaCP (GPLv3), Froxlor (GPLv2) or ISPConfig (3-clause BSD). CentOS Web Panel is not a true free software but gratis or with a low yearly fee. Just keep that in mind and you have to make the decision about the license. For me, there is not only black and white. I prefer true free software, but it is not a must.