`chattr + i` Fehler bei NFS

8

Ich versuche, meine authorized_keysDatei zu sichern , um zu verhindern, dass sie geändert wird. Ich führe das aus:

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

Ich denke, es kann am Dateisystem liegen:

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

Gibt es eine Möglichkeit, es mit chattr zu ändern?

Mavillan
quelle

Antworten:

8

NFS hat kein Konzept für unveränderliche Dateien, weshalb Sie den Fehler erhalten. Ich würde vorschlagen, dass Sie stattdessen einfach den Schreibzugriff von allen entfernen, was für Ihre Zwecke wahrscheinlich nah genug ist.

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

Die Hauptunterschiede zwischen dem Entfernen des Schreibbits für alle Benutzer anstelle des unveränderlichen Attributs:

  • Das unveränderliche Attribut muss von root deaktiviert werden, während chmod vom Benutzer geändert werden kann, dem die Datei gehört.
  • Das unveränderliche Attribut entfernt die Möglichkeit, die Datei zu entfernen, ohne das unveränderliche Attribut zu entfernen, was das Entfernen des Schreibbits nicht bewirkt (obwohl Sie die Verzeichnisberechtigungen so ändern können, dass Änderungen nicht zulässig sind, wenn dies akzeptabel ist).

Wenn Ihnen eines dieser Dinge beim Umgang mit autorisierten Schlüsseln wichtig ist, haben Sie wahrscheinlich ein grundlegenderes Problem mit Ihrem Sicherheitsmodell.

Chris Down
quelle
2

Korrigieren Sie dies funktioniert nicht über NFS.

Führen Sie jedoch auf dem Server, auf den dieses Verzeichnis exportiert wird, Ihren Befehl chattr aus. Mit ein paar Fallstricken

Möglicherweise müssen Sie ACLs aktivieren:

$ mount -o remount,acl /

(Um diese Änderung dauerhaft zu machen, bearbeiten Sie Ihre / etc / fstab)

SELinux kann Ihnen im Weg stehen:

Um sicher zu sein:

$ ls -Z
daodennis
quelle