PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : verwirrt durch vsftp



BLUESCREEN3D
06.11.02, 22:48
Ich habe gerade erst auf meinem Server Red Hat 8.0 installiert und da war vsftp dabei. Ich habe die /etc/vsftpd.conf so eingestellt, dass neu erstellte Dateien automatisch 777 für die Rechte haben. Wenn ich mich einlogge und ein Verzeichnis hochlade hat das aber -wxrw-rw- also 366. Und die Dateien in dem Verzeichnis haben -w-rw-rw- also 266.

Meine vsftpd.conf sieht so aus:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=777
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
chroot_local_user=YES
pam_service_name=vsftpd

Ich kapier das nicht - wieso sind die Dateien und Verzeichnisse nicht 777 wenn ich was hochlade?

Belkira
06.11.02, 23:24
Lies mal gründlich man vsftpd.conf. Du hast sowohl den Parameter local_umask falsch verstanden, als auch den Wert falsch angegeben. Was Du eingetragen hast, willst Du nicht wirklich.

BLUESCREEN3D
07.11.02, 13:54
Ich wusste garnicht, dass es auch man-pages zu Dateien gibt :eek:

Auch wenn es da nicht so konkret erklärt ist, scheint local_umask eine XOR-Maske zu sein, und durch meine Einstellung 777 wären alle Rechte für die Dateien auf 0 gewesen... :ugly:

Mit 070 funzt es aber so wie es soll! :D

Belkira
07.11.02, 14:16
Nö, das Manual ist durchaus konkret und erwähnt z.B. die führende Null als Präfix fürs Oktalsystem. Die ignorierst Du weiterhin. 070 scheint mir geraten und entspricht nicht dem, was Du im ersten Posting willst. 070 nimmt der Gruppe alle Rechte weg. 022 und 077 (bzw. 0022 und 0077) sind übliche Einstellungen für non-anonymous FTP User.

BLUESCREEN3D
07.11.02, 14:38
also habe ich es doch noch nicht verstanden - ich will für den benutzer und die anderen (weil apache zu den anderen gehört) alle rechte haben - wie mache ich das denn? mit 070 kommt es genau so hin :confused:

Belkira
07.11.02, 15:18
also habe ich es doch noch nicht verstanden - ich will für den benutzer und die anderen (weil apache zu den anderen gehört) alle rechte haben - wie mache ich das denn? mit 070 kommt es genau so hin :confused:
Im ersten Posting wolltest Du noch Zugriffsrechte 0777 (rwxrwxrwx), also eine umask von 0 (bzw. 0000). Umask 070 ist 0070 und nimmt der Gruppe alle Rechte weg. Ungewöhnlich, wenn dennoch alle Welt rxw (7) Rechte bekommt, also alle anderen die Datei sogar beschreiben und löschen können. Ich halte an umask0022 fest. Das gibt rwxr--r-- für Dateien und rwxr-xr-x für Verzeichnisse.

BLUESCREEN3D
07.11.02, 16:02
Ich halte an umask0022 fest. Das gibt rwxr--r-- für Dateien

wieso ergibt 0022 rwxr--r--???
es müsste doch eigentlich ----w--w- sein
irgendwie check ich das nicht...

HangLoose
07.11.02, 16:23
hi

da bringst du was durcheinander mit umask. ein chmod 022 datei würde die rechte auf ----w--w- ändern. umask dagegen gibt an, welche rechte beim erzeugen von neuen dateien *abgezogen* werden sollen.


ohne diese umask würden dateien mit *maximalrechten* erzeugt werden. also bei dateien 666.
bei einer umask 022, werden für die datei dagegen folgende rechte vergeben werden

666-022=644 oder rw-r--r--


Gruß HangLoose

Belkira
07.11.02, 16:35
Und nicht die 0 als Präfix für das Oktalsystem vergessen, d.h. umask 022 ist nicht gleich umask 22.

Daß es eine XOR-Maske ist, hat er oben übrigens schon selbst geschrieben.

BLUESCREEN3D
07.11.02, 17:05
Da war ich wohl mal wieder schwer von Begriff...
Ansonsten dachte ich, dass es eine XOR-Maske zu 777 ist und nicht zu 666
Habe jetzt als Einstellung 022 genommen und mit chmod von Hand für die Dateien vom Counter den "anderen" Usern Schreibrechte gegeben, damit mein Counter nicht stehenbleibt :D

Belkira
07.11.02, 19:06
Ansonsten dachte ich, dass es eine XOR-Maske zu 777 ist und nicht zu 666

Korrekt. XOR 0777 für Verzeichnisse, XOR 0666 für Dateien. ;)

BLUESCREEN3D
07.11.02, 19:56
Kurz gesagt: Ich hab so ungefähr alles verdreht... aber jetzt funzt alles :)