एप्लिकेशन तक पहुंच को नियंत्रित करने के लिए गेटकीपर का उपयोग करें
आप spctl
स्वीकृत (अप्राप्त) ऐप्स की सूची बनाने के लिए (गेटकीपर) का उपयोग कर सकते हैं ।
उदाहरण के लिए, मान लें कि आप मेल को अनुमति देना चाहते हैं लेकिन Chrome को ब्लॉक कर सकते हैं।
sudo spctl --add --label "ApprovedApps" /Applications/Mail.app
sudo spctl --add --label "DeniedApps" /Applications/Chrome.app
उपरोक्त कमांड क्रमशः "स्वीकृत" और "अस्वीकृत" के रूप में मेल और क्रोम को "लेबल" करेगा (आप अपने स्वयं के डिस्क्रिप्टर का उपयोग कर सकते हैं)।
अब, ऐप्स को सक्षम / अक्षम करने के लिए, आप कमांड जारी करते हैं:
sudo spctl --enable --label "ApprovedApps"
sudo spctl --disable --label "DeniedApps"
इसका लाभ यह है कि या तो सूची में एक और ऐप जोड़ने के लिए, आपको बस उपयुक्त लेबल जोड़ना होगा:
sudo spctl --add --label "ApprovedApps" /Applications/Another.app
इसके अतिरिक्त, आप मैक ऐप स्टोर से कोड चलाने से रोक सकते हैं ( spctl
मैन पेज में पाया जाता है - man spctl
)।
spctl --disable --label "Mac App Store"
यह किसी को भी ऐप स्टोर से ऐप डाउनलोड करने और इसे चलाने / चलाने से रोक देगा।
Admins से निपटना /sudoers
जैसा कि टिप्पणियों में कहा गया है, एक व्यवस्थापक कुछ भी कर सकता है, दूसरा व्यवस्थापक पूर्ववत कर सकता है। का उपयोग करते हुएspctl
लिए रूट की आवश्यकता होती है, लेकिन किसी विशेष कमांड तक पहुंच को प्रतिबंधित करने के लिए sudoers फ़ाइल को संपादित करना अन्य उपयोगकर्ताओं / व्यवस्थापक को आपके परिवर्तनों को रोकने से रोक सकता है।
विशिष्ट कमांड चलाने से sudo उपयोगकर्ताओं को रोकने के लिए कैसे देखें ? अपने विवरण में "अपवाद के साथ श्वेतसूची" को कॉन्फ़िगर करने के तरीके के विवरण के लिएsudoers
फ़ाइल ।
उदाहरण के लिए, उपयोगकर्ता सैम को छोड़कर सभी आदेशों तक पहुँचने के लिए spctl
, आप sudoers फ़ाइल में डालेंगे:
sam ALL = ALL, !/usr/sbin/spctl
अब, यह एक "त्वरित और गंदे" तरीका है जिससे प्रवेश को रोका जा सकता है spctl
लेकिन अंत में , यह प्रभावी नहीं है क्योंकि यदि अन्य व्यवस्थापक को आपकी रणनीति के अनुसार समझ में आता है, तो उसे बस इतना करना है कि वह कमांड का नाम बदल दे और उनके पास पहुंच हो।
से sudoers
आदमी पेज:
सामान्य तौर पर, अगर किसी उपयोगकर्ता के पास कोई सुडो है, तो उन्हें अपना कार्यक्रम बनाने से रोकने के लिए कुछ भी नहीं है जो उन्हें किसी भी प्रकार की परवाह किए बिना एक रूट शेल (या शेल की अपनी प्रतिलिपि बनाने) देता है! ' उपयोगकर्ता विनिर्देश में तत्व।
वास्तव में इसे बंद करने के लिए, आपको या तो दूसरे उपयोगकर्ता को su
एक अलग उपयोगकर्ता (यानी ऑपरेटर) के रूप में बाध्य करना होगा या सब कुछ अवरुद्ध करने के लिए डिफ़ॉल्ट रूप से अनुमत आदेशों का श्वेत सूची बनाना होगा। हालांकि, यह समय लेने वाली और काफी खतरनाक है क्योंकि आप लोगों को महत्वपूर्ण कार्यों से बाहर कर सकते हैं।