Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
500 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  PHP - Apache, best practices pour serveur multi sites

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

PHP - Apache, best practices pour serveur multi sites

n°2295165
depart
Posté le 24-01-2017 à 13:31:34  profilanswer
 

J'ai un serveur dédié qui héberge une petite dizaine de sites web et applications. J'en suis l'unique administrateur mais jusqu'à présent je fonctionnais sur le principe suivant :
- 1 utilisateur linux par site, droits de ssh (pour faire du SFTP), avec son dossier /home/USER/www comme racine de site
- php fonctionnant via suphp pour permettre à chaque site de fonctionner avec son user propre
 
Contexte : Ubuntu 14.04 LTS / Apache 2.4 / php 5.5.x
 
C'était un peu les recommandations des années 2010... mais au final j'ai l'impression que  
- suphp et compagnie (suexec)... ça n'est plus trop adapté en 2017, je n'arrive notamment pas à upgrader la version de php utilisée par suphp.
- j'ai régulièrement des problèmes de droits car apache a pour habitude de tourner avec comme user www-data et du coup il y a des applis qui n'aiment pas trop quand on les fait tourner avec un user différent
- finalement ma volonté première qui était de vraiment séparer les sites en cas de compromission de l'un n'est que très relative, les droits par défauts des dossiers users (et j'avoue que je flippe un peu de les changer) étant "rx" pour "other" (donc globalement n'importe quel user logué en sftp peut aller regarder le dossier de son voisin). Donc en gros si un site est compromis, l'utilisateur peut aller lire les fichiers de config d'un autre site (clés, mot de passe mysql...). fail.
 
J'ai commencé à faire un peu le tour des tutos et les avis divergent. J'ai l'impression que php-fpm semble privilégié pour faire tourner php derrière apache, mais peut ont l'air de chercher à faire tourner les process sous le compte des utilisateurs créés (trouvé ici : https://serverfault.com/questions/5 [...] n-centos-6 ).
 
Si on omet cette pratique (à savoir si php/apache ne tournent pas le compte de l'user) il y a alors la problématique de droits d'accès aux fichiers. Ex typique : un user TOTO en sftp créé des fichiers avec son compte (genre upload de wordpress depuis son pc sous windows via filezilla) du coup c'est TOTO qui est owner, hors c'est www-data qui veut accéder à ces fichiers. Donc ça se finit régulièrement en cauchemar de droits.
 
Voilà, donc je suis preneur des recommandations sur ce sujet, à savoir pour commencer :
1/ est-il recommandé de virer les droits de lecture "other" du dossier de chaque user ? Si oui pourquoi est-il sur r par défaut lors de la création d'un adduser ?
2/ pour un serveur multi-sites, quel est le moyen le plus pertinent de faire tourner php et apache ? (sous quels comptes, avec quelles librairies...) ?
3/ si vous êtes le seul administrateur, préférez-vous finalement tout mettre dans des sous-dossiers du genre /var/www/site1/ /var/www/site2/... (ou via des liens symboliques) uploadés par le même user et juste créer des virtualhosts qui vont bien ?


Message édité par depart le 24-01-2017 à 13:45:07
mood
Publicité
Posté le 24-01-2017 à 13:31:34  profilanswer
 

n°2295173
antac
..
Posté le 24-01-2017 à 17:12:49  profilanswer
 

Est-ce que tu t'es renseigné sur AlternC ?

n°2295188
depart
Posté le 25-01-2017 à 01:32:38  profilanswer
 

antac a écrit :

Est-ce que tu t'es renseigné sur AlternC ?


Heu, c'est quoi le rapport ?
Je ne cherche pas à héberger 10 000 sites pour 10 000 users en leur fournissant un webmail au passage, juste à mettre en place un environnement cohérent pour une dizaine de sites dont je rappelle je suis l'unique admin.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  PHP - Apache, best practices pour serveur multi sites

 

Sujets relatifs
Pb lecture mail envoyé via PHPComment réaliser un historique d'achat ? (PHP, MySQL)
GLFW écran noir (si multi thread)[C][pthreads] Probleme deconecton serveur client avec socket
Aide Php + Python (débutant)Code compteur de présence en PHP
PHP Imagecreatetruecolor : Allowed memory size....PHP Session <==> Coockie
probleme detection Adblock en Javascript+PHP tourne pas rondProblème PHP (pour GLPI) après MAJ firmware Qnap
Plus de sujets relatifs à : PHP - Apache, best practices pour serveur multi sites


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR