[Eisfair] wwwrun kein ftp Login

Detlef Paschke schabau at t-online.de
Sa Okt 7 13:40:09 CEST 2023


Am 07.10.2023 um 12:12 schrieb Marcus Röckrath:
> Hallo Detlef,

Hallo Marcus,

> 
> Detlef Paschke wrote:
> 
>> ich habe es noch nicht weiter probiert nach meinen wilden
>> Gedankengängen, hätte doch ein neu angelegter User (useradd -M -d
>> /var/www/htdocs wwwupload)
> 
> Ich würde hier das eisfair-eigene /var/install/bin/add-user vorziehen:
> 
> eis:~ # /var/install/bin/add-user --help
> 
>  Usage:
>  /var/install/bin/add-user
>                                - empty for interactive mode
>                 -d             - disable password
>                 -l             - lock password
>                 -r, --system   - create system user
> 
>  Example: /var/install/bin/add-user
>  Example: /var/install/bin/add-user user '*' '' group real-name home shell
>  Example: /var/install/bin/add-user -r user '*' '' group real-name home
> shell
>  Example: /var/install/bin/add-user user encrypted-password uid group
> real-name home shell
> 
> Warum?
> 
> Es berücksichtigt, welche UIDs schon vergeben sind.
> 
> Aufruf wäre beispielsweise (in einer Zeile):
> 
> /var/install/bin/add-user wwwupload '' '' wwwrun
> 'Web-Upload-User' /var/www/htdocs /bin/sh
> 
> was einen normalen User ergäbe, mit dem zusätzlichen Schalter -r würde es
> ein Systemuser, die sich ja im Bereich der UIDs unterscheiden und damit
> auch in der Sichtbarkeit und Verwendung wie z. B. bei Samba.
> 
> Ich würde zu einem normalen Usetr tendieren.
> 
> Das '' statt '*' hinter dem Usernamen fragt dich dann noch nach dem Passwort
> des Users.

das eisfair-eigene kenne ich nicht weiter und über die GUI würde es wohl
schon wegen dem bereits existierenden HOME nicht möglich sein.
Aber auf der Kommandozeile und mit interaktiver Passwortabfrage ist
natürlich elegant.

Ich hatte so etwas im Kopf:

Upload-User anlegen:
useradd -M -g nogroup -d /var/www/htdocs -c "WWW upload apache" wwwupload

Passwort für Upload-User vergeben:
passwd wwwupload

Aber so oder so, sehe ich das SetGID-Bit als nicht Nötig, weil ich als
wwwupload ja ohnehin nicht ins DOCROOT mit Rechten 2755 schreiben darf.

>> egal in welcher Gruppe er ist, auf das 
>> bestehende Verzeichnis gar keine Schreibrechte bzw. nur wenn sie auf
>> 2777 stehen? Und wenn ich den "Upload-user" gleich in der Gruppe
>> "nogroup" anlege, kann ich mir das SetGID-Bit dann nicht sparen? Die
>> Rechte von DOCROOT müssen dann "nur" auf 775 gesetzt werden. Aber mit
>> 2755 komme ich irgendwie nicht ans Ziel?
> 
> Auf Nelsons-Beitrag schrieb ich schon, dass ich statt setgid es vorziehen
> würde, die Rechte des "Homes" auf diesen User mit chown zu modifizieren.

Ich habe es mal kurz getestet und mit 2755 ist es nicht getan. Es wird
wohl auf die Änderung des Besitzer von DOCROOT hinaus laufen und bei
bereits bestehenden Systemen, rekursiv oder alles noch mal als neuer
"Upload-Berechtigter" übertragen.

Über kurz oder lang sollte von den Entwicklern in Erwägung gezogen
werden, einen "Upload-User" in der Apache Konfiguration abzufragen und
dementsprechend zu erstellen um noch ein wenig der Eleganz von Eisfair
zu erhalten.

>> Oder mit chown auch den Besitzer von DOCROOT ändern? Aber ist das
>> Updatefest?
> 
> IMHO wird bei bestehendem Verzeichnis beim Apache-Update weder die Rechte
> noch das Besitztum zurückgesetzt, jedenfalls ist beim Drüberbügeln der
> gleichen Apache-Version keines von beiden nach einer abweichenden
> Einstellung wieder zurückgesetzt worden.

Wenn Roundcube, Nextcloud, BFB und was sonst noch so alles in DOCROOT
schreiben will, kein Problem bekommt, wenn DOCROOT jetzt jemand anderem
gehört, mag das ja kein Problem sein.

> Wenn du aus verschiedneen Remote-Quellen den Apachen befüllen lassen
> möchtest, z. B. bei Verwendung diverser "Überwachungskameras" kann man mit
> obiger Methode auch jeder Kamera ihren eigenen "web-Upload-Ordner":

Zunächst wäre ja wichtig, wieder _einen_ User zu haben, der das DOCROOT
befüllen darf. In der Regel wird das wohl immer noch per FTP von irgend
einem Arbeits-Rechner geschehen. Aktuell gibt es diese Möglichkeit so
zunächst gar nicht.

Derzeit sehe ich, als root z.B. über die Samba Freigabe /all oder auch
scp die Daten ins DOCROOT kopieren und dann per SSH als root einloggen
und die Besitzer/Rechte der kopierten Dateien/Verzeichnisse entsprechend
anpassen.

Viele Grüße
Detlef Paschke

-- 
Das "Zitat des Augenblick" gibt es nur auf:
https://schabau.eu

Meine "Merkzettel" findet man unter:
https://helpdesk.schabau.eu



Mehr Informationen über die Mailingliste Eisfair