Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[RISOLTO] aMule & permessi
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian)
View previous topic :: View next topic  
Author Message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Sat Jan 22, 2011 1:57 pm    Post subject: [RISOLTO] aMule & permessi Reply with quote

Salve,
la domanda potrà sembrare un pò stupida ma per motivi di praticità vorrei poter accedere e scriverei download di aMule anche da utenti appartenenti allo stesso gruppo e non solo dall'utente p2p.
E' quindi possibile costringere aMuled a far scrivere i file con permssi differenti ?

Grazie :)


Last edited by Shocker580 on Wed Feb 16, 2011 7:21 pm; edited 1 time in total
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Mon Jan 24, 2011 1:10 pm    Post subject: Re: aMule & permessi Reply with quote

Shocker580 wrote:
vorrei poter accedere e scriverei download di aMule anche da utenti appartenenti allo stesso gruppo e non solo dall'utente p2p
giuro che non riesco a capire. Sarà l'età...
Shocker580 wrote:
E' quindi possibile costringere aMuled a far scrivere i file con permssi differenti ?
Questa è un poco più comprensibile, scrutando nella mia sfera di cristallo mi par di scorgere qualcosa. Probabile che non abbia funzionato, visto che il nipotino pestifero me la ha schiantata in terra ancora una volta, ma facciamo comunque un tentativo:

Tieni conto che poichè amule non è il massimo per la sicurezza gira con una uid dedicata (veramente c'è chi suggerisce di sbatterlo in chroot, blidato, ma sono il primo a non curarmene più di tanto e si pongono altri problemi per l'esecuzione) e non è una buona cosa che gli utenti normali (o peggio i wheel) possano eseguire impunemente i file scaricati. Pertanto uomo avvisato... mezzo ammazzato.

Soluzione 1: usi chmod +s o le ACL, un tantino brutale, pone qualche problema se usi selinux (se non ricordo male, non sono troppo affidabile ultimamente) e vale per la singola dir, of course;
Soluzione 2: imposti il misconosciuto e dimenticato umask a qualcosa del genere a=rx,ug+w (caveat emptor: io ho una partizione dedicata montata con nodev,noexec per lo user p2p, per questo me ne frego ed ho messo il comando in /etc/init.d/amuled non ho modificato profile o login.defs);
Soluzione 3: (per accesso via SMB) ti rivolgi a qualcosa del genere
smb.conf:
[downloads]
path = /home/p2p
public = yes
writable = yes
force user = p2p
printable = no
create mask = 0770
esiste anche modo per impostare separatamente dir e file ma lascio a te il piacere di scoprirlo.

uso felice di amule wrote:
da xterm:
USE="daemon geoip gtk nls remote unicode -debug -stats -upnp" emerge -1N amule
passwd p2p
usermod -U -s /bin/bash p2p
xhost +
su -c amule p2p
Configuri e
da xterm:
xhost -
usermod -L -s /sbin/nologin p2p


Ti lascio a riflettere sulle implicazioni in termini di sicurezza e praticità di quanto ti ho scritto con il solito avviso che i cocci sono tuoi e te li tieni.
E che sono in vena di scherzare (fare l'imbecille) quindi non leggere come un rimbrotto nulla di quanto sopra (al massimo come un non troppo velato RTFM od a cercare precedenti discussioni sull'argomento permessi in quanto, per l'innata pigrizia, s'indulge troppo a non voler ripetere le stesse cose).
Infine ti lascio un sibillino rinvio al "Mago" di John Fowles (cercansi copia online, in italiano, dei suoi scritti, in particolare dei primi due e dell'adattamento cinematografico)... :twisted:
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Mon Jan 24, 2011 7:20 pm    Post subject: Reply with quote

Inizio col dire che il mio linguaggio poco umano a volte deriva dalla tastiera wireless che uso che tende a saltare con piacere i tasti che digito come nell'esempio soprastante "scriverei download" = scrivere_i_download".

Concordando sull'idea che effettivamente è pericoloso l'uso di aMule e con l'idea che più avanti potrei fare anch'io un chroot ora vorrei analizzare o meglio riuscire a capire le tue soluzioni.

1. chmod +s a cosa porta ? +s non serve per l'userid ?
2. Mi sembra un'ottima idea ma dove posso impostarlo per l'utente p2p ? In oltre, nodev a cosa serve in fstab ?
3. L'idea di SMB è ottima e infatti è già così configurata per quella directory ma chiaramente i file già scritti da p2p non saranno modificabili.

Quello che non capisco è il tuo "uso felice di amule", a cosa portano quei comandi ?
Grazie :)
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Mon Jan 24, 2011 8:49 pm    Post subject: Reply with quote

meno male che l'avevo sottolineato che ero in vena di fare il cretino...

1: chmod g+s ,prova ad impostarlo per una directory, aggiungi gli utenti che ti interssano a p2p e vedrai cosa succede quando creano un file. Alle volte fa bene fare qualche tentativo.
Per le acl cerca che sono pigro.
2: nodev e noexec bloccano l'uso dei device o l'esecuzione dei file indipendentemente dagli attributi scritti sul disco. Se hai una partizione seprata prova, come sopra.
umask non lo imposti per l'utente p2p (in questo caso lo si mette in .profile od in .bashrc, può andar bene per un utente "normale") o globalmente (e ti ho detto quali sono i file) ma lo imposti per amule inserendo il comando nello shell script /etc/init.d/amuled prima della chiamata ad amuled. Più semplice di così...
3: force user fa si che chi accede tramite smb acceda come utente p2p e create mask fa si che siano creati i file con attributo 0770 leggibili, scrivibili ed eseguibili al proprietario ed al gruppo. Mi pare sin troppo chiaro. Se poi vuoi che ti indichi i comandi per sistemare i file già presenti... ti rispondo sul serio che è il caso di leggerti il fottuto manuale ed usare la tastiera.

Forse ho dimenticato di dirti che le soluzioni non sono alternative ma complementari, mea culpa.

Il chroot non risolve molto, ero sarcastico, dovresti avere doppi eseguibili e ti poni ulteriori problemi (noexec te lo scordi), usa hardening gcc+pax piuttosto (a quel punto puoi anche usare grsec per l'hardening del chroot, a queste condizioni forse serve a qualcosa).

Quei comandi ti servono per configurare amule (od anche il torrent od installare jdownloader p2p lo puoi uare anche per altri programmi) per scegliere l'interfaccia web, scegliere /bin/false per preview o browser, il nick, se vuoi la preallocazione dei file, per disabilitare/abilitare le statistiche, abilitare l'utente da remoto con diritti limitati, impostare una password (in amule, è preferibile averle tutte e due) o persino far avviare amuleweb in automatico (senza dover usare lo script in init.d, deprecabile pratica invece, comunque è meglio utilizzare amulegui) etc. ond anche balmente per bilitare una shell ed utilizzare i comandi nell'utente p2p.
In generale sarebbe bene lanciare sempre e comunque usermod -L -s /sbin/nologin p2p, non si sa mai.
Ed il primo è per le use consigliate. Mi sembra facile.

Documentati sui comandi che ti ho suggerito (non posso spiegarti uno per uno cosa fanno, già mi sfottono per la logorrea nelle risposte) e fai qualche prova. Poi chiedi ulteriori lumi o dubbi.

O vai in chat e chiedi di darti una mano se proprio credi che ti serva qualcuno che ti guidi passo passo.

Non sono incavolato (lo ripeto perchè sto solo cercando di portarti nella giusta mentalità. Linux non è windows devi avere mente più aperta) ma sentirmi chiedere a cosa serve lo sticky bit è sconfortante. Vuol dire, tra l'altro, che non hai un'idea della gestione dei permessi. Se vuoi rendere più sicuro il sistema si parte da questo e quando ti viene suggerito qualcosa si verifica sempre, metti caso che abbia sbagliato a scrivere (e capita, capita)...
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:


Last edited by djinnZ on Thu Feb 03, 2011 6:56 pm; edited 1 time in total
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Wed Jan 26, 2011 7:27 pm    Post subject: Reply with quote

Finalmente ho tutto chiaro (per il SMB l'avevo fin da prima che rispiegassi, forse non mi sono espresso bene).
L'unica cosa che non mi riesce è proprio nel settare l'umask 002 nello script amuled, dove va messo ? Perché se lo incorporo prima della riga
Code:
env HOME="${AMULEHOME}" start-stop-daemon --start \

viene ignorato

Se dentro:
Code:
env HOME="${AMULEHOME}" umask 002 && start-stop-daemon --start \
mi restituisce un
Code:
env: umask: No such file or directory


Quindi dove lo posso dare?
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Wed Jan 26, 2011 9:04 pm    Post subject: Reply with quote

proviamo l'alternativa (te la volevo risparmiare, ma a quanto pare questi rompiglioni di devel insistono nel voler sisemare sempre tutto a puntino, mi sa che appena finisco di importarmi le conf del vecchio server gli fischieranno eccome le orecchie): prova
/home/p2p/.profile:
umask 002

la soluzione più sofisticata sarebbe
/etc/pam.d/system-services:
session optional pam_umask.so umask=022
Code:
chfn -o "umask=002 p2p"
in realtà sono un tantino in dubbio sul file in pam.d, direi di evitare di metterlo in system-auth (per usarlo su ogni utente, quindi dovresti commentare la riga UMASK in login.defs e umask xxx in profile ed in bashrc) come troveresti in rete ma fai qualche prova (non mi sono ancora applicato a come hanno sistemato pam.d).
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Wed Jan 26, 2011 10:57 pm    Post subject: Reply with quote

La prima soluzione non funziona con aMuled ne tanto meno con la shell
Code:
p2p@linux ~ $ umask
0022
p2p@linux ~ $ cat .profile
umask 002
p2p@linux ~ $

(chiaramente ho sloggato e riloggato)

Per quanto riguarda la situazione più sofisticata, perché se imposto l'umask nel pam poi devo disabilitarlo da tutte le altre parti ? Non farei quindi prima a impostarlo in login.defs ? Inoltre con questa modifica mi ritroverei ad avere ogni utente con un umask più libero del dovuto..
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Thu Jan 27, 2011 1:38 pm    Post subject: Reply with quote

strano, controlla proprietario e permessi. bada che .profile vale per login shell altrimenti devi usare .bashrc (anche con un hard link)

umask 022 vuol dire che i file creati saranno rw-r--r-- e le dir rwxr-xr-x mentre 002 corrisponde a rw-rw-r-- e rwxrwxr-x. Spero che questo ti sia chiaro e che un sistema con umask impostato a 002 non è sicuro, tutti i demoni andrebbero in esecuzione con queste impostazioni, non solo gli utenti.

Il consiglio di toglierlo da login.defs, nel caso decidi di usare pam_umask globalmente (in system-auth), è per evitare sovrapposizioni (in teoria dovrebbe agire nell'ordine pam e poi login.defs, ma questo è da verificare, al momento non ho tempo da dedicare a queste cose) per quanto riguarda bashrc e profile dovrebbero reimpostare umask all'avvio di ogni shell di login quindi certamente dopo che ha provveduto pam.
A questo punto con chfn andresti a gestire l'umask da passwd per ogni singolo utente mentre globalmente è impostato direttamente da pam.
Un tentativo per vedere se funziona solo per i demoni lo farei comunque.
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Sun Jan 30, 2011 8:49 am    Post subject: Reply with quote

Considerando che ho una partizione apposita, a questo punto, anch'io montata con noexec e no dev e che voglio un umask 002 solo per l'utente p2p non riesco a capire quale possa essere il rischio :?

Tornando al discorso, con .bashrc nella shell ottengo l'umask desiderato ma amuled scrive sempre coi propri diritti. Vorrei proprio evitare di usare un'impostazione globale per non andare a modificare troppo il sistema. Ed anche con chfn -o "umask=0002 p2p" continuo a non ottenere nulla..

Non so dove sbattere la testa, se hai qualche idea :) Tanto meglio...
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Fri Feb 11, 2011 10:00 pm    Post subject: Reply with quote

Un UP per una soluzione :lol:
Back to top
View user's profile Send private message
zolar czakl
Apprentice
Apprentice


Joined: 25 Sep 2004
Posts: 162
Location: UMRK

PostPosted: Sat Feb 12, 2011 12:00 am    Post subject: Reply with quote

Amule dovrebbe avere una voce per i permessi.
Amuled non legge lo stesso file di configurazione?

E' parecchio che non lo uso :oops:.
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Sat Feb 12, 2011 3:13 pm    Post subject: Reply with quote

@zolar_czacl : amule (a sentire Shocker580) sembra che non ha più la gestione permessi è qui il problema.
Mi pare che comunque bastava mettere delle direttive PermissionFiles/Dirs con i valori in decimale e non in ottale in amule.conf ma sto andando a memoria.

@Shocker580: Ti ripeto che era un tentativo quello di provare a non disabilitare in login.defs e non mettere pam_umask in system_auth etc. O usi pam_umask o login.defs

Altrimenti ci sono le acl per convincere gli utenti linux a scrivere con i giusti permessi.
http://a2.pluto.it/a2227.htm
http://wiki.kaspersandberg.com/doku.php?id=howtos:acl
un poco datate ma dovrebbero andar bene.

e le vecchie discussioni sull'argomento permessi

https://forums.gentoo.org/viewtopic-t-734990-highlight-permessi.html
https://forums.gentoo.org/viewtopic-t-560691-highlight-permessi.html
https://forums.gentoo.org/viewtopic-t-560420-highlight-permessi.html

per capirci...
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Sun Feb 13, 2011 12:32 am    Post subject: Reply with quote

Intanto ti ringrazio per il tentativo!
aMuled come hai detto tu usa lo stesso file amule.conf di aMule normale ma nella configurazione a riga di comando non sono riuscito a trovare quello che dicevi, così ho aperto direttamente la versione con GUI ed il risultato nella sezione Sicurezza è questo:
http://img823.imageshack.us/img823/3407/schermatapreferenze.png :lol:
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Sun Feb 13, 2011 1:47 pm    Post subject: Reply with quote

djinnZ come ho tempo faccio qualche tentativo e aggiorno qui. Grazie
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Wed Feb 16, 2011 11:26 am    Post subject: Reply with quote

Ammetto che sto per impazzire :lol:

Dopo un "lungo" studio delle ACL POSIX sono arrivato alla conclusione che il comando che fa al caso mio è questo:
setfacl -m default:group::rwx Incoming
così da ottenere:
Code:
# file: Incoming
# owner: p2p
# group: p2p
user::rwx
group::rwx
other::r-x
default:user::rwx
default:group::rwx
default:other::r-x


ed effettivamente se con l'utente p2p scrivo un file ottengo:
Code:
p2p@linux /mnt/download/aMule/Incoming $ touch a
p2p@linux /mnt/download/aMule/Incoming $ getfacl a
# file: a
# owner: p2p
# group: p2p
user::rw-
group::rw-
other::r--

p2p@linux /mnt/download/aMule/Incoming $

Perfetto no??

NO!
aMule continua a scrivermi tutto così:
Code:
p2p@linux /mnt/download/aMule/Incoming $ ls -l
totale 964596
-rw-r--r-- 1 p2p p2p       830 16 feb 11.23 "file aMule"
-rw-rw-r-- 1 p2p p2p         0 16 feb 12.25 a
p2p@linux /mnt/download/aMule/Incoming $


Possibile che aMule fa ancora come gli pare??
Devo riavviare il demone ? Il sistema ? Mah! 8O

HELP!
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Wed Feb 16, 2011 4:05 pm    Post subject: Reply with quote

tagliamo la testa al toro, te lo espongo per comandi e configurazioni (capisci cosa vuol dire ogni comando, ovviamente, non mi assumo responsabilità):
/home/p2p/.aMule/amule.conf:
[eMule]
...
IncomingDir=/home/p2p/downloaded
TempDir=/home/p2p/aMuleTemp
...
PermissionsFiles=438
PermissionsDirs=510
...
/etc/smb.conf:
[downloaded]
path = /home/p2p/downloaded
public = yes
writable = yes
force user = p2p
printable = no
create mask = 0660
directory mode = 0770
force directory mode = 0770
force group = p2p
[downloads]
path = /home/p2p/aMuleTemp
public = yes
writable = yes
force user = p2p
printable = no
create mask = 0660
directory mode = 0770
force directory mode = 0770
force group = p2p
se vuoi potresti pensare di usare un remount nfs
/etc/exports:
/home/p2p/amule/aMuleTemp (rw,insecure,all_squash,anonuid=???,anongid=???)
/home/p2p/amule/downloaded (rw,insecure,all_squash,anonuid=???,anongid=???)
commentati gli umask nei vari profile bashrc e login.defs, aggiungi pam_umask in system.auth, imposti con chfn -o "umask=002 utente" i vari utenti che devono cooperare e ti rivolgi a qualcosa del genere
Code:
chown -R p2p /home/p2p
chgrp -R p2p /home/p2p
chmod -R u+rw /home/p2p
chmod -R og-rwx /home/p2p
chmod -R a+X /home/p2p
chmod -R a-rwx /home/p2p/downloaded /home/p2p/aMuleTemp
chmod -R ug+rwXs /home/p2p/downloaded /home/p2p/aMuleTemp
setfacl -x /home/p2p/downloaded /home/p2p/aMuleTemp
setfacl -m default:owner::rwx /home/p2p/downloaded /home/p2p/aMuleTemp
setfacl -m default:group::rwx /home/p2p/downloaded /home/p2p/aMuleTemp
setfacl -m default:other::--- /home/p2p/downloaded /home/p2p/aMuleTemp
beh se così non vuol saperne non so cosa dirti.

Controlla bene perchè in genere qualche cretinata la metto sempre.
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
Shocker580
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2005
Posts: 108
Location: Italy

PostPosted: Wed Feb 16, 2011 7:20 pm    Post subject: Reply with quote

Ho risolto diversamente.. i diritti ACL vengono applicati solo ai file creati nella cartella quindi non vengono applicati se copiati. Evidentemente aMule da Temp a Incoming fa proprio una copia, quindi alla fine è bastato impostare gli stessi diritti ACL anche in Temp!

Grazie DjinnZ, finalmente posso mettere un RESOLVED :)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum