En comparant des manifestes de différents systèmes, vous pouvez déterminer si les systèmes sont installés de façon identique ou s'ils ont été mis à niveau de façon synchronisée. Par exemple, si vous avez personnalisé vos systèmes en fonction d'un objectif de sécurité spécifique, cette comparaison recherche tous les écarts entre le manifeste qui représente cet objectif et les manifestes des autres systèmes.
Avant de commencer
Vous devez prendre le rôle root. Pour plus d'informations, reportez-vous à la section A l’aide de vos droits administratifs attribués du manuel Sécurisation des utilisateurs et des processus dans Oracle Solaris 11.2 .
# bart create options > control-manifest
Pour connaître les options, reportez-vous à la page de manuel bart(1M).
Pour obtenir un exemple, reportez-vous à l'Step 3 in Création d'un manifeste de contrôle.
# bart create options > test1-manifest
Par exemple :
# cp control-manifest /net/test-server/var/adm/logs/bartlogs
Si le système test n'est pas un système monté via NFS, utilisez sftp ou un autre moyen fiable pour copier les manifestes à un emplacement central.
# bart compare control-manifest test1-manifest > test1.report
Cet exemple compare le contenu du répertoire /usr/bin sur les deux systèmes.
Créez un manifeste de contrôle.
# bart create -R /usr/bin > control-manifest.090713 ! Version 1.1 ! HASH SHA256 ! Saturday, September 07, 2013 (11:11:17) # Format: #fname D size mode acl dirmtime uid gid #fname P size mode acl mtime uid gid #fname S size mode acl mtime uid gid #fname F size mode acl mtime uid gid contents #fname L size mode acl lnmtime uid gid dest #fname B size mode acl mtime uid gid devnode #fname C size mode acl mtime uid gid devnode /2to3 F 105 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribut es/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:read _data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:re ad_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4bf9d261 0 2 154de3e7bdfd0d57a074c9fae0896a9e2e04bebfe5e872d273b063319e57f334 /7z F 509220 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribu tes/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:rea d_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:r ead_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4dadc48a 0 2 3ecd418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090 ...
Créez un manifeste identique pour chaque système que vous souhaitez comparer avec le système de contrôle.
# bart create -R /usr/bin > system2-manifest.101013 ! Version 1.1 ! HASH SHA256 ! Monday, October 10, 2013 (10:10:22) # Format: #fname D size mode acl dirmtime uid gid #fname P size mode acl mtime uid gid #fname S size mode acl mtime uid gid #fname F size mode acl mtime uid gid contents #fname L size mode acl lnmtime uid gid dest #fname B size mode acl mtime uid gid devnode #fname C size mode acl mtime uid gid devnode /2to3 F 105 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribut es/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:read _data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:re ad_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4bf9d261 0 2 154de3e7bdfd0d57a074c9fae0896a9e2e04bebfe5e872d273b063319e57f334 ...
Copiez les manifestes dans le même emplacement.
# cp control-manifest.090713 /net/system2.central/bart/manifests
Comparez les manifestes.
# bart compare control-manifest.090713 system2.test.101013 > system2.report /su: gid control:3 test:1 /ypcat: mtime control:3fd72511 test:3fd9eb23
La sortie indique que l'ID de groupe du fichier su dans le répertoire /usr/bin est différent de celui du système de contrôle. Ces informations peuvent indiquer qu'une version différente du logiciel a été installée sur le système test. L'ID de groupe est différent car quelqu'un a probablement modifié le fichier.