Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: ubuntu 12.04 / proftpd & web files  (gelezen 1001 keer)

Offline psilin

  • Lid
  • Steunpunt: Nee
ubuntu 12.04 / proftpd & web files
« Gepost op: 2012/06/11, 20:31:07 »
All,

Na de nodige uren zoekwerk, en dagen bijbehorend denkwerk toch maar een 'help'vraag om te stellen.
Ik heb op een ubuntu 12.04 LAMP geïnstalleerd, virtuele domeinen tbv testen gedefinieerd en als ftp server proftpd met virtual users erbij gezet.

Ieder afzonderlijk onderdeel werkt in ieder geval. Apache met virtuele domeinen, php en mysql draaien. Proftpd draait ook maar daar zit nog wel wat rotigheid omheen.

Het geval wil dat apache draait met user/group: www-data.www-data ( 33.33 ). Bij het virtuele proftpd deel heb ik gebruiker ftpuser & ftpgroup aangemaakt (2001.2001). Bestanden worden dus met ftp ge├╝pload naar de server root, en als eigenaar hebben ze dan ftpuser/ftpgoup.
Apache draait als www-data dus bij php scripts e.d. volgt dan een error op permissies.

Daarom het ik aan proftpd de gebruiker en groep 33.33 www-data/www-data toegevoegd en die aan het ftp account gekoppeld ipv ftpuser/ftpgroup. Uiteraard de directory html met chown gewijzigd naar www-data.www-data.
Acces via ftp gaat prima, maar ik kan niet uploaden. Dit terwijl file permissies van de html dir op www-data.www-data staan met drwxr-x---

En dan krijg ik dus steevast een permission denied. Wat doe ik fout ?

Offline psilin

  • Lid
  • Steunpunt: Nee
Re: ubuntu 12.04 / proftpd & web files
« Reactie #1 Gepost op: 2012/06/13, 20:16:50 »
Inloggen op ftp met user www-data.

Het lijkt wel of uid/gid 33/33 onderdeel van het probleem is.  Een echte home dir van bestaande gebruiker heb ik ook op de virtual ftpgroup/ftpuser tabellen ingevoegd, en dan werkt het wel.

Nog suggesties waar te zoeken?

Offline psilin

  • Lid
  • Steunpunt: Nee
Re: ubuntu 12.04 / proftpd & web files
« Reactie #2 Gepost op: 2012/06/14, 19:47:21 »
inloggen met www-data is ook enkel op ftp zonder shell login ( tenminste dat is de bedoeling ).

ik heb user www-data toegevoegd aan de groep ftpgroup dmv  commando 'adduser www-data ftpgroup'

vervolgens log ik op de ftp server in met ftpuser/ftpgroup (2001:2001) en zet er een uitvoerbaar php script neer ( akeeba kickstart).
Openen van dit script in web browser geeft en error op file permissies: dit terwijl group ftpgroup rwx access heeft op de bovenliggende directory ( evenalsuser ftpuser ). Pas zodra rwx access bij other wordt gezet draait het script. Bestanden die het script draait zijn vervolgens eigenaar van user/group www-data/www-data

Dit moet toch dmv file permissies op te lossen zijn zonder het draaien van een script dat rechten goed zet ?

Indien user ftpuser en group www-data wordt geselecteerd als inloguser in ftp lijkt het goed te gaan totdat er vanuit ftp files gedeleted moeten worden.
Ook merkwaardig is te zien dat groep bij geuploade files 'nogroup' is ipv ingestelde www-data groep.
Morgen maar eens verder stoeien met een frisse blik. Het wordt steeds onduidelijker zo.
« Laatst bewerkt op: 2012/06/14, 21:03:37 door psilin »

Offline psilin

  • Lid
  • Steunpunt: Nee
Re: ubuntu 12.04 / proftpd & web files
« Reactie #3 Gepost op: 2012/06/15, 16:42:15 »
basis oorzaak gevonden : gebrek aan een SQLMinID regel in de sql.conf maakt dat er niet met systeem account met een uid/gid kleiner dan 1000 kan worden ingelogd met ftp.

Ik heb nu de www-data groep van uid:gid 33:33 de getallen 997:997 gegeven. Evenzo heb ik de ftpuser:ftpgrooup 998:998 gegeven. Vervolgens heb ik dmv SQLMinID in /etc/proftpd/sql.conf de waarde op 990 gezet zodat de overige systeem accounts niet geraakt kunnen worden. Wijziging van uid in bestand /etc/passwd, wijziging van gui in /etc/group.
Vervolgens dmv
find / -uid 33 -exec chmod 997 '{}' \;en find / -uid 33 -exec chgrp 997 '{}' \;ervoor gezorgd dat bestaande bestanden de nieuwe uid/gid combinatie krijgen. Wel eerst apache gestopt natuurlijk met service apache2 stop
Het combineren van gebruikers in verschillende groepen blijft tot problemen leiden bij verschillende scripten heb ik gemerkt. De rechten die dmv umask worden gezet in proftpd zijn niet per definitie dezelfde dan die bv kickstart.php vanuit de webbrowser geeft. Ik bleef dus met bestanden zitten die ik niet mocht editen/verwijderen omdat de rechten van de groep alleen lezen was ipv lezen & schrijven.  Dus alsnog log ik in als gebruiker/groep met uid/gid 997, maar wel per virtueel domein een eigen inlognaam/password combinatie )