# Unix : comment protéger ses dossiers ?



## Arthas (20 Avril 2003)

Bonjour à toute la communauté Unix de Mac OS !

Etant débutant sur Unix, je réclame votre aide !

Comment se fait-il qu'en supprimant les autorisations rwx d'un dossier pour tout le monde (utilisateur, groupe et autres), je puisse quand même modifier le nom du dossier et le placer à la corbeille ?
La même chose se produit lorsque je me log sur un autre compte !

Connaitriez vous une commande plus puissante que chmod ?
L'idéal serait qu'en voulant changer le nom du dossier et en voulant le placer à la corbeille, mon password me soit demandé !

Merci d'avance pour vos réponses !


----------



## vnsullivan (21 Avril 2003)

Bonjour Arthas,

Il y a déjà un thread ouvert sur un sujet similaire, mais en mode graphique (cf forum mac os x).
Sinon, sache que les modifications d'autorisation n'agissent pas sur la suppression de fichier avec la commande "rm". Si tu souhaite interdire un peu plus qu'avec les modifications d'autorisations, tu peux utiliser la commande "chflags" (change flags) de la manière suivante (file est le nom du fichier que tu souhaites protéger):

<font class="small">Code:</font><hr /><pre>
% chflags uchg file
</pre><hr />

"uchg" pour "user change".
Une fois cette commande prise en compte, tu ne pourras plus modifier le fichier file, quelles que soit les autorisations d'accés (les flags l'emportent sur les autorisations). Cela signifie que tu ne pourras pas l'écraser, mais tu ne pourras pas non plus le modifier, ni créer de copies ou de liens. Toutefois, quelles que soit les autorisations pour ce fichier, tu pourras le lire (les flags le permettent, et ils prennent le dessus sur les autorisations...)
Pour retirer le flags "uchg", tu tapes la commande suivante:

<font class="small">Code:</font><hr /><pre>
% chflags nouchg file
</pre><hr />

"nouchg" pour "no user change"

Par contre, un fichier protégé par des flags "user" pourra être modifié avec le root (sudo...).

Si tu souhaites protéger totalement un fichier, comme peuvent l'être certains fichiers système, tu peux utiliser la commande chflags avec le qualificatif "schg" pour "system change" (system c'est pour le root):

<font class="small">Code:</font><hr /><pre>
% chflags schg file
</pre><hr />

Alors là, ton fichier sera complètement intouchable (pas de sudo qui ne tienne...), et tellement intouchable que tu ne pourras même pas utiliser la commande "chflags noschg file" pour retirer la protection 
	

	
	
		
		

		
			




Pour retirer la protection, il te faut redémarre un single-user mode pour effectuer cette commande "chflags noschg file".
Attention donc à l'utilisation de chflags avec schg.

Autre remarque: ce qui est marrant, c'est qu'en mode graphique tu pourras modifier un fichier protéger par chflags (on te demanderas si tu souhaites écraser le fichier ou non...)
Toutefois, si tu protège également de répertoire (avec chflags) dans lequel vit ton fichier à protéger, alors là il ne sera plus possible de le modifier. 
	

	
	
		
		

		
		
	


	




vn


----------



## Arthas (22 Avril 2003)

Bonjour Vnsullivan !

Merci à toi pour ton exposé très complet sur la commande "chflags". J'arrive dorénavant à verrouiller mes fichiers !


----------



## vnsullivan (22 Avril 2003)

De rien!
Tant qu'on peut aider 
	

	
	
		
		

		
		
	


	



C'est fait pour ça un forum.
Et moi aussi j'en profite, alors il faut bien que je le rende.

vn


----------



## plumber (1 Mai 2003)

le fait que tu puisses détruire ton dossier ou le renommer est normal car tu es le pocesseur du dit dossier

et le dossier ou ce trouve ce dossier tu peux ecrire

chown root:wheel ton dossier et tu verras que ca change tout

attention avec les change flags 

autres users normal c'est le problem du groupe staff
c'est une bidouille d'apple pas formidable

tu peux constater que tu as le droit de créer des dossier sur ton /
par le finder

pourtant celui ci appartient a admin
alors le user default navigue entre le group admin et staff

c'est pour ca qu'il y avait en autre de gros soucis avec sendmail


----------



## vnsullivan (4 Mai 2003)

Avec un compte administrateur, on peut toujours supprimer les fichiers, même si ceux-ci appartiennent à root: le terminal propose le message "override ... root/whell ..." et alors on peut supprimer le fichier en répandant "yes".
Ceci n'est pas possible avec chflags. 
	

	
	
		
		

		
		
	


	




vn


----------

