Your comments

What should I do to make the following code work?

server {
    listen 80;
    server_name domain.com;
    return 301 https://domain.com$request_uri;
}
It's now possible to set server level custom configurations from the GUI. Awesome, thanks!
I just tried that and the result is a bit scary as root is able to login without a password if I set "password": "". Lol. I tried to let it empty without quotes or false but it returns an error. I prefer to let it with a password for the moment. :)
Wait, what? I feel so dumb, it was a caching issue. :( Sorry for the trouble!
There is no error showing when the index.php is downloaded...
I don't find how to set an emtpy password for root. When I leave the root password empty, Ajenti doesn't save it. Is it a bug or it's somewhere else ?
Okay, I see. When new features/plugins are added, will that user get permissions for these automatically?
It seems it works but now I have an error in NGINX config test, for each domain I created a custom config file:

nginx: [warn] conflicting server name "example.com" on 0.0.0.0:80, ignored