Hoofdcategorieën

Nieuw reactie in topic: Directory die gecreate wordt automatisch chmod 775 geven

Let op:
  • Reageer ontopic, plaats geen onzinnige berichten en ga niet flamen of uitlokken (trollen).
  • Zie je iets dat niet door de beugel kan, attendeer dan een moderator via een topicreport maar post hierover niet in het topic, dat werkt alleen averechts. Zie ook de policy die wij op dit forum hanteren.
  • Lees je eigen bericht even door voor je het post.

Insert message
 

Let op! Het laatste bericht in deze discussie is meer dan 2 weken oud!

 

Smilies: :) :( ;) >:) :> :P :9 :o :*) :'( 8) :+ :D _/-\o_ :9~ O+ :O }:O :/ :| :X :? 8)7 |:( O-) :z ;( meer »

Laatste reacties:

 
Ik ben een linux (ubuntu) gebruiker en ben een beginneling. Aangezien ik met google en de search knop niet echt verder kom (Ik weet niet zo goed waar ik naar moet zoeken) hoop ik dat iemand mij verder kan helpen met het antwoord op een volgens mij niet zo moeilijke vraag:

Ik heb Ubuntu geinstalleerd en heb daarop een Sftp server draaiend weten te krijgen (gezien mijn linux kennisniveau vind ik dat al knap van mezelf.)
Nu komt een user met username "user_a" automatisch in zijn home directory, wat ook de bedoeling is. "user_b" moet echter in de home directory van user_a ook kunnen lezen en schrijven.

Dat heb ik nu opgelost door een chmod 775 van de home directory van user_a. Ook heb ik beide users in de zelfde usergroup gezet. Na die stappen is het voor user_b ook mogelijk om in de home directory van user_a te schrijven.

Mijn probleem:

Als user_a een directory aanmaakt in zijn home directory, dan moet ik weer voor die directory opnieuw een chmod uitvoeren, anders kan user_b niet in die directory schrijven. Als user_b een directory creert, kan user_a er niet bij zonder eerst een chmod uit te voeren.

Is er een manier om in te stellen dat als er een directory gemaakt, bijvoorbeeld "/home/user_a/nieuw" dat die directory dan automatisch de rechten 775 meekrijgt?

hmm, lang verhaal, hopelijk kan iemand er een (kort) antwoord op geven :)
 
 
Ik lees even mee, want iets vergelijkbaars heb ik met mijn ftp servertje ook.
 
 
Neem eens een kijkje naar umask.
user_a@localhost:~$ echo "umask 002" >> .bashrc
 
 
Ik heb het zelf opgelost door een dingetje aan te passen in de vsftpd.conf file, maar ik weet natuurlijk niet of jij die gebruikt...
 
 
Zoals cherwin zegt: Google eens naar umask :)
 
 
Misschien handig om te vertellen wat je precies hebt aangepast?
 
 
quote:
battler schreef op zaterdag 19 juli 2008 @ 17:49:
Misschien handig om te vertellen wat je precies hebt aangepast?
Nouja, dat vind je natuurlijk zo als je even kijkt in die vsftpd.conf, maar vooruit:
code:
1
2
chown_uploads=YES
chown_username=someuser

 
 
quote:
Vicarious schreef op zaterdag 19 juli 2008 @ 17:42:
Ik heb het zelf opgelost door een dingetje aan te passen in de vsftpd.conf file, maar ik weet natuurlijk niet of jij die gebruikt...
Nee, die gebruikte ik niet, ik gebruikte de standaard sftp server die meekomt met open-ssh.
Nu heb ik intussen wel vsftpd geinstalleerd en de config aangepast zoals die zou moeten zijn. Alleen als ik nu een sftp sessie open naar de linux machine, krijg ik nog steeds verbinding met de sftp server van open-ssh. Hoe kan ik instellen dat een sftp verbinding automatisch met vsftpd gemaakt moet worden?
 
 
Je kan maar een sftp server tegelijk draaien. Er kan namelijk maar een programma tegelijk luisteren naar verkeer op een bepaalde poort. Je zal dus moeten kijken hoe je de 1e afschiet en de 2e automatisch opstart. Ik ken ubuntu verder niet dus geen idee hoe ja dat aan zou moeten pakken.
 
 
Volgens mij is het helemaal niet nodig om vsftpd erbij te halen.
quote:
slash24 schreef op zaterdag 19 juli 2008 @ 16:52:
Als user_a een directory aanmaakt in zijn home directory, dan moet ik weer voor die directory opnieuw een chmod uitvoeren, anders kan user_b niet in die directory schrijven. Als user_b een directory creert, kan user_a er niet bij zonder eerst een chmod uit te voeren.
Geef de map waar andere mensen die in dezelfde groep zitten in moeten kunnen schrijven een 'set group ID on execution (s)' optie mee (zie die man page).
chmod g+s /home/webuser/shared

Als het goed is zie je dan een s in plaats van een x bij de rechten:
ls -la /home/webuser/
drwxrwsr-x  2 webuser webgroup 4096 2006-09-20 16:52 shared

Dan erft iedere submap die wordt aangemaakt de groepsnaam van de parent, dus als het toegekende groepseigendom van de map een gedeelde groep is, blijft de hele map lees- en schrijfbaar voor medeleden in die groep, tenzij de gebruiker zelf die rechten intrekt.
Waarschuwing: zet geen setuid op de user permissions (dat werkt iets anders en is een potentieel veiligheidslek), alleen op de group. Houd er rekening mee dat gebruikers ook executables bij elkaar in de map kunnen zetten (bijvoorbeeld bij een webserver: een PHP pagina die dan weer via de website van de andere gebruiker is te starten).
 
 
quote:
slash24 schreef op zondag 20 juli 2008 @ 11:24:
Hoe kan ik instellen dat een sftp verbinding automatisch met vsftpd gemaakt moet worden?
Hier heb ik geen specifieke ervaring mee, maar het lijkt me je dat je vsftpd in plaats van sftpd kunt aangeven in /etc/ssh/sshd_config:
code:
1
Subsystem sftp /usr/lib/openssh/sftp-server

 
 
1. De umask methode zal werken en haakt in op het shell-niveau.
2. De vsftp-config-methode zal ook werken en haakt in op het service-niveau.

Aangezien het probleem van deze gebruiker is dat 2 gebruikers altijd bij elkaars bestanden moeten kunnen zou ik de oplossing ook zoeken in het filesystem en niet in de services die ze gebruiken.

3. De in mijn ogen beste oplossing is dus om dit op het filesystem-niveau op te lossen. Dat kan door middel van POSIX ACLs. Dit is een feature die in de bekende linux-filesystems (ext3,reiser,xfs...) zit (standaard staat deze niet aan, maar kan door de distributie ingeschakeld zijn). Zie voor howto's de bekende google, zoek naar "linux acl howto" o.i.d. Vergeet niet om ook het userland pakket acl te installeren voor de tools om dit te manipuleren.

Daarna kun je op die directory een zogenaamde "default acl zetten". Alle vanaf dat moment in die directory aangemaakte bestanden (dus geen bestanden die er al waren, alleen nieuwe) zullen de rechten van die default acl overnemen. Dus voor het probleem genoemd in de titel zou dan een "setfacl -d -m g::rwx bla" genoeg zijn om dit te doen voor de directory bla.
 
 
Met ACL's ga je normaal gesproken echt niet aan de gang voor zoiets triviaals. Die umask in combinatie met de juiste permissies 2775 (daar is nou die sticky bit wel handig voor) lost dit normaal gesproken wel op.
 
 
Ik heb ook aan ACL's zitten denken, maar aangezien TS nog maar één groep heeft voor gedeeld gebruik (en niet allerlei verschillende groepen aan een samengebruikte map hoeft te hangen) voldoet een 'chmod g+s' prima lijkt me :?

Addit: Ik ben traag vandaag, Cheatah was me allang voorbij :)
Pas wel op met de term 'sticky bit', dat is 'chmod o+t' en doet wat anders dan set group id.
 
 
ACLs?
waarom niet een group 'ftpusers' en met behulp van groepsrechten alles goed zetten?
 
 
Als je met groepsrechten gaat werken krijgen nieuw aangemaakte directories nog niet 775 mee, of zie ik hier iets over het hoofd? Een nieuwe directory krijgt nog steeds 755 mee, dus geen toegang voor de anderen.
 
 
Daarvoor heb je inderdaad umask nodig, maar umask alleen is bij standaard gebruikers niet voldoende. Als je de gebruikers op de normale manier hebt aangemaakt, krijgen ze een groep onder dezelfde naam. Bij het aanmaken van een nieuwe map krijgt deze dus de primary group van de gebruiker mee, niet de group van de parent, en dan kunnen de andere gebruikers er niet in werken.
 
 
Mja, dat dacht ik dus al. Naar mijn mening is een combinatie van de groep zetten plus een umask forceren voor alle bestanden die die gebruiker aanmaakt inferieur aan het gebruiken van een acl. Mocht je daar namelijk een andere groep in willen hebben die toegang moet hebben kun je ook de defaultacl zetten op deze manier: "setfacl -d -m g:groepsnaam:rwx directory". Dat lost alle problemen echt op. Zonder dat er andere effecten ontstaan die wel optreden als je de umask gaat aanpassen (zoals tijdelijke bestanden ie aangemaakt worden die ineens ook andere rechten krijgen).
 

VNU Media logo Powered by True

© 1998 - 2008 Tweakers.net - Alle rechten voorbehouden

Uitgever van: