View previous topic :: View next topic |
Author |
Message |
gbetous l33t
Joined: 15 Jan 2004 Posts: 679 Location: Toulouse
|
Posted: Thu Feb 05, 2009 8:30 pm Post subject: [Off] Du bon usage des droits utilisateurs sur un serveur |
|
|
Bonjour,
J'ai un dédié qui traîne quelquepart sur l'Internet, et je voudrais en faire profiter quelques copains, pour qu'ils fassent leur site peinard. En plus ça me fait un échauffement en matière d'admin.
Jusqu'à présent, je fais comme suit :
- chacun a un vrai compte (comme ça accès ils ont aussi un accès ssh, et donc peuvent uploader des fichiers sans recourir au ftp)
- le serveur (nginx) et le fastcgi de php tournent sous les droits www:www
- pour chaque appli, je crée un répertoire dans /var/www et je donne les accès <user>:www
Après là ou c'est pas génial c'est que en fait les utilisateurs sont obligés parfois de changer les droits dans leur répertoire pour autoriser "www" à écrire par exemple, ou meme à lire (vu que ce qu'ils créent a des droits <user>:<user>).
Si vous avez une idée pour mieux gérer les droits à proposer, je prends ! _________________ Core2Quad Q6600
ASUS P5B-V (i965 video intégrée)
~amd64 / KDE
|
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8708 Location: ~Brussels - Belgique
|
Posted: Thu Feb 05, 2009 9:45 pm Post subject: |
|
|
Salut,
Le mieux est d'installer des outils "control panel" touts faits et sûrs.
Il y en a des gratuits et des payants.
Par exemple http://www.syscp.org/ que j'utilise sur mon dédié _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
gbetous l33t
Joined: 15 Jan 2004 Posts: 679 Location: Toulouse
|
Posted: Sun Feb 08, 2009 9:59 am Post subject: |
|
|
Je viens d'y jeter un oeil, malheureusement il ne gère pas Nginx (je voudrais essayer d'éviter apache dans un premier temps, histoire de survivre un max sur mon petit serveur). _________________ Core2Quad Q6600
ASUS P5B-V (i965 video intégrée)
~amd64 / KDE
|
|
Back to top |
|
|
xaviermiller Bodhisattva
Joined: 23 Jul 2004 Posts: 8708 Location: ~Brussels - Belgique
|
Posted: Sun Feb 08, 2009 3:38 pm Post subject: |
|
|
Ben ouais syscp est pour LAMP _________________ Kind regards,
Xavier Miller |
|
Back to top |
|
|
gbetous l33t
Joined: 15 Jan 2004 Posts: 679 Location: Toulouse
|
Posted: Sun Feb 08, 2009 5:04 pm Post subject: |
|
|
Ouais donc grosso-modo t'as un peu tapé à côté quoi
En tous cas je retiens l'idée, il y a des chances pour que je passe sur Apache un jour où l'autre, et du coup j'hésiterai pas. Je connaissais pas du tout ce style de produit, il a l'air plutot bien foutu (et très complet !) _________________ Core2Quad Q6600
ASUS P5B-V (i965 video intégrée)
~amd64 / KDE
|
|
Back to top |
|
|
kwenspc Advocate
Joined: 21 Sep 2003 Posts: 4954
|
Posted: Sun Feb 08, 2009 5:25 pm Post subject: |
|
|
Bizarre ton histoire, doit avoir moyen de régler le soucis d'un coup, sans passer par un outil pour re-regler les droits afin que www puisse écrire etc... Et donc tu devrais pouvoir garder nginx.
tu fais tourner chaque "site" de users en fastcgi, ça tourne sous le droit de l'utilisateur en question. (genre t'auras un process fastcgi pour le user truc, un autre pour le user bidule etc...) ça écoute sur localhost, chacun a son propre port. Et du coté de nginx il accède à chaque fastcgi selon chaque port (par rapport au site à acceder). Du coup tes users ajoutent/modifient/suppriment ce qu'il veulent avec leur user, pas besoin de changer les droits.
Regardes tu prends l'exemple http://wiki.codemongers.com/NginxFcgiExample au lieu du user/group "apache" comme indiqué tu fournis le user/group te ton utilisateur, tu fais tourner le spawn fastcgi avec et nginx de son côté y accède normalement. tu fais ça pour chaque site et zou. (ou regardes le tuto pour les cgi python http://wiki.codemongers.com/NginxSimplePythonFCGI )
Non? _________________ membre officieux du SAV Ati GEntoo |
|
Back to top |
|
|
guilc Bodhisattva
Joined: 15 Nov 2003 Posts: 3326 Location: Paris - France
|
Posted: Sun Feb 08, 2009 6:57 pm Post subject: |
|
|
Solution :
1) tu ajoutes tes users au groupe www
2) tu colles un setgid sur le dossier web (chmod 2775 /var/www/blah) => les fichiers seront alors créés avec le groupe www
3) tu t'arranges pour avoir un umask 0002 au lieu du 0022 par défaut pour conserver l'attribut g+w au fil des modifications dans la sous-arbo /var/www/blah (moi perso, je ferais pas ça, je ferais le chmod g+w là ou il faut juste quand j'en ai besoin)
Et ça roule _________________ Merci de respecter les règles du forum.
Mon site perso : https://www.xwing.info
Mon PORTDIR_OVERLAY : https://gentoo.xwing.info ou layman -a xwing |
|
Back to top |
|
|
gbetous l33t
Joined: 15 Jan 2004 Posts: 679 Location: Toulouse
|
Posted: Mon Feb 09, 2009 8:13 pm Post subject: |
|
|
Argl, 2 solutions qui me semblent très bonnes !
Je vais essayer la 2nde qui utilise moins de process fcgi. De plus j'utilise le script spawn-fcgi qui est livré avec lighttpd et qui ne prévoit qu'un seul utilisateur (bon, je pourrais faire la modif, mais à choisir je préfère les solutions "out-of-the-book", bcp plus faciles à maintenir).
En tous cas merci à tous les 2 _________________ Core2Quad Q6600
ASUS P5B-V (i965 video intégrée)
~amd64 / KDE
|
|
Back to top |
|
|
kwenspc Advocate
Joined: 21 Sep 2003 Posts: 4954
|
Posted: Mon Feb 09, 2009 8:56 pm Post subject: |
|
|
c'est clair que quand t'as un truc comme ça ça surprend un peu:
Code: |
4809 ? Ss 0:00 /usr/bin/php-cgi
4888 ? S 0:00 \_ /usr/bin/php-cgi
4891 ? S 0:00 \_ /usr/bin/php-cgi
4896 ? S 0:00 \_ /usr/bin/php-cgi
4824 ? Ss 0:00 /usr/bin/php-cgi
4885 ? S 0:00 \_ /usr/bin/php-cgi
4893 ? S 0:00 \_ /usr/bin/php-cgi
4897 ? S 0:00 \_ /usr/bin/php-cgi
4839 ? Ss 0:00 /usr/bin/php-cgi
4887 ? S 0:00 \_ /usr/bin/php-cgi
4890 ? S 0:00 \_ /usr/bin/php-cgi
4895 ? S 0:00 \_ /usr/bin/php-cgi
4854 ? Ss 0:00 /usr/bin/php-cgi
4886 ? S 0:00 \_ /usr/bin/php-cgi
4892 ? S 0:00 \_ /usr/bin/php-cgi
4899 ? S 0:00 \_ /usr/bin/php-cgi
4869 ? Ss 0:00 /usr/bin/php-cgi
4889 ? S 0:00 \_ /usr/bin/php-cgi
4894 ? S 0:00 \_ /usr/bin/php-cgi
4898 ? S 0:00 \_ /usr/bin/php-cgi
4884 ? Ss 0:00 /usr/bin/php-cgi
4900 ? S 0:00 \_ /usr/bin/php-cgi
4901 ? S 0:00 \_ /usr/bin/php-cgi
4902 ? S 0:00 \_ /usr/bin/php-cgi
4917 ? Ss 0:00 /usr/bin/php-cgi
4457 ? S 0:02 \_ /usr/bin/php-cgi
4707 ? S 0:02 \_ /usr/bin/php-cgi
4717 ? S 0:02 \_ /usr/bin/php-cgi
4935 ? Ss 0:00 /usr/bin/php-cgi
4936 ? S 0:00 \_ /usr/bin/php-cgi
4937 ? S 0:00 \_ /usr/bin/php-cgi
4938 ? S 0:00 \_ /usr/bin/php-cgi
4953 ? Ss 0:00 /usr/bin/php-cgi
4954 ? S 0:02 \_ /usr/bin/php-cgi
4955 ? S 0:02 \_ /usr/bin/php-cgi
4956 ? S 0:02 \_ /usr/bin/php-cgi
4971 ? Ss 0:00 /usr/bin/php-cgi
4972 ? S 0:37 \_ /usr/bin/php-cgi
4973 ? S 0:38 \_ /usr/bin/php-cgi
4974 ? S 0:38 \_ /usr/bin/php-cgi
4989 ? Ss 0:00 /usr/bin/php-cgi
4990 ? S 0:00 \_ /usr/bin/php-cgi
4991 ? S 0:00 \_ /usr/bin/php-cgi
4992 ? S 0:00 \_ /usr/bin/php-cgi
5007 ? Ss 0:00 /usr/bin/php-cgi
5008 ? S 0:00 \_ /usr/bin/php-cgi
5009 ? S 0:00 \_ /usr/bin/php-cgi
5010 ? S 0:00 \_ /usr/bin/php-cgi
5025 ? Ss 0:00 /usr/bin/php-cgi
5026 ? S 0:02 \_ /usr/bin/php-cgi
5027 ? S 0:02 \_ /usr/bin/php-cgi
5028 ? S 0:02 \_ /usr/bin/php-cgi
5043 ? Ss 0:00 /usr/bin/php-cgi
5044 ? S 1:06 \_ /usr/bin/php-cgi
5045 ? S 1:04 \_ /usr/bin/php-cgi
5046 ? S 1:03 \_ /usr/bin/php-cgi
5061 ? Ss 0:00 /usr/bin/php-cgi
5062 ? S 0:00 \_ /usr/bin/php-cgi
5063 ? S 0:00 \_ /usr/bin/php-cgi
5064 ? S 0:00 \_ /usr/bin/php-cgi
5079 ? Ss 0:00 /usr/bin/php-cgi
5729 ? S 7:04 \_ /usr/bin/php-cgi
5814 ? S 6:46 \_ /usr/bin/php-cgi
5827 ? S 7:17 \_ /usr/bin/php-cgi
5097 ? Ss 0:00 /usr/bin/php-cgi
5098 ? S 0:00 \_ /usr/bin/php-cgi
5099 ? S 0:00 \_ /usr/bin/php-cgi
5100 ? S 0:00 \_ /usr/bin/php-cgi
5115 ? Ss 0:00 /usr/bin/php-cgi
5116 ? S 0:00 \_ /usr/bin/php-cgi
5117 ? S 0:00 \_ /usr/bin/php-cgi
5118 ? S 0:00 \_ /usr/bin/php-cgi
5133 ? Ss 0:00 /usr/bin/php-cgi
5134 ? S 0:00 \_ /usr/bin/php-cgi
5135 ? S 0:00 \_ /usr/bin/php-cgi
5136 ? S 0:00 \_ /usr/bin/php-cgi
5151 ? Ss 0:00 /usr/bin/php-cgi
5152 ? S 0:00 \_ /usr/bin/php-cgi
5153 ? S 0:00 \_ /usr/bin/php-cgi
5154 ? S 0:00 \_ /usr/bin/php-cgi
|
_________________ membre officieux du SAV Ati GEntoo |
|
Back to top |
|
|
gbetous l33t
Joined: 15 Jan 2004 Posts: 679 Location: Toulouse
|
Posted: Wed Feb 18, 2009 5:51 pm Post subject: |
|
|
guilc wrote: | Solution :
1) tu ajoutes tes users au groupe www
2) tu colles un setgid sur le dossier web (chmod 2775 /var/www/blah) => les fichiers seront alors créés avec le groupe www
3) tu t'arranges pour avoir un umask 0002 au lieu du 0022 par défaut pour conserver l'attribut g+w au fil des modifications dans la sous-arbo /var/www/blah (moi perso, je ferais pas ça, je ferais le chmod g+w là ou il faut juste quand j'en ai besoin)
|
Hop, je ressors ce mail. Il m'aura fallu un moment pour que ça me monte au cerveau
Dans cette solution, n'importe qui qui a accès au groupe "www" (donc tous mes utilisateurs) aura droit en lecture à tous les repertoires des autres, et en écriture exactement aux memes endroits que le serveur.
C'est bien ça ? _________________ Core2Quad Q6600
ASUS P5B-V (i965 video intégrée)
~amd64 / KDE
|
|
Back to top |
|
|
|