Toon posts:

[proftpd] Upload & rechten.

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik wil dus een dir /home/ftp/upload
maken voor upload.
Welke chmod rechten moeten hierin om alleen te uploaden en niet te kunnen deleten voor mensen die gebruik maken van mijn ftp-server.
En wat voor limit moet ik in proftpd.conf zetten?
ik ben al een tijdje aan t klooien ,maar het lukt niet erg......
ThanX!

  • stiena
  • Registratie: Juni 2000
  • Laatst online: 14-08 09:03
:X ;)

Verwijderd

Op maandag 04 februari 2002 21:04 schreef stiena het volgende:
[knip]
Als je het niet zeker weet, dan is het misschien verstandig om niet te reageren ;)

Ik raadt Dealahz sowieso even de FAQ aan voor het stukje over rechten, meer zeg ik nog niet.

Wil je daarnaast in het vervolg een iets betere topictitel kiezen a.u.b.? Ik neem aan dat je met me eens bent, dat de huidige titel wel even iets beter de lading dekt dan je originele topictitel?

Verwijderd

Topicstarter
de faq heb ik al gelzen zie hier mijn proftpd.conf ;-)
=========================================================
# This is a basic ProFTPD configuration file.
# It establishes a single server and a single anonymous login.
# It assumes that you have a user/group "nobody" and "ftp"
# for normal/anonymous operation.

ServerName "Xerium"
ServerType inetd
Serverident on "Xerium ftp-server is ready"
DefaultServer on
Serveradmin "bla@blaat.nl"
DefaultRoot /home/ftp/ ftpusers
AllowRetrieveRestart on
TimeoutLogin 120
TimeoutIdle 600
TimeoutNoTransfer 900
TimeoutStalled 3600
Maxclients 10 "Sorry Max %m users -- Try again later"
MaxInstances 10

#the logs:
SystemLog /var/log/proftpd.log
TransferLog /var/log/xferlog
ExtendedLog /var/log/ftp.log


#Several displays for the Users:
AccessGrantMsg "Guest access granted for %u."
AccessDenyMsg "Access for %u has been denied"
DisplayConnect /etc/proftpd/proftpd.txt
DisplayFirstChdir /etc/proftpd/firstdirlist.txt
DisplayLogin /etc/proftpd/Login.txt
DisplayQuit /etc/proftpd/quit.txt


# Port 21 is the standard FTP port.
Port 2121
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022

# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances 10

# Set the user and group that the server normally runs at.
User nobody
Group nogroup

# Next, create a "guest" account (which could be used
# by a customer to allow private access to their web site, etc)
<Anonymous ~ftpuser>
User ftpuser
Group ftpusers
AnonRequirePassword on

<Limit LOGIN>
AllowAll
</Limit>

HideUser root
HideGroup root

# A private directory that we don't want the user getting in to.
<Directory /home/ftp/upload>
<Limit STOR >
AllowAll
</Limit>
</Directory>

#users are NOT allowed to delete files in /home/ftp/upload.
<Directory /home/ftp/upload>
<Limit WRITE >
AllowAll
</Limit>
</Directory>


</Anonymous>

Verwijderd

Op maandag 04 februari 2002 21:04 schreef stiena het volgende:
:X ;)
Was niet echt kritiek hoor, maar het was niet de oplossing van het probleem ;)


DealahZ: Als jij de FAQ gelezen hebt dan kan jij mij ook wel vertellen wat de fysieke rechten op die directory en bestanden moeten zijn of niet? ;)

Ik heb het dan nog niet eens over je proftpd.conf

Verwijderd

Topicstarter
DealahZ: Als jij de FAQ gelezen hebt dan kan jij mij ook wel vertellen wat de fysieke rechten op die directory en bestanden moeten zijn of niet?
===========================================================
Dat is dus juist de vraag ;)

ik heb alle chmods al geprobeerd ,maar in combo met mijn proftpd.conf werkt het niet ,is mijn idee........
Kijk ,als ik alles op 777 zet werkt alles wel ,maar dan mag men alles ,lijkt me niet handig.
Zodra ik write weghaal ,dan gaat het feest niet door en kan er dus niet ge-upload worden.......

  • stiena
  • Registratie: Juni 2000
  • Laatst online: 14-08 09:03
Op maandag 04 februari 2002 21:17 schreef nelske het volgende:

[..]

Was niet echt kritiek hoor, maar het was niet de oplossing van het probleem ;)


DealahZ: Als jij de FAQ gelezen hebt dan kan jij mij ook wel vertellen wat de fysieke rechten op die directory en bestanden moeten zijn of niet? ;)

Ik heb het dan nog niet eens over je proftpd.conf
* stiena moet meer nadenken voor dat ie post.... excuses :)

maar idd door de faq kom je een stuk verder!

  • Mior
  • Registratie: Maart 2000
  • Laatst online: 15-08 00:58
