फ़ाइल और निर्देशिका की अखंडता की जाँच कैसे करें " AIDE " लिनक्स में


CentOS 7 को सख्त और सुरक्षित बनाने के लिए हमारे मेगा गाइड में, " आंतरिक रूप से सिस्टम की रक्षा करें ", एक उपयोगी सुरक्षा उपकरण, जिसे हमने वायरस, रूटकिट, मैलवेयर और अनधिकृत का पता लगाने के लिए आंतरिक सिस्टम सुरक्षा के लिए सूचीबद्ध किया था। गतिविधियाँ AIDE है।

AIDE ( उन्नत घुसपैठ का पता लगाने का वातावरण ) एक छोटा सा शक्तिशाली, मुक्त खुला स्रोत घुसपैठ का पता लगाने वाला उपकरण है, जो यूनिक्स जैसे ऑपरेटिंग सिस्टम में फ़ाइल और निर्देशिका अखंडता की जांच करने के लिए पूर्वनिर्धारित नियमों का उपयोग करता है। जैसे कि लिनक्स। यह सरलीकृत क्लाइंट/सर्वर मॉनिटरिंग कॉन्फ़िगरेशन के लिए एक स्वतंत्र स्थिर बाइनरी है।

यह सुविधा संपन्न है: सादे पाठ विन्यास फाइल और डेटाबेस का उपयोग करना आसान बनाता है; कई संदेश डाइजेस्ट एल्गोरिदम का समर्थन करता है जैसे कि md5, sha1, rmd160, tiger तक सीमित नहीं; आम फ़ाइल विशेषताओं का समर्थन करता है; चुनिंदा फ़ाइलों या निर्देशिकाओं को शामिल करने या स्कैन करने के लिए शक्तिशाली नियमित अभिव्यक्तियों का भी समर्थन करता है।

इसके अलावा यह Gzip संपीड़न, Posix ACL, SELinux, XAttrs और विस्तारित फ़ाइल विशेषताओं के लिए असाधारण समर्थन के साथ संकलित किया जा सकता है।

एक विन्यास फाइल (एस) में परिभाषित नियमित अभिव्यक्ति नियमों से एक डेटाबेस (जो फ़ाइल सिस्टम के चयनित भागों का केवल एक स्नैपशॉट है) बनाकर काम करता है। एक बार जब यह डेटाबेस शुरू हो जाता है, तो आप इसके खिलाफ सिस्टम फ़ाइलों की अखंडता को सत्यापित कर सकते हैं। यह मार्गदर्शिका दिखाएगा कि लिनक्स में सहयोगी कैसे स्थापित करें और उसका उपयोग करें।

कैसे लिनक्स में स्थापित करने के लिए

एड को मुख्यधारा लिनक्स वितरण के आधिकारिक रिपॉजिटरी में पैक किया जाता है, यह स्थापित करने के लिए कि पैकेज मैनेजर का उपयोग करके आपके वितरण के लिए कमांड चलाएं।

# apt install aide 	   [On Debian/Ubuntu]
# yum install aide	   [On RHEL/CentOS] 	
# dnf install aide	   [On Fedora 22+]
# zypper install aide	   [On openSUSE]
# emerge aide 	           [On Gentoo]

इसे स्थापित करने के बाद, मुख्य कॉन्फ़िगरेशन फ़ाइल /etc/aide.conf है। स्थापित संस्करण के साथ-साथ समय पैरामीटर संकलित करने के लिए, अपने टर्मिनल पर नीचे कमांड चलाएँ:

# aide -v
Aide 0.14

Compiled with the following options:

WITH_MMAP
WITH_POSIX_ACL
WITH_SELINUX
WITH_PRELINK
WITH_XATTR
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf"

आप अपने पसंदीदा संपादक का उपयोग करके कॉन्फ़िगरेशन खोल सकते हैं।

# vi /etc/aide.conf

इसमें ऐसे निर्देश हैं जो डेटाबेस स्थान, रिपोर्ट स्थान, डिफ़ॉल्ट नियमों, निर्देशिकाओं/फाइलों को डेटाबेस में शामिल करने को परिभाषित करते हैं।

उपरोक्त डिफ़ॉल्ट नियमों का उपयोग करके, आप उदाहरण के लिए aide.conf फ़ाइल में नए कस्टम नियमों को परिभाषित कर सकते हैं।

PERMS = p+u+g+acl+selinux+xattrs

PERMS नियम का उपयोग केवल अभिगम नियंत्रण के लिए किया जाता है, यह फ़ाइल या निर्देशिका अनुमतियों, उपयोगकर्ता, समूह, अभिगम नियंत्रण अनुमतियों, SELinux संदर्भ और फ़ाइल विशेषताओं के आधार पर फ़ाइल या निर्देशिकाओं में किसी भी परिवर्तन का पता लगाएगा।

यह केवल फ़ाइल सामग्री और फ़ाइल प्रकार की जाँच करेगा।

CONTENT = sha256+ftype

यह पिछले नियम का एक विस्तारित संस्करण है, यह विस्तारित सामग्री, फ़ाइल प्रकार और पहुंच की जांच करता है।

CONTENT_EX = sha256+ftype+p+u+g+n+acl+selinux+xattrs

