J'ai une obligation d'écrire des fichiers dans un système de fichiers Linux qui ne peuvent pas être par la suite écrasés, ajoutés, mis à jour de quelque manière que ce soit ou supprimés. Pas par un sudo-er, un root ou n'importe qui. J'essaie de répondre aux exigences de la réglementation des services financiers pour la tenue des dossiers, FINRA 17A-4, qui exige essentiellement que les documents électroniques soient écrits sur des appareils WORM (écrire une fois, lire plusieurs). J'aimerais bien éviter d'avoir à utiliser des DVD ou des appareils EMC Centera coûteux.
Existe-t-il un système de fichiers Linux ou SELinux peut-il prendre en charge l'exigence selon laquelle les fichiers doivent être rendus immuables immédiatement (ou au moins bientôt) après l'écriture? Ou est-ce que quelqu'un sait comment je pourrais appliquer cela sur un système de fichiers existant en utilisant des autorisations Linux, etc.?
Je comprends que je peux définir des autorisations en lecture seule et l'attribut immuable. Mais bien sûr, je m'attends à ce qu'un utilisateur root puisse les annuler.
J'ai envisagé de stocker des données sur de petits volumes qui sont démontés puis remontés en lecture seule, mais je pense que root pourrait toujours démonter et remonter en tant qu'écriture.
Je suis à la recherche d'idées intelligentes et, dans le pire des cas, je suis prêt à faire un peu de codage pour «améliorer» un système de fichiers existant afin de fournir cela. En supposant qu'il existe un système de fichiers qui constitue un bon point de départ. Et mettez en place un serveur Linux soigneusement configuré pour agir comme ce type de périphérique de stockage réseau, sans rien faire d'autre.
Après tout cela, le cryptage des fichiers serait également utile!
chattr -i filename
alors rmRéponses:
Vous pouvez en quelque sorte le faire avec OpenAFS et les volumes en lecture seule. Cependant, il y a beaucoup d'infrastructure à installer pour le faire fonctionner et peut ne pas répondre aux exigences.
http://www.openafs.org/
Fondamentalement, il existe un volume inscriptible et une ou plusieurs copies en lecture seule du volume. Jusqu'à ce que vous libériez le volume inscriptible, les copies en lecture seule ne peuvent pas être modifiées par les clients. La libération du volume nécessite des privilèges d'administrateur.
Il semble que toute solution nécessite un matériel spécialisé ou un système de fichiers réseau qui duplique la sémantique du matériel spécialisé.
la source
Il semble qu'il n'y ait aucun moyen de le faire sans écrire du code de système de fichiers / noyau personnalisé.
Une solution viable semble consister à utiliser Amazon Glacier avec l'option de stockage d'archives WORM. Selon le blog officiel AWS sur: https://aws.amazon.com/blogs/aws/glacier-vault-lock/
Pour moi, cela fournit exactement ce qui est nécessaire sans les frais de matériel NetApp ou EMC, tout en semblant répondre aux exigences de conservation des enregistrements.
la source
Si vous avez simplement besoin d'accéder à des fichiers à partir d'un système dans lequel les utilisateurs ne peuvent pas les remplacer, vous pouvez monter un volume distant sur lequel vous n'avez aucune autorisation d'écriture. La façon la plus simple de le faire est de monter un partage samba / cifs en lecture seule.
Sinon, si vous avez besoin d'un moyen pour permettre aux utilisateurs d'écrire de nouveaux fichiers (qui ne peuvent pas être remplacés ou modifiés), une solution consiste à monter un chemin FTP avec FUSE curlftpfs.
Vous pouvez définir votre répertoire proftpd avec ces directives:
De cette façon, de nouveaux fichiers peuvent être stockés dans le répertoire monté, mais ils ne peuvent plus être modifiés ou supprimés.
liens: CurlFtpFS , ProFTPD
la source
Il s'agit d'une variante du problème de la « sauvegarde infaillible » et la seule façon de l'implémenter est d'utiliser plusieurs systèmes de fichiers de vers distants qui utilisent et partagent des sommes de contrôle et n'ont pas d'accès physique ou d'administration partagé. Cela garantit que tout est écrit une fois, dupliqué, que l'intégrité peut être prouvée et, dans le cas où un seul bloc est effacé, modifié ou corrompu, récupérable.
Plan9 ou ses dérivés peuvent implémenter toutes les fonctionnalités requises. Voir Plan9 et Venti
la source