L’installation des paquets peux se faire soit via l’utilisateur root soit via un utilisateur ayant les permissions suffisantes à l’aide de sudo (cela importe peu ça reviens au même dans la finalité).
Pour ce qui est de apache, il sera lancé via root ça importe peu finalement dans ton cas.
Par contre pour séparer et sécuriser un minimum tes différents services web il te faudra un user par web service dont www-data
appartiendra (droit d’accès de apache sur les dossiers/fichiers).
Après libre à toi d’utiliser du php-fpm
avec encore une fois le même user que pour la partie apache par pool.
En résumé :
Tu créer un user par webservices (avec son groupe), tu ajoute www-data
à son groupe.
Si tu utilise du php-fpm
tu en profite pour utiliser le même user pour le pool dédié à ton webservice.
Tu gère les permissions des tes dossiers fichiers/simplement.
Tu évites si tu le peux le ftp et tu utilise du sftp, phpmyadmin à proscrire, il sera difficile de faire avec la cli au début mais ce sera nettement plus safe qu’avec phpmyadmin et 10x plus rapide et simple de faire ce dont tu as besoin en base une fois le minimum maîtrisé.
Si tu doit administrer ton serveur utilise un compte dédié avec pourquoi pas les permissions sudo (pas une obligation), et utilise des comptes sftp au nom de tes webservices, comme ça en chrootant pas d’erreur de manipulation.