PDA

Bekijk Volledige Versie : Apache, automatisch deployment en rechten



Stefan1509
06/07/13, 15:02
Ik ben bezig om mijn site automatisch te deployen naar mijn VPS. Dit doe ik via een 'deployment' user die rechten heeft op /var/www/site.nl/. Alle bestanden worden netjes binnen gehaald (vanaf github) maar nu krijg ik nog access denied exceptions zodra ik de site benader.

De webserver draait onder apache:apache en dit is dus een andere gebruiker als de 'deployment' user. Nu zou dus het ownership verandert moeten worden naar de 'apache:apache' user/group denk ik.

Aangezien dit alleen maar kan door 'root' loop ik een beetje vast. De 'root' user kan niet van buitenaf inloggen.

Hoe kan ik dit het beste oplossen?

The-BosS
06/07/13, 15:54
Door gebruik te maken van een module als suphp of mod_ruid2, zodat je php scripts uitgevoerd worden als de "echte" gebruiker en niet als de apache gebruiker. En hoezo je "root" user kan niet vanaf buitenaf inloggen, hoe heb je dan je server geinstalleerd? Je moet toch iets hebben van remote console (vnc) of ssh access om te kunnen inloggen op je server.

vDong
06/07/13, 18:16
Aangezien dit alleen maar kan door 'root' loop ik een beetje vast. De 'root' user kan niet van buitenaf inloggen.

Dat kan ik alleen maar toejuigen, zo hoort het.
Ik denk dat wat je zoekt simpel op te lossen is door het chown commando via sudo regel uit te voeren.
Dus zoiets:
(visudo en dat toevoegen: )
deploy-user ALL=NOPASSWD: /usr/local/bin/fix_access_rights.sh

(/usr/local/bin/fix_access_rights.sh bevat: )
#!/bin/bash
/bin/chown -R apache:apache /var/www/site.nl

Als deployuser doe je als laatste deploy actie: sudo /usr/local/bin/fix_access_rights.sh

Probeer zo specifiek mogelijk te zijn met de sudo regels.

Stefan1509
06/07/13, 23:30
Bedankt voor jullie reacties! Ik ga eens met zo'n script aan de slag. Daar had ik nog niet eens aan gedacht. Mocht iemand anders nog een andere oplossing hebben dan hoor ik het graag.

@The-Boss ik log in via ssh met een andere gebruiker en doe dan su root om verder gegaan als root. Root is wel heel makkelijk te bedenken voor hackers. Toch weer extra veiligheid