यह मॉड्यूल क्या करता है #
auditd Linux कर्नेल का ऑडिटिंग उपतंत्र है: यह रिकॉर्ड करता है कि कौन लॉग इन करता है, कौन sudo का उपयोग करता है, कौन-सी संवेदनशील फ़ाइलें बदली जाती हैं और कौन-से सिस्टम कॉल निष्पादित होते हैं। यह लगभग हर अनुपालन आवश्यकता (CIS, PCI, ISO) की नींव है। समस्या यह है कि इसके देशी उपकरणों — auditctl, ausearch, aureport — का सिंटैक्स रूखा और अमित्रवत है।
audit मॉड्यूल इसके ऊपर एक पठनीय परत रखता है: यह एक नज़र में बताता है कि auditd सक्रिय है और उसके नियम लोड हैं या नहीं, समय या नियम के key के अनुसार फ़िल्टर करते हुए हाल की घटनाओं को सूचीबद्ध करता है, आपको एक रिपोर्ट-शैली सारांश देता है (लॉगिन, sudo/प्रमाणीकरण और फ़ाइल बदलाव) और सक्रिय CIS ऑडिट नियमों की क्वेरी करने देता है — और यह सब हर उपकरण के फ़्लैग याद किए बिना।
auditd के नियम आमतौर पर immutable मोड में लोड होते हैं (अगले रीबूट तक लॉक), ताकि कोई उन्हें चलते-फिरते अक्षम न कर सके। इसीलिए यदि किसी बदलाव के लिए reboot ज़रूरी हो, तो reload आपको चेतावनी देगा, न कि उसे ज़बरदस्ती लागू करेगा।
सामान्य कार्य #
चुनें कि आप क्या करना चाहते हैं। हर रेसिपी में आदेश पहले से लिखा हुआ आता है — इसे कॉपी करें, ज़रूरत हो तो समायोजित करें और कॉपी करें दबाएँ।
1
जाँचें कि ऑडिटिंग सक्रिय है या नहीं
पुष्टि करता है कि auditd चल रहा है, उसके नियम लोड हैं और कोई बैकलॉग नहीं है।
ubuntu उपयोगकर्ता के साथ SSH से अपने सर्वर पर कनेक्ट करें और चलाएँ:
$ sudo imaxe audit statusक्या आपको यह आउटपुट किसी स्क्रिप्ट या डैशबोर्ड के लिए चाहिए? --json जोड़ें:
$ sudo imaxe audit status --json2
हाल की घटनाएँ देखें
देखें कि क्या हुआ है, समय या नियम key के अनुसार फ़िल्टर करते हुए।
आज की घटनाओं को एक पठनीय सारांश में सूचीबद्ध करें:
$ sudo imaxe audit events --since todayक्या आपको किसी विशिष्ट नियम की (उसके key से) केवल घटनाएँ और वह भी JSON में चाहिए? --key और --json को मिलाएँ:
$ sudo imaxe audit events --key identity --jsonausearch का सिंटैक्स याद किए बिना आपको फ़िल्टर की गई घटनाएँ मिलती हैं। यदि आप --since नहीं देते, तो audit.yml की डिफ़ॉल्ट विंडो का उपयोग होता है।3
दिन का सारांश प्राप्त करें
aureport-शैली की रिपोर्ट: लॉगिन, sudo/auth और फ़ाइल बदलाव।
समेकित गतिविधि सारांश माँगें:
$ sudo imaxe audit summarysudo के कितने उपयोग और कितने फ़ाइल बदलाव रिकॉर्ड हुए हैं।4
नियम देखें या पुनः लोड करें
सक्रिय नियमों की क्वेरी करें और immutable मोड का सम्मान करते हुए बदलाव लागू करें।
अभी लोड किए गए ऑडिट नियमों को सूचीबद्ध करें (auditctl -l के समतुल्य):
$ sudo imaxe audit rules listयदि आपने नियम फ़ाइलें संपादित की हैं, तो उन्हें पुनः लोड करें। यदि सिस्टम immutable मोड में है, तो आदेश आपको चेतावनी देगा कि रीबूट आवश्यक है:
$ sudo imaxe audit rules list --json
$ sudo imaxe audit reloadयदि events खाली आता है, तो पहले status से जाँचें कि auditd सक्रिय है और उसके नियम लोड हैं। शायद --since विंडो बहुत छोटी है, या जिस key से आप फ़िल्टर कर रहे हैं, उसे कोई नियम उपयोग नहीं करता। नियमों को rules list से जाँचें।
सारांश #
imaxe audit <subcomando> [<subcomando anidado>] [--since T] [--key K] [--json]हर उपआदेश ऑडिटिंग उपतंत्र से पढ़ता है, जो केवल root के रूप में सुलभ है (sudo का उपयोग करें)। मशीन-पठनीय आउटपुट के लिए, जो स्क्रिप्टिंग और डैशबोर्ड के लिए उपयुक्त है, status, events या rules list में --json जोड़ें।
उपआदेश #
| उपआदेश | यह क्या करता है | प्रासंगिक फ़्लैग |
|---|---|---|
| status | स्थिति: auditd सक्रिय, नियम लोड, immutable मोड और बैकलॉग। | --json |
| events | हाल की, फ़िल्टर-योग्य घटनाओं को एक पठनीय सारांश में सूचीबद्ध करता है। | --since, --key, --json |
| summary | aureport-शैली सारांश: लॉगिन, sudo/auth और फ़ाइल बदलाव। | — |
| rules | ऑडिट नियमों के लिए प्रबंधन समूह। एक नेस्टेड उपआदेश आवश्यक है। | — |
| rules list | सक्रिय नियमों को सूचीबद्ध करता है (auditctl -l के समतुल्य)। | --json |
| reload | नियमों को पुनः लोड करता है; immutable मोड का सम्मान करता है और रीबूट आवश्यक होने पर चेतावनी देता है। | — |
आर्गुमेंट और फ़्लैग #
| फ़्लैग | प्रकार | डिफ़ॉल्ट | विवरण |
|---|---|---|---|
| --since | string | audit.yml | events में: कब से सूचीबद्ध करना है (जैसे today, recent, 'now-1 hour')। यदि छोड़ा जाए, तो audit.yml का default_since उपयोग होता है। |
| --key | string | — | events में: किसी auditd नियम के key के अनुसार फ़िल्टर करता है (जैसे identity)। |
| --json | bool | false | status, events और rules list में: परिणाम को stdout पर संरचित JSON के रूप में निकालता है। |
summary, rules और reload कोई फ़्लैग नहीं लेते: वे वैसे ही चलते हैं। याद रखें कि rules को हमेशा नेस्टेड उपआदेश list की आवश्यकता होती है।
फ़ाइलें और पथ #
| पथ | सामग्री |
|---|---|
| /etc/imaxe/audit.yml | मॉड्यूल कॉन्फ़िगरेशन: events के लिए डिफ़ॉल्ट विंडो (default_since) और अन्य विकल्प। |
| /etc/audit/audit.rules | बूट पर auditd द्वारा लोड किए गए ऑडिट नियम (CIS बेसलाइन)। |
| /etc/audit/rules.d/ | नियम खंड जो अंतिम सेट में जोड़े जाते हैं। |
| /var/log/audit/audit.log | घटना लॉग जिसे auditd लिखता है और जिसे events/summary पढ़ते हैं। |
audit.yml का उदाहरण:
events:
default_since: todayनिकास कोड और लॉग #
हर बार चलने पर एक कोड लौटाया जाता है जिसे आप echo $? से जाँच सकते हैं — स्क्रिप्ट में श्रृंखलाबद्ध करने के लिए उपयोगी:
समस्या निवारण करते समय लॉग को लाइव देखें:
$ sudo journalctl -u auditd -f
$ sudo tail -f /var/log/audit/audit.logसमस्या निवारण #
| लक्षण | संभावित कारण | समाधान |
|---|---|---|
| आपको AUDITD (कोड 3) मिलता है | auditd सेवा नहीं चल रही है। | इसे systemctl start auditd से शुरू करें और imaxe audit status दोहराएँ। |
events कुछ नहीं लौटाता | --since विंडो बहुत छोटी है या key मौजूद नहीं है। | --since को चौड़ा करें (जैसे 'now-1 hour') या rules list से keys जाँचें। |
reload रीबूट के बारे में चेतावनी देता है | नियम immutable मोड में हैं (रीबूट तक लॉक)। | बदलाव लागू करने के लिए रीबूट शेड्यूल करें; तब तक पिछले नियम प्रभावी रहते हैं। |
| आपको USAGE (कोड 2) मिलता है | rules को नेस्टेड उपआदेश के बिना कॉल किया गया। | imaxe audit rules list का उपयोग करें: rules को हमेशा एक उपआदेश की आवश्यकता होती है। |
ऑडिट मॉड्यूल में अटक गए?
हमें «imaxe <module> status --json» का आउटपुट भेजें और हम आपको जल्दी जवाब देंगे।