PHP en rechten ?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ellen P

Ellen P

03/12/2010 14:51:17
Quote Anchor link
Ik ben echt een beginner. Probeer eerst wel alles op te zoeken op internet.
Apache rechten voor de website? Ik dacht dat ik het wel snapte na lezen.

Bij rechten heb je : eigenaar, groep en publiek. Kan op directory en file niveau.
Verdere rechten zijn me wel duidelijk : read, write en execute. Waarbij voor directory execute de bestandslijst weergeeft.

Mijn beeld er van is :
Groep is niet van belang dacht ik. Publiek is wel van belang voor website, want dat bepaalt wat anonieme bezoekers website mogen (klopt dit?)
Eigenaar is van belang voor wat je aan de FTP-kant mag doen met het bestand.

Onder het mom voor veiligheid probeer ik nu zoveel mogelijk rechten weg te halen. Daarbij stuit ik op iets raars :

Een eigen gemaakte directory met naam mydent:
rechten gezet op de directory mydent :

File op 400, dus -r-- --- ---
Directory op 100, dus d—x --- ---

in deze directory staan index.html en index.php.

En bij mijn test werkt index.html (pagina met tekstregel), en bij mijn test werkt index.php (script met 1 regel met: echo "tekst" ) ook.
Is dat normaal met zo weinig rechten klopt dit wel?
En kan ik mijn hele website draaien met zo weinig rechten?
Wat ik dus telkens lees op internet is dat juist door leesrechten aan publiek te geven je pas een website zichtbaar kunt maken . Dus ik volg het niet meer.
Het geeft mij het idee dat er iets niet goed gaat.

Hoe zit dat nu feitelijk met die rechten en functionaliteit. Ook in combinatie met PHP?
 
PHP hulp

PHP hulp

22/12/2024 16:20:55
 
Bas Cost Budde

Bas Cost Budde

03/12/2010 14:59:27
Quote Anchor link
onder welk account draait je server (toch niet root he!)? De toegang die die user heeft, is allesbepalend voor de rechten. Of die nou via user, group of others komen.

Ik weet het voor apache: een bestand met recht xx4 is voor iedereen te lezen dus ook voor de server; een bestand met recht x4x is alleen voor de server te lezen als die in dezelfde groep zit als het bestand (te zien met ls -l, te wijzigen met chown -- dat zul je dan wel hebben uitgevonden); een bestand met recht 4xx is alleen voor de server te lezen als die eigenaar is.

Heb jij het ook over apache?
 
Ellen P

Ellen P

03/12/2010 15:01:16
Quote Anchor link
Ik heb het over apache
Ik heb geen eigen server. En werk met een hostig pakket bij yourhosting.
 
Bas Cost Budde

Bas Cost Budde

03/12/2010 15:06:09
Quote Anchor link
Vreemp. Kun je eigenaar en groep van de bestanden ook zien? Kun je misschien wel rechten zetten, maar worden die naderhand overschreven dan wel nooit opgeslagen?

Quote:
Publiek is wel van belang voor website, want dat bepaalt wat anonieme bezoekers website mogen (klopt dit?)

Nee, dat klopt niet. Voor bestandsrechten zijn alle bezoekers gelijk; de bestanden komen namelijk via de servertoepassing naar de browser.

Wat voor beveiliging van belang is, is dat bezoekers (dus de server) alleen schrijfrecht heeft in de mappen waar dat relevant is, en afdaalrecht in directories waar de website wat te zoeken heeft.

'world readable' is alleen van belang wanneer je bestanden niet in een groep kunt/mag zetten waar ook de server in zit.
Gewijzigd op 03/12/2010 15:11:59 door Bas Cost Budde
 
Ellen P

Ellen P

03/12/2010 15:10:47
Quote Anchor link
Rechten worden echt opgeslagen. Kan uitloggen met Filezilla en weer inloggen, en rechten staan nog precies hetzelfde.
Eigenaar is de FTP user waarmee ik inlog, De groep heeft dezelfde naam als de FTP-user.
(Voor de veiligheid geef ik die naam even niet.)
 
Bas Cost Budde

Bas Cost Budde

03/12/2010 15:13:35
Quote Anchor link
Je hoeft die naam niet te geven natuurlijk (net zoiets als je rekeningnummer).

Misschien kun je drie testbestanden maken in een map (onder document root, dus bereikbaar voor de browser), en de rechten instellen op 400, 040 en 004; dan kijken welke je kunt zien in de browser.
 
Ellen P

Ellen P

03/12/2010 15:27:02
Quote Anchor link
Heb gemaakt .hmtl bestanden. Die heb ik webbrowser opgevraagd.
mijnhtml400.html met recht 400, deze kan ik zien

mijnhtml040.html met recht 040 en mijnhtml004.html met recht 004 geven beiden : Toegang verboden! U hebt niet de toestemming om toegang te krijgen tot de gevraagde map. Die is ofwel beveiligd tegen lezen of onleesbaar door de server.
 
Bas Cost Budde

Bas Cost Budde

03/12/2010 15:51:19
Quote Anchor link
mm. Niet precies wat ik verwacht, maar zo werkt het dus: opdat de webserver een bestand kan lezen, moet het tenminste 400 hebben, en opdat je een directory kunt bereiken, 100.

Sja. Misschien zijn de getallen achterstevoren gezet. Je doet het via de ftp-filemanager toch? Ik heb geen hosting bij yourhosting dus ik kan niet makkelijk meekijken, misschien kun je iets vinden over wat eigenaar is, wat groep, en wat wereld, in die rechtenweergave.

Ben je nu uiteindelijk geholpen in de zin dat je vertrouwt op je begrip van rechten?
 
Ellen P

Ellen P

03/12/2010 16:02:34
Quote Anchor link
Ik zet de rechten met ftp-programma Filezilla. Eigenlijk heb ik alles wat ik kan zien al verteld. Ik heb ook al contact gehad met de helpdesk van yourghosting. Maar daar werd ik ook niet helder van. Kwam er op neer dat die meneer vond dat ik wel weinig rechten zette. Daar zou ik problemen mee kunnen krijgen. En hij zelf zette alles meestal op 640.
Maar goed, zo'n antwoord kan ik ook niets mee.
Ik blijf gewoon het gevoel houden dat er iets raar is of dat ik iets niet snap.
Ik zit nu op mijn werk, heb prive ook wel met filezilla gewerkt bij ander hostingprovider. En dan leek alles wel normaal.
Gewijzigd op 03/12/2010 16:03:02 door Ellen P
 
Bas Cost Budde

Bas Cost Budde

03/12/2010 16:19:15
Quote Anchor link
Ik krijg er het gevoel van dat de bestanden eigendom worden van het account waaronder de webserver draait, en dat dat account verder niet in groepen zit die je kunt gebruiken. Dat keert de betekenis van de bestandsrechten om ten opzichte van wat ook ik gebruikelijk vind.

Wat mij betreft is er iets raars, en snap je de materie heel goed.
 
Ellen P

Ellen P

03/12/2010 16:35:19
Quote Anchor link
In ieder geval bedankt voor de snelle reactie. Is nu je conclusie dat alles met rechten anders zou moeten werken?
Wat nu de gevolgen zijn snap ik dan niet echt. Komt vermoedelijk doordat ik feitelijk linux en apache niet ken. En alleen wat over de rechten via lezen op Internet wat wijzer ben geworden.

Maar een Joomla installatie draait er gewoon op bij Yourhosting. Dan zou toch daarvoor ook alle rechten anders moeten? Of niet?? Gaat dus onderwijl mijn begrip te boven.
En ook wat ik nu moet doen met de rechten van eventuele PHP programmatjes die ik wil gaan schrijven. Bas heb je enig inzicht in de consequenties?
Gewijzigd op 03/12/2010 16:37:52 door Ellen P
 
- SanThe -

- SanThe -

03/12/2010 16:52:31
Quote Anchor link
Een directory met rechten 100 geeft toegang tot die directory, listing en dergelijke. Je mag er dan nog niets lezen of wegschrijven. Om toegang te hebben EN te mogen lezen dient er aan rechten 500 te zijn. Leesrecht + accessrecht.
 
Ellen P

Ellen P

10/12/2010 08:43:57
Quote Anchor link
Dank je SanThe. Op zich snap ik het lees, schrijf, execute en toegangsrecht. Heb ook op andere plek er mee geëxperimenteerd. Alleen zit ik nu bij andere hoster en daar lijkt het anders te werken.
Als ik het nu goed begrijp zijn om de website te laten werken alleen de rechten van de eigenaar van belang. Blijkbaar doen groep en publiek niet mee, en heeft het geen zin daar rechten aan te geven. Wanneer ik dit niet goed begrepen heb, reageer dan svp.
 
John D

John D

10/12/2010 08:56:49
Quote Anchor link
Jawel, group en public zijn wel van belang. Allereerst: het gaat niet om publiek cq kijkers naar de website maar het betreft rechten op de server zelf. Je hebt daar te maken met 2 user: apache en jijzelf, jouw eigen (ftp, sftp, filezilla) inlog-user. Wanneer je bestanden upload dan zijn ze van jouw, jij bent owner. De bestanden moeten tijdens http processing gelezen worden door het httpd proces en dat runt vrijwel altijd onder user apache. Deze user moet dus toegang hebben tot de bestanden. Afhankelijk van hoe de hoster de groups ingedeeld heeft (je zit wel of iet met apache in een group) moet je rechten aan group geven en/of ook aan public.
 
Ellen P

Ellen P

10/12/2010 09:56:05
Quote Anchor link
Dag John D. Ik zie dat ik owner ben met ftp user. Maar blijkbaar valt bij mij het kwartje gewoon niet.

Je schrijft : Afhankelijk van hoe de hoster de groups ingedeeld heeft (je zit wel of iet met apache in een group) moet je rechten aan group geven en/of ook aan public.

Maar wanneer mij php programma's werken bij rechten op directory 100 en lezen 500 dan staan de laatste nullen toch voor group en public? En omdat die op 0 staan, hebben die geen rechten. En mijn mijn php-script werkt wel, terwijl daar nullen staan? Daaruit leid ik dan af dat group en public er niet toe doen hier. Waar gaat mijn gedachtegang dan verkeerd?
 
- SanThe -

- SanThe -

10/12/2010 10:23:00
Quote Anchor link
Normaal staan de rechten van de directories op 755 en van de bestanden op 644.
 
Bas Cost Budde

Bas Cost Budde

10/12/2010 10:32:02
Quote Anchor link
Ik zou wel eens met je willen meekijken. Er is iets verwarrends, je hebt nu te maken met de combinatie van je ik-heb-nog-geen-overzicht, en een serie instellingen die mogelijk anders zijn dan waar 'wij' aan gewend zijn.


Toevoeging op 10/12/2010 13:16:15:

De hoster lijkt apache/php zo te hebben ingesteld dat die draait onder het account waarmee de klant ook FTP-t. De webserver is daarmee owner van de bestanden.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.