यह नहीं है कि आप समस्या से कैसे संपर्क करें। एक बार जब आप किसी उपयोगकर्ता को शेल एक्सेस देते हैं, तो आप उस उपयोगकर्ता को कुछ भी करने के लिए सौंप रहे हैं, जिसके पास उसकी उचित अनुमति है। कमांड लॉगिंग को भूल जाइए, किसी भी यूनिक्स सिस्टम में कमांड को निष्पादित करने के कई तरीके हैं।
उदाहरण के लिए, उपयोगकर्ता एक मेल क्लाइंट शुरू कर सकता है ( pine
उदाहरण के लिए केवल लॉग इन किया गया है ), इसमें वह "कंपोज़" का चयन करता है जो VI शुरू होता है, और VI से वह किसी भी कमांड को लॉन्च करता है जिसे वह चाहता है :!cmd
। यह आदेश कहीं भी लॉग इन नहीं किया गया है, और सिस्टम के दृष्टिकोण से, यह किसी भी सहायक एप्लिकेशन की तरह है जिसे VI द्वारा बुलाया गया है, जैसे grep या सॉर्ट। शेल द्वारा लॉग किया गया एकमात्र कमांड था pine
।
ऐसा लगता है कि जो आप वास्तव में चाहते हैं उसे ऑडिटिंग कहा जाता है । ऑडिटिंग सबसिस्टम को सक्षम करें auditctl
और ऑडिट पैकेज auditd
से कमांड और डेमॉन का उपयोग करें ताकि लॉग इन किया जा सके। अधिक जानकारी ऑडिटैक्टल (8) मैनुअल पेज में है।
ध्यान दें कि हर प्रक्रिया को तुरंत लॉग इन करना भी इष्टतम नहीं हो सकता है। उदाहरण के लिए, ./configure
एक सॉफ्टवेयर पैकेज के लिए सरल (ऑटोटूल का उपयोग करके बनाया गया) हजारों प्रोसेस इंस्टेंटिएशन बनाने के लिए उल्लेखनीय है। यह ऑडिटिंग लॉग को इतने शोर से भर देगा कि बाद में इसका विश्लेषण करना बहुत कठिन हो जाता है।