nree Skrevet 17. oktober 2007 Del Skrevet 17. oktober 2007 (endret) Løst! På serveren min har jeg forskjellige virtuelle hoster som ligger i httpd. Serveren kjører forøvrig Debian GNU/Linux 4.0 Når jeg oppretter brukere legger jeg de til som vanlige brukere uten shell tilgang og de får sitt eget hjemmeområde men det er der jeg trenger hjelp. bruker1 har sitt hjemmeområde på /home/bruker1 bruker2 har sitt hjemmeområde på /home/bruker2 I httpd.conf er det satt opp slik for hver bruker: <VirtualHost *> ServerAdmin [email protected] DocumentRoot /home/bruker1/ ServerName foo.bar </VirtualHost> Når bruker1 vil ha et script til bruker2 lager han et PHP script der han skriver: <?php show_source("/home/bruker2/hemmelig.php"); ?> Hvordan kan jeg forhindre at dette skjer? At en bruker kan "få tilgang til" andre sine områder med f.eks php, men at andre samtidig skal kunne få tilgang til hjemmeområdet til hver bruker gjennom virtualhost i httpd. Håper noen har en god løsning Endret 28. oktober 2007 av Goggen90 Lenke til kommentar
nree Skrevet 19. oktober 2007 Forfatter Del Skrevet 19. oktober 2007 Bumper denne litt. Lenke til kommentar
nree Skrevet 22. oktober 2007 Forfatter Del Skrevet 22. oktober 2007 Blir mye bumping her? Lenke til kommentar
arnizzz Skrevet 23. oktober 2007 Del Skrevet 23. oktober 2007 Hmm. det går helt sikkert ann å kjøre hvert virtual domain/host som en annen bruker enn apache. Da setter du bare de rettighetene som skal være. Read, Write Execute for sitt hjemmeområde. og only read for andre brukere sitt hjemmeområde. litt usikker på om det vil fungere men du kan jo forske litt på det. Tror det er noe som heter SuExec som du kan bruke i httpd.conf Lenke til kommentar
nree Skrevet 23. oktober 2007 Forfatter Del Skrevet 23. oktober 2007 Takk for svar Det er en løsning jeg vet en av hosting selskapene jeg har bruker hos har men syns ikke det virker som noe god løsning, jeg vil ha mer kontroll over det uten å måtte opprette en egen bruker for hver eneste. Hadde håpet det gikk an å løse på konfigurasjonsnivå, f.eks ved hjelp av httpd. Altså -> Sette opp noe sånt som: den mappen kan ikke inkludere eller få tilgang til noen andre en seg selv, hvis dere skjønner. Lenke til kommentar
arnizzz Skrevet 23. oktober 2007 Del Skrevet 23. oktober 2007 jo skjønner hva du mener. og er enig i at det er litt tungvindt. Prøvde å forske litt på det. Kom ikke fram til noe spennende. There are two ways of configuring apache to support multiple hosts. Either by running a separate httpd daemon for each hostname, or by running a single daemon which supports all the virtual hosts. Use multiple daemons when: * There are security partitioning issues, such as company1 does not want anyone at company2 to be able to read their data except via the web. In this case you would need two daemons, each running with different User, Group, Listen, and ServerRoot settings. * You can afford the memory and file descriptor requirements of listening to every IP alias on the machine. It's only possible to Listen to the "wildcard" address, or to specific addresses. So if you have a need to listen to a specific address for whatever reason, then you will need to listen to all specific addresses. (Although one httpd could listen to N-1 of the addresses, and another could listen to the remaining address.) Use a single daemon when: * Sharing of the httpd configuration between virtual hosts is acceptable. * The machine services a large number of requests, and so the performance loss in running separate daemons may be significant. Good luck. Og post her om du finner en elegant måte å gjøre det på. Kan hende jeg eller noen andre på forumet får bruk for det vettu Lenke til kommentar
nree Skrevet 27. oktober 2007 Forfatter Del Skrevet 27. oktober 2007 Har ikke funnet noen løsninger enda så da blir det en liten bump Lenke til kommentar
trrunde Skrevet 28. oktober 2007 Del Skrevet 28. oktober 2007 Har ikke funnet noen løsninger enda så da blir det en liten bump Mener på at det skal være en instilling som bestemmer at php scriptet ikke får gå høyere opp i hierkiet enn sin egen home folder, husker ikke helt hva den heter men lurer på om det var noe open_basedir eller noe slikt? Lenke til kommentar
arnizzz Skrevet 28. oktober 2007 Del Skrevet 28. oktober 2007 Har ikke funnet noen løsninger enda så da blir det en liten bump Mener på at det skal være en instilling som bestemmer at php scriptet ikke får gå høyere opp i hierkiet enn sin egen home folder, husker ikke helt hva den heter men lurer på om det var noe open_basedir eller noe slikt? bør vel kunne gå til ../htdocs i alle fall.. sånn at man kan legge konfigfiler utenom web-området. Lenke til kommentar
nree Skrevet 28. oktober 2007 Forfatter Del Skrevet 28. oktober 2007 Ser ut som open_basedir kan gjøre susen, men det jeg ikke får til med det er å ha en open_basedir pr. virtualhost. Har prøvd å sette "php_value open_basedir /home/mappe" i virtualhosts i httpd men det ser ikke ut til å fungere Lenke til kommentar
trrunde Skrevet 28. oktober 2007 Del Skrevet 28. oktober 2007 Ser ut som open_basedir kan gjøre susen, men det jeg ikke får til med det er å ha en open_basedir pr. virtualhost. Har prøvd å sette "php_value open_basedir /home/mappe" i virtualhosts i httpd men det ser ikke ut til å fungere Har aldri prøvd å bruke det selv, har bare fått feilmeldinger tidligere når jeg hadde web10, da brukte de tydeligvis open_basedir, aner ikke hvordan det skal settes opp Lenke til kommentar
nree Skrevet 28. oktober 2007 Forfatter Del Skrevet 28. oktober 2007 Fikk det endelig til Satte dette mellom <virtualhost *> og </virtualhost> php_admin_value open_basedir "mappe/mappe" Takker for alle innspill Lenke til kommentar
trrunde Skrevet 28. oktober 2007 Del Skrevet 28. oktober 2007 Fikk det endelig til Satte dette mellom <virtualhost *> og </virtualhost> php_admin_value open_basedir "mappe/mappe" Takker for alle innspill Måtte du gjøre dette på hver eneste vhost? Lenke til kommentar
nree Skrevet 29. oktober 2007 Forfatter Del Skrevet 29. oktober 2007 Ser slik ut ja.. Så et sted der det stod man kunne skrive "open_basedir ~" i php konfigurasjonen, har selv ikke prøvd dette da dette vil føre til mindre frihet. Det var også et problem som oppstod under bruk av open_basedir, php filene fikk ikke tilgang til tmp mappen. Løsningen min ble å sette php sin temp mappe til /home/tmp (ikke nødvendig egentlig) for så å sette: php_admin_value open_basedir "/home/mappe:/home/tmp" Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå