FTP - Change Anonymous root

Status
Für weitere Antworten geschlossen.

haddat

Benutzer
Mitglied seit
06. Jun 2009
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
Hallo,

was bewirkt unter DSM 2.1 (-0844) > FileSharing > FTP > Connection Setting > Change Anonymous root?

Soweit ich das nachverfolgen konnte, passiert folgendes:
Anonymous meldet sich am FTP-Server an und landet direkt in dem definierten shared folder (dieses Verzeichnis wählt man in obigem Menü aus, in meinem Fall ftpfolder).
Nur hat anonymous keine Schreibberechtigung in dem Verzeichnis ftpfolder (z.B. mkdir geht nicht, permission denied), obwohl unter DSM 2.1 > Shared Folder > Privileges Setup > System internal user > Anonymous FTP ein Häkchen bei RW für dieses Verzeichnis (ftpfolder) ist.

Aktiviere ich "Change Anonymous root" nicht, landet anonymous beim Anmelden am FTP-Server eine Ebene über dem Verzeichnis ftpfolder (also in /volume1, pwd zeigt aber nur / an, soweit ist das ja auch korrekt) und ls zeigt das Verzeichnis ftpfolder (anonymous hat ja RW-Rechte hierdrauf, s.o.) in das man wechseln kann und jetzt kann man in diesem Verzeichnis auch schreiben (z.B. mkdir funktioniert).

Also, warum habe ich keine Schreibrechte in dem Verzeichnis, das ich bei "Change Anonymous root" aktiviere? Wenn das so gewollt ist, was für einen Sinn macht das?

Besten Dank

haddat

DS209+, D-Link DIR-855
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Aktiviere ich "Change Anonymous root" nicht, landet anonymous beim Anmelden am FTP-Server eine Ebene über dem Verzeichnis ftpfolder (also in /volume1, pwd zeigt aber nur / an, soweit ist das ja auch korrekt) und ls zeigt das Verzeichnis ftpfolder (anonymous hat ja RW-Rechte hierdrauf, s.o.) in das man wechseln kann und jetzt kann man in diesem Verzeichnis auch schreiben (z.B. mkdir funktioniert).

Also, warum habe ich keine Schreibrechte in dem Verzeichnis, das ich bei "Change Anonymous root" aktiviere? Wenn das so gewollt ist, was für einen Sinn macht das?

Die Idee beim FTP-Benutzer anonymous ist, so etwas wie ein virtuelles Dateisystem zu Verfügung zu stellen. Um das zu machen, gibt es das Kommando 'chroot'. Was macht das Kommando? Es definiert für den Benutzer anonymous (wenn er sich per FTP anmeldet) das Verzeichnis /volume1/ftpfolder um zu '/'. So kann der Benutzer nie mehr höher in der Verzeichnis-Hierarchie gelangen als bis zum Verzeichnis /volume1/root. Wenn man nun noch ein Quote vergibt, dann kann auch der Plattenplatz nicht beliebig konsumiert werden ... so hat man vor 40 Jahren (im Unix-System) die erste 'Sand-Box' gebastelt. Toll was?

Damit der Benutzer anonymous irgendwas tun darf, braucht er auch noch spezielle Verzeichnisse (z.B. /bin, /tmp, /var usw.), denn er hat durch den Zugriff per FTP und den chroot natürlich auch alle Pfade zu den üblichen Verzeichnisse verloren ... es gibt auch auf der Manualseite des ftpd noch nette Hinweise (such mal chroot dort).

Es hat also alles seine Berechtigung :D und seinen Grund.

Itari
 

haddat

Benutzer
Mitglied seit
06. Jun 2009
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
Hallo Iari,

besten Dank für die Ausführungen.
Das heisst also, wenn ich die Option "Change Anonymous root" NICHT aktiviere wird kein chroot durchgeführt und somit kann anonymous auch im Verzeichnis ftpfolder schreiben, landet jedoch in /volume1 Verzeichnis, also eine Ebene über ftpfolder (d.h., anonymous muss erst mit cd nach ftpfolder wechseln).
Wenn ich wiederum die Option "Change Anonymous root" aktiviere wird chroot durchgeführt und anonymous kann NICHT im Verzeichnis ftpfolder schreiben, landet dafür aber direkt dort.

Kurz:
"Change Anonymous root" gesetzt => anonymous landet in ftpfolder, kann aber dort NICHT schreiben.
"Change Anonymous root" NICHT gesetzt => anonymous landet ein Verzeichnis über ftpfolder, kann aber in ftpfolder schreiben.

Zumindest verhält es sich bei mir so.

Was kann ich also machen, dass anonymous direkt in ftpfolder landet (und natürlich auch nicht raus kann) aber trotzdem dort schreiben kann? Okay, das ist nur ein Befehl (nämlich "cd ftpfolder") weniger, als wenn ich "Change Anonymous root" nicht aktiviere.

Danke

haddat
 

peez

Benutzer
Mitglied seit
11. Apr 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
Bist du hier schon weitergekommen?
 

haddat

Benutzer
Mitglied seit
06. Jun 2009
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
Ich habe "Change Anonymous root" nicht gesetzt. Damit landet anonymous in /volume1 (pwd zeigt /), kann aber alle ftp-Befehle ausführen, (er)kennt die Rechte der Verzeichnisse und Dateien und hat die Zugriffsrechte, die man ihm für die einzelnen Verzeichnisse in /volume1 zugewiesen hat.
So habe ich in /volume1 ein Verzeichnis incoming und ein outgoing. Anonymous habe ich entsprechende Rechte für diese beiden Verzeichnisse zugewiesen.
Für alle anderen Verzeichnisse unter /volume1 hat anonymous keinerlei Rechte, d.h. er sieht sie auch nicht.
Verwendet man "Change Anonymous root" muss man in dem zugeordneten Verzeichnis (z.B. /volume1/ftpfolder) eine minimal-Linux-Umgebung einrichten (~ftpfolder/bin, ~ftpfolder/etc, ~ftpfolder/pub).
haddat
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
hi haddat,

wenn du das nun mittlerweile alles so herausgefunden und getestet hast, könntest das mit schönen Worten in unser Wiki rein schreiben? Wäre sehr nett.

Danke schon mal.

Itari
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat