[ftpd] symlink in een chroot omgeving.

Pagina: 1
Acties:

  • Sosabowski
  • Registratie: Juni 2003
  • Laatst online: 04-02 22:20
Ik ben ondertussen al een tijdje gelukkig linux gebruiker, echter dit probleempje kan ik maar niet de nek omdraaien. Ik zoek een FTP server die de gebruiker chroot in een bepaalde map, in dit geval /home/shared/ in die map zitten veel subdirectories en symlinks die verwijzen naar andere mappen in /home/shared. Momenteel gebruik in pure-ftpd maar als een gebruiker daarmee inlogt werken de symlinks niet.

Dus kent iemand een ftp server die dit wel snapt? Of moet ik alle (110+) symlinks opnieuw gaan aanmaken in een ge-chroote omgeving of bestaat er zoiets als realieve symlinks die dus blindelings zouden moeten werken?

Ik heb gezocht en de meeste (lees alle) topics gaan over symlinks buiten de chroot omgeving of komen met de "virtualchroot" optie van pure-ftpd. Die laatste lijkt me niet echt veilig en zit ook niet in de ubuntu/debian pure-ftpd paketten ingebakken (om die reden lijkt me)

The whole problem with the world is that fools and fanatics are always so certain of themselves, and wiser people so full of doubts. -- Bertrand Russell


  • blaataaps
  • Registratie: Juli 2001
  • Niet online
In een normale chroot gaat dit gewoon niet werken, met welke ftpd dan ook, tenzij je mount --bind gaat gebruiken. Virtual chroot zit niet in de debian/ubuntu packages omdat het niet valt onder de --with-all configure optie, bij mijn weten zijn er geen security-issues mee, zolang je het op een zinnige manier implementeert (zie ook het topic over ftpds van vorige week ongeveer hier in Non-Windows Operating Systems)

  • Sosabowski
  • Registratie: Juni 2003
  • Laatst online: 04-02 22:20
Dus als ik het goed berijp zijn symlinks per definitie absoluut en nooit relatief? Een sysmlink /home/shares/letters/AB123.txt die als verwijzing heeft ../cijfsrs/123AB.txt bestaat dus niet. In dat geval is het altijd een verwijzing naar het absolute path /home/shared/cijfers/123AB.txt. En het chroot commando gaat die vertaalslag niet maken? Helaas. Dan toch maar eens met pure-ftp verder klooien. Toch bedankt!

The whole problem with the world is that fools and fanatics are always so certain of themselves, and wiser people so full of doubts. -- Bertrand Russell


  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Symlinks zijn niet altijd absoluut, je kunt prima symlinken naar ../heu ; een absolute is echter relatief aan de root (/ dus), als je / verandert door een chroot, verwijst een absolute symlink dus naar iets relatief ten opzichte van de nieuwe root. chroot heeft niks met vertaalslagen te maken, een niveau onder de nieuwe / kom je gewoon niet, hetzij met ../../../ , hetzij met / . (het kan ook zijn dat ik je verhaal niet helemaal begrijp en dat deze uitleg niet helemaal ter zake doet).
Ik zou zeker naar pure-ftpd kijken, naast vsftpd de ftpd die ik prefereer :)

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Waarom zou je geen gebruik maken van een hardlink dan? Dan houd je zowel een veilige chroot; als dat je dat niet dubbel hoeft op te slaan :)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • blaataaps
  • Registratie: Juli 2001
  • Niet online
hardlinks zijn minder flexibel: je kunt ze niet op directory's gebruiken, en ze kunnen niet naar een ander filesystem wijzen :)

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

hmm; nee dat klopt inderdaad. Is er een logische reden dat je niet naar directories kan linken? Dat zijn immers ook gewoon inode entries? Of komt dat doordat een file maar 1 parentnode kan hebben?

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Under most systems, hard links are also restricted for directories. To keep the directory structure as a tree rather than an arbitrary mish-mash, a directory is allowed only one name from the root, a link from the dot file within itself, and a bunch of dot-dot hard links from each of its subdirectories. If you try to create another hard link to a directory, you will get an error (unless you're the superuser, and then you get to spend all night restoring your mangled filesystem).
Uit http://www.unix.org.ua/orelly/perl/learn/ch13_03.htm (hoewel ik geloof dat het laatste stukje over root niet meer van toepassing is op moderne unixen).

  • Super_ik
  • Registratie: Maart 2001
  • Laatst online: 08-02 13:33

Super_ik

haklust!

ik heb dat probleem genekt door relative links te gebruiken
#ln -s ../../doel target, werkt toch ook? zowel onder samba, shell en ftp.

8<------------------------------------------------------------------------------------
Als ik zo door ga haal ik m'n dood niet. | ik hou van goeie muziek


  • Sendy
  • Registratie: September 2001
  • Niet online
Volgens mij moeten symlinks het (ook) gewoon doen, mits ze natuurlijk niet aan root refereren.

Als je een /home/shared/dir1/verwijzing_naar_home_shared_dir2 wil, moet je in /home/shared/dir1 gaan staan en daar het commando "ln -s ../dir2 verwijzing_naar_home_shared_dir2" geven.

Je kan natuurlijk ook jezelf chrooten en dan de symlink maken (en de root daarbij gebruiken). Buiten de chroot ziet de symlink er dan alleen een beetje vreemd uit, want de target lijkt dan niet te bestaan. Zo'n relatieve link blijft daar ook werken.

[ Voor 34% gewijzigd door Sendy op 25-01-2006 10:56 ]


  • Sosabowski
  • Registratie: Juni 2003
  • Laatst online: 04-02 22:20
Super_ik schreef op woensdag 25 januari 2006 @ 10:30:
ik heb dat probleem genekt door relative links te gebruiken
#ln -s ../../doel target, werkt toch ook? zowel onder samba, shell en ftp.
Gelukkig, het werkt!
Alleen jammer dat de 'drag and drop' van Ubuntu er absolute symlinks maakt. In de terminal werkt het prima! Bedankt allemaal!

The whole problem with the world is that fools and fanatics are always so certain of themselves, and wiser people so full of doubts. -- Bertrand Russell

Pagina: 1