Dan doe ik het wel ;)

Om te uploaden moet de desbetreffende user schrijf toegang hebben tot die directory (in jou geval /home/ftp/upload), waarmee ik aanneem dat we het over de user ftp hebben.

Dus:
chown -R ftp:users /home/ftp/upload
chmod -R 640 /home/ftp/upload
(640 = Owner lezen en schrijven, group alleen lezen)

Dit is hoe ik het zou doen, maar je kunt het gewoon aanpassen naar je eigen wensen (uiteraard).

Hoe het unix rechten systeem werkt kun je hier lezen.

Verwijderd

Topicstarter
Hoe Unix rechten weren weet ik wel.
En twns die hint van jouw werkt niet:
chmod -R 640 /home/ftp/upload
Dat d8 ik dus ook.In principe doet alles het wel zoals ik weil als ik alle rechten aan iederen geef ,maar dat is natuurlijk niet de bedoeling ;)

  • Mior
  • Registratie: Maart 2000
  • Laatst online: 15-08 00:58
Heb je ook al 'chown -R ftpuser:ftpusers /home/ftp/upload' gedaan :?

Dit naar aanleiding van dit stukje uit je config:
<Anonymous ~ftpuser>
User ftpuser
Group ftpusers
edit: hmm, trouwens, ik weet niet eens wat dat '~ftpusers' achter '<Anonymous' doet..

Verwijderd

Topicstarter
Heb je ook al 'chown -R ftpuser:ftpusers /home/ftp/upload' gedaan

Dit maakt ftpusers eigenaar van die dir,dat is dus zwaar fout ,want zo kunnen ze mijn hele upload lekker deleten.

Nelske word is wakker en help me is ffies??? 8-)

  • Mior
  • Registratie: Maart 2000
  • Laatst online: 15-08 00:58
Op maandag 04 februari 2002 21:40 schreef DealahZ het volgende:
Dit maakt ftpusers eigenaar van die dir,dat is dus zwaar fout ,want zo kunnen ze mijn hele upload lekker deleten.
Jah, ze zullen toch ook moeten schrijven.

Maar daar heb je je proftpd.conf voor, daar kun je gewoon instellen wat anonymous mag.
code:
1
2
3
4
5
6
7
8
<Directory /home/ftp/upload>
  <Limit STOR WRITE>
    AllowAll
  </Limit>
  <Limit DELE>
    DenyAll
  </Limit>
</Directory>

Verwijderd

Topicstarter
Maar als je write insteld kunnen ze dan niet alles deleten?
ik wil dat ze alleen kunnen uploaden natuurlijk en niet deleten.....

  • Mior
  • Registratie: Maart 2000
  • Laatst online: 15-08 00:58
Als het goed moet dat niet kunnen nee.

Zie boven, net stukje toegevoegd.

Verwijderd

Okee, komt ie.

Aan je config te zien, gebruik je voor het anonymous gedeelte de user ftpuser (normaliter wordt hier ftp voor gebruikt) en als groep ftpusers (dat raad ik sowieso af, gezien het rechten verhaal dat ik zometeen ga houden.). Ik zou van beiden gewoon 'ftp' maken.

Ik neem aan dat je het zo wil dat mensen dingen kunnen uploaden, maar dat hij niet getagged mag worden (dus dat er ook weer gedwonload kan worden). Wat voor een rechten wil je dan geven aan de directory /home/ftp/upload?

Je geeft als user ftp op en als groep ftpusers (hier zitten dus de legitieme ftp gebruikers in en niet de user 'ftp').
code:
1
chown -R ftp:ftpusers /home/ftp/upload

Nu wil je dat de anonymous user ('ftp' dus) uiteraard de directory kan bereiken, dus er zullen execute rechten op moeten zitten. Daarnaast moet hij bestanden en dirs aan kunnen maken, ofwel hij zal ook write rechten moeten krijgen. Hij krijgt dus geen leesrechten. (als je de inhoud wel zichtbaar wilt hebben maar niet downloadbaar, dan kan je bijvoorbeeld via proftpd wat limits opgeven).
De users die in de groep ftpusers zitten vertrouw ik allemaal en krijgen in die directory zowel lees, execute als schrijfrechten. Andere users hebben niks te zoeken in die directory dus ik geef het volgende setje rechten aan de directory /home/ftp/upload:
code:
1
chmod 370 /home/ftp/upload

Vervolgens ga je ervoor zorgen dat proftpd in het anonymous blok alle nieuw aan te maken bestanden en directories wegschrijft als group 'ftpusers' (waar de user 'ftp' dus zelf geen deel uit van maakt). Dit kan je m.b.v. van proftpd regelen. Lees daarvoor de documentatie maar eens goed ;)

De directories die erop gezet moeten worden moeten uiteraard dezelfde permissies krijgen als de dir /home/ftp/upload. Ook hiervoor heeft proftpd een config optie. Bestanden kan je in dit geval eventueel dezelfde permissies geven als je directories.

Nu heb je het fysieke deel op je harde schijf beveiligd. Uiteraard kan het geen kwaad om ook in proftpd wat beveiligingen aan te brengen (ook al zullen sommige misschien dan dubbelop zijn). Better safe then sorry ;)

Hoe dat moet laat ik je zelf even uitvogelen ;)

[edit]
Overigens klopt de directory die je meteen in het begin van je anonymous blok hebt staan helaam niet.
Daar staat namelijk dat er gechroot moet worden naar /home/ftpuserftpuser :?

Verwijderd

Topicstarter
thanx hier kan ik wat mee!

  • Mior
  • Registratie: Maart 2000
  • Laatst online: 15-08 00:58
Op maandag 04 februari 2002 21:50 schreef nelske een heel verhaal:
Dat is inderdaad een stuk netter ;)

Verwijderd

Op maandag 04 februari 2002 21:52 schreef Phantom het volgende:

[..]

Dat is inderdaad een stuk netter ;)
Bij lange na niet compleet, maar er moet ook zelf wat gedaan worden he ;)

Overigens betekent het afwezig zijn van read rechten in die dir, dus wel dat iemand die anonymous inlogt gewoon niet de inhoud van die directory te zien krijgt. Als je dat wel wil, dan zul je dus ook nog read rechten aan moeten maken en op de beveiliging van proftpd moeten vertrouwen. Je geeft dan in proftpd op dat users niks mogen downloaden (retrieven).

Let ook nog even op het verhaal dat ik in het [edit] blok neergezet heb in mijn vorrige post. Hetgeen je nu hebt staan klopt namelijk niet echt ;)

Verwijderd

Topicstarter
Nee er staat /home/ftp ftpusers

Alles users die in de groep ftpusers wil ik namelijk alleen maar in home/ftp laten komen ipv de hele hd.
normale user kunnen wel overal komen.
Dat is de bedoeling ervan en het werkt ook.

Verwijderd

Topicstarter
# Next, create a "guest" account (which could be used
# by a customer to allow private access to their web site, etc)
<Anonymous ~ftpuser>
User ftp
Group ftp
AnonRequirePassword on
HideUser root
HideGroup root

#users are NOT allowed to delete files in /home/ftp/upload.
<Directory /home/ftp/upload>
<Limit STOR >
AllowAll
</Limit>
<Limit DELE>
DenyAll
</Limit>
</Directory>


</Anonymous>


Dit heb ik nu trwns ,maar er kan nog steeds wroden gedelete ,dit moet :
<Limit DELE>
DenyAll
</Limit>
toch tegengaan???

  • Mior
  • Registratie: Maart 2000
  • Laatst online: 15-08 00:58

Verwijderd

Op maandag 04 februari 2002 22:11 schreef DealahZ het volgende:
Nee er staat /home/ftp ftpusers

Alles users die in de groep ftpusers wil ik namelijk alleen maar in home/ftp laten komen ipv de hele hd.
normale user kunnen wel overal komen.
Dat is de bedoeling ervan en het werkt ook.
Ik heb al even niet meer in de config directives van proftpd gekeken, maar bij mijn weten wordt '~' toch echt vervangen door de home-dir van die user. Aangezien anonymous nu als user ftp heeft, gaat het goed ja (immers /home/ftp). Het lijkt me sterk dat dit goed ging toen proftpd nog als ftpuser draaide ;)

Geef daar gewoon i.p.v. ~ftpusers, /home/ftp op. Kan niet fout gaan!

Directories in een anonymous blok zijn altijd relatief ten op zichte van de chroot (/home/ftp in dit geval).
Dat is dus ook het punt waarom het verwijderen bij jou nog steeds kan. Je geeft nu namelijk de dingen op voor de dir /home/ftp/home/ftp/upload ;)

[edit]
Vergeet ook niet de chrootdir zelf en alle onderliggende directories te beveiligen!! Wil nog al eens vergeten worden :o

Verwijderd

Topicstarter
Ik heb staan /home/ftp/ ftpusers
Dit leid alleen users die lid zijn v/d groep ftpusers naar /home/ftp en kunnen dan niet lager komen.
normale users (ikzeelf bv) komen nu gewoon in hun eigen dir.
Het maakt niets uit als welke user proftpd draait.(Ik heb het nu lopen op de user zoals jij gezegd had en het werkt gewoon)

Verwijderd

Anonymoud blok werkt helemaal niet met groepen. De chroot wordt gedaan naar de dir die achter het anonymous blok staat. Dit heeft niks te maken met het inloggen van vallide ftp-gebruikers. Daar wordt namelijk de DefaultRoot directive voor gebruikt (uit mijn hoofd).
Kortom het stukje ftpusers dat je in het anonymous blok heb staan doet helemaal niks.
Pagina: 1