Errore `chattr + i` su NFS


8

Sto cercando di proteggere il mio authorized_keysfile per impedirne la modifica. Corro questo:

[root@localhost]# chattr +i authorized_keys 
chattr: Inappropriate ioctl for device while reading flags on authorized_keys

Penso che potrebbe essere dovuto al filesystem:

[root@localhost]# stat -f -c %T /home/user/
nfs

c'è un modo per modificarlo con chattr?

Risposte:


8

NFS non ha un concetto di file immutabili, motivo per cui si ottiene l'errore. Suggerirei invece di rimuovere l'accesso in scrittura da tutti, il che è probabilmente abbastanza vicino per i tuoi scopi.

$ > foo
$ chmod a-w foo
$ echo bar > foo
bash: foo: Permission denied

Le principali differenze tra la rimozione del bit di scrittura per tutti gli utenti invece di utilizzare l'attributo immutabile:

  • L'attributo immutabile deve essere non impostato dalla radice, mentre chmod può essere modificato dall'utente proprietario del file;
  • L'attributo immutabile rimuove la possibilità di rimuovere il file senza rimuovere l'attributo immutabile, cosa che non comporta la rimozione del bit di scrittura (sebbene sia possibile modificare le autorizzazioni della directory per impedire la modifica, se ciò è accettabile).

Se una di queste cose ti interessa quando hai a che fare con le chiavi autorizzate, probabilmente hai un problema più fondamentale con il tuo modello di sicurezza.


2

Corretto questo non funzionerà su NFS.

Tuttavia, sul server in cui viene esportata questa directory, provare a eseguire il comando chattr. Con un paio di gotchas

Potrebbe essere necessario abilitare gli ACL:

$ mount -o remount,acl /

(Per rendere permanente tale modifica, modifica il tuo / etc / fstab)

SELinux potrebbe ostacolarti:

Per scoprirlo di sicuro:

$ ls -Z
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.