Dans les systèmes Linux, nous sommes généralement confrontés à des situations où des données doivent être échangées entre différentes applications et systèmes d'exploitation. La méthode traditionnelle consiste à exporter des fichiers de données vers des formats tels que XML ou CSV pour les échanger, mais cette méthode est généralement lourde et inefficace. Aujourd'hui, nous allons vous présenter un moyen d'échange de données plus efficace : les fichiers ALDE, et comment utiliser les fichiers ALDE pour un échange rapide de données dans les systèmes Linux.
AIDE (Advanced Access Detection Environment) est un programme de vérification de l'intégrité des fichiers et de détection d'accès.
Caractéristiques
L'objectif principal est de vérifier l'intégrité des fichiers et de vérifier quels fichiers sur l'ordinateur ont été modifiés.
AIDE crée une base de données basée sur les règles d'expression régulière trouvées dans le fichier de configuration /etc/aide.conf. Une fois la base de données initialisée, elle peut être utilisée pour vérifier l'intégrité des fichiers. Tous les attributs habituels des fichiers peuvent également être vérifiés pour déceler les incohérences. Il peut lire des versions plus anciennes ou plus récentes de la base de données. La base de données AIDE peut enregistrer divers attributs des fichiers, notamment : l'autorisation, le numéro d'inode, l'utilisateur, le groupe, la taille du fichier, l'heure de la dernière modification (mtime) et l'heure de création (ctime), l'heure du dernier accès (atime), l'augmentation de la taille et. nombre de connexions. AIDE peut également utiliser les algorithmes suivants : sha1, md5, rmd160, Tiger, pour créer un code de contrôle ou un numéro de hachage pour chaque fichier en texte chiffré.
Cette base de données ne doit pas stocker d'informations sur les fichiers qui changent fréquemment, tels que les fichiers journaux, les e-mails, le système de fichiers /proc, les répertoires réels des utilisateurs et les répertoires temporaires.
Contexte
Lorsqu'un intrus pénètre dans votre système et installe un cheval de Troie, il trouve généralement un moyen de cacher le cheval de Troie (en plus de certaines fonctionnalités cachées du cheval de Troie lui-même, il essaiera généralement de mettre en place des obstacles pour que vous puissiez vérifier le système). l'utilisateur modifiera certains fichiers. Par exemple, l'administrateur utilise généralement ps aux pour afficher le processus système. Ensuite, l'utilisateur est susceptible d'utiliser son propre programme ps modifié pour remplacer le programme ps sur votre système. pour vérifier, au programme cheval de Troie en cours d'exécution. Si l'intrus constate que l'administrateur exécute une tâche crontab, il est possible de remplacer le programme crontab et ainsi de suite. On voit donc qu'il est nécessaire de vérifier les fichiers système ou les fichiers clés. Actuellement, il existe deux outils couramment utilisés pour vérifier l'intégrité du système : Tripwire et AIDE. Le premier est un logiciel commercial et le second est un outil gratuit mais puissant.
Étapes de fonctionnement
Installation
[root@CentOS7 ~]# yum -y install aide
Modifier le fichier de configuration
/etc/aide.conf
/etc/aide.conf chemin du fichier de configuration par défaut
/usr/sbin/aide Chemin du fichier exécutable binaire par défaut
/var/lib/aide chemin du fichier de base de données par défaut
/var/log/aide chemin du fichier journal par défaut
Initialisez la bibliothèque AIDE par défaut :
`which aide` --init
Après avoir effectué cette étape, un fichier de base de données nommé "aide.db.new.gz" sera généré sous le chemin de base de données par défaut /var/lib/aide, et toutes les règles définies dans /etc/aide.conf seront écrites dans il. dans ce fichier de base de données.
Générez une base de données de chèques (il est recommandé d'initialiser la base de données et de la stocker dans un endroit sûr)
mv /var/lib/aide/aide.db{.new,}.gz
Étant donné que aide lit par défaut les règles définies dans le fichier /etc/aide.conf à partir du fichier de base de données aide.db.gz pour détecter l'intégrité du fichier, le fichier de bibliothèque initialisé doit être renommé.
Détection
`which aide` --check
Mettre à jour la base de données
`which aide` --update
Après la détection, vous devez mettre à jour la base de données du fichier, sinon la prochaine détection lira toujours les règles de l'ancienne base de données du fichier pour vérifier l'intégrité du fichier. En même temps, vous devez renommer le fichier de base de données
Règles par défaut d'AIDE
# #p: permissions #i: inode: #n: number of links #u: user #g: group #s: size #b: block count #m: mtime #a: atime #c: ctime #S: check for growing size #acl: Access Control Lists #selinux SELinux security context #xattrs: Extended file attributes #md5: md5 checksum #sha1: sha1 checksum #sha256: sha256 checksum #sha512: sha512 checksum #rmd160: rmd160 checksum #tiger: tiger checksum #haval: haval checksum (MHASH only) #gost: gost checksum (MHASH only) #crc32: crc32 checksum (MHASH only) #whirlpool: whirlpool checksum (MHASH only)
Définition et utilisation des règles AIDE
Format de définition de règle : nom de la règle = règle spécifique
【Exemple】:TEST = a+m+c
Format d'utilisation des règles : nom de la règle du fichier/répertoire
【Exemple】:/dir1 TEST
Remarque : Si "!" est ajouté devant le fichier ou le répertoire, cela signifie que la détection est ignorée
Vérification des règles AIDE
Définissez les règles suivantes dans le fichier /etc/aide.conf Le répertoire /dir1 ici est initialement vide.
TEST = a+c+m
/dir1 TES
Test 1 :
Créez un nouveau fichier file1 dans ce répertoire et écrivez "hello aide"
[root@CentOS7 ~]# aide --check AIDE, version 0.15.1 ### All files match AIDE database. Looks okay! [root@CentOS7 ~]# echo "hello aide" > /dir1/file1 [root@CentOS7 ~]# aide --check AIDE 0.15.1 found differences between database and filesystem!! Start timestamp: 2019-11-10 19:12:57 Summary: Total number of files: 3 Added files: 1 Removed files: 0 Changed files: 1 --------------------------------------------------- Added files: --------------------------------------------------- added: /dir1/file1 --------------------------------------------------- Changed files: --------------------------------------------------- changed: /dir1 --------------------------------------------------- Detailed information about changes: --------------------------------------------------- Directory: /dir1 Mtime : 2019-11-10 19:12:00 , 2019-11-10 19:12:55 Ctime : 2019-11-10 19:12:00 , 2019-11-10 19:12:55
Le résultat ci-dessus indique que le fichier file1 a été ajouté au répertoire /dir1 et que les attributs Ctime et Mtime du répertoire /dir1 ont été modifiés
Test 2 :
Modifiez le contenu du fichier /dir1/file1 de "hello aide" en "hello world"
[root@CentOS7 ~]# sed -i '/hello/c hello world' /dir1/file1 ; cat /dir1/file1 hello world [root@CentOS7 ~]# aide --check AIDE 0.15.1 found differences between database and filesystem!! Start timestamp: 2019-11-10 19:14:34 Summary: Total number of files: 3 Added files: 1 Removed files: 0 Changed files: 1 --------------------------------------------------- Added files: --------------------------------------------------- added: /dir1/file1 --------------------------------------------------- Changed files: --------------------------------------------------- changed: /dir1 --------------------------------------------------- Detailed information about changes: --------------------------------------------------- Directory: /dir1 Atime : 2019-11-10 19:12:02 , 2019-11-10 19:12:57 Mtime : 2019-11-10 19:12:00 , 2019-11-10 19:14:31 Ctime : 2019-11-10 19:12:00 , 2019-11-10 19:14:31
À l'heure actuelle, les valeurs Atime, Mtime et Ctime du répertoire /dir1 ont été modifiées.
Grâce à l'introduction de cet article, nous comprenons que les fichiers ALDE sont un format d'échange de données très efficace avec des avantages tels que la flexibilité, la sécurité et l'évolutivité. Dans le même temps, il est également très simple d'utiliser des fichiers ALDE pour l'échange de données dans les systèmes Linux. Il vous suffit d'installer le package ALDE correspondant et d'utiliser les commandes correspondantes. Par rapport à d'autres formats, l'utilisation de fichiers ALDE pour l'échange de données peut améliorer efficacement l'efficacité et l'effet de l'échange de données, devenant ainsi la technologie de pointe de l'échange de données moderne.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!