Error `chattr + i` en NFS

8

Estoy tratando de proteger mi authorized_keysarchivo para evitar que se modifique. Yo corro esto:

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

Creo que puede deberse al sistema de archivos:

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

hay una manera de modificarlo con chattr?

mavillan
fuente

Respuestas:

8

NFS no tiene un concepto de archivos inmutables, por lo que obtienes el error. Te sugiero que simplemente elimines el acceso de escritura de todos, lo que probablemente sea lo suficientemente cercano para tus propósitos.

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

Las principales diferencias entre eliminar el bit de escritura para todos los usuarios en lugar de utilizar el atributo inmutable:

  • El atributo inmutable debe estar desarmado por root, mientras que el usuario propietario del archivo puede cambiar chmod;
  • El atributo inmutable elimina la capacidad de eliminar el archivo sin eliminar el atributo inmutable, lo que no elimina el bit de escritura (aunque puede cambiar los permisos del directorio para no permitir la modificación, si eso es aceptable).

Si alguna de estas cosas le importa al tratar con claves autorizadas, probablemente tenga un problema más fundamental con su modelo de seguridad.

Chris Down
fuente
2

Correcto, esto no funcionará sobre NFS.

Sin embargo, en el servidor donde se exporta este directorio, intente ejecutar su comando chattr. Con un par de gotchas

Es posible que deba habilitar las ACL:

$ mount -o remount,acl /

(Para que ese cambio sea permanente, edite su / etc / fstab)

SELinux puede interponerse en su camino:

Para saber con certeza:

$ ls -Z
Daodennis
fuente