नीचे डेटा नियम सभी फ़ाइलों/निर्देशिका के अंदर डेटा में किसी भी परिवर्तन का पता लगाने में मदद करेगा।

DATAONLY =  p+n+u+g+s+acl+selinux+xattrs+sha256

फ़ाइलों और निर्देशिकाएँ देखने के लिए नियमों को परिभाषित करना

एक बार जब आप नियम निर्धारित कर लेते हैं, तो आप फ़ाइल और निर्देशिकाओं को देखने के लिए निर्दिष्ट कर सकते हैं। ऊपर दिए गए PERMS नियम को ध्यान में रखते हुए, यह परिभाषा रूट डायरेक्टरी की सभी फाइलों की अनुमति की जांच करेगी।

/root/\..*  PERMS

यह किसी भी परिवर्तन के लिए /root निर्देशिका में सभी फ़ाइलों की जाँच करेगा।

/root/   CONTENT_EX

/etc/ के तहत सभी फ़ाइलों/निर्देशिका के अंदर डेटा में किसी भी परिवर्तन का पता लगाने में आपकी सहायता करने के लिए, इसका उपयोग करें।

/etc/   DATAONLY 

लिनक्स में फ़ाइल और निर्देशिका अखंडता की जांच करने के लिए AIDE का उपयोग करना

- init ध्वज का उपयोग करके किए जाने वाले चेक के विरुद्ध एक डेटाबेस का निर्माण शुरू करें। आपके सिस्टम के नेटवर्क से कनेक्ट होने से पहले ऐसा होने की उम्मीद है।

नीचे दी गई कमांड एक डेटाबेस बनाएगी जिसमें आपके कॉन्फ़िगरेशन फ़ाइल में आपके द्वारा चुनी गई सभी फाइलें होंगी।

# aide --init

फिर इस कमांड का उपयोग करके, आगे बढ़ने से पहले डेटाबेस का नाम बदलकर /var/lib/aide/aide.db.gz करें।

# mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

डेटाबेस को सुरक्षित स्थान पर पढ़ने के लिए अनुशंसित किया जाता है, संभवतः केवल-पढ़ने के लिए मीडिया या अन्य मशीनों पर, लेकिन यह सुनिश्चित करें कि आप इसे वहां से पढ़ने के लिए कॉन्फ़िगरेशन फ़ाइल को अपडेट करें।

डेटाबेस बनने के बाद, अब आप - check ध्वज का उपयोग करके फ़ाइलों और निर्देशिकाओं की अखंडता की जांच कर सकते हैं।

# aide --check

यह डेटाबेस में स्नैपशॉट को पढ़ेगा और इसे सिस्टम डिस्क से मिली फाइलों/निर्देशिकाओं से तुलना करता है। यदि यह उन स्थानों में परिवर्तन पाता है जिनकी आप उम्मीद नहीं कर सकते हैं, तो यह एक रिपोर्ट उत्पन्न करता है जिसकी आप समीक्षा कर सकते हैं।

चूंकि फ़ाइल सिस्टम में कोई परिवर्तन नहीं किया गया है, इसलिए आपको केवल ऊपर दिए गए समान आउटपुट मिलेगा। अब विन्यास फाइल में परिभाषित क्षेत्रों में, फाइल सिस्टम में कुछ फाइलें बनाने की कोशिश करें।

# vi /etc/script.sh
# touch all.txt

फिर एक बार और चेक चलाएं, जिसमें ऊपर दी गई फाइलों की रिपोर्ट होनी चाहिए। इस कमांड का आउटपुट उस फ़ाइल सिस्टम के हिस्सों पर निर्भर करता है जिसे आपने चेक करने के लिए कॉन्फ़िगर किया था, यह लंबे समय तक हो सकता है।

# aide --check

आपको नियमित रूप से सहयोगी जांचों को चलाने की आवश्यकता है, और पहले से चयनित फ़ाइलों या कॉन्फ़िगरेशन फ़ाइल में नई फ़ाइल परिभाषाओं के अलावा किसी भी बदलाव के मामले में, हमेशा <कोड> - अपडेट विकल्प का उपयोग करके डेटाबेस को अपडेट करें:

# aide --update

एक डेटाबेस अद्यतन चलाने के बाद, भविष्य के स्कैन के लिए नए डेटाबेस का उपयोग करने के लिए, हमेशा इसे /var/lib/aide/aide.db.gz का नाम बदलें:

# mv /var/lib/aide/aide.db.new.gz  /var/lib/aide/aide.db.gz

अभी के लिए इतना ही! लेकिन इन महत्वपूर्ण बिंदुओं पर ध्यान दें:

  • One characteristic of most intrusion detection systems AIDE inclusive, is that they will not provide solutions to most security loop holes on a system. They however, assist in easing the the intrusion response process by helping system administrators examine any changes to system files/directories. So you should always be vigilant and keep updating your current security measures.
  • It it highly recommended to keep the newly created database, the configuration file and the AIDE binary in a secure location such as read-only media (possible if you install from source).
  • For additional security, consider signing the configuration and/or database.

अतिरिक्त जानकारी और कॉन्फ़िगरेशन के लिए, इसका मैन पेज देखें या AIDE होमपेज देखें: http://aide.sourceforge.net/