सवाल रूट प्रयोजन की अनुमति के बिना मैं एक उपयोगकर्ता को दूसरे पर कैसे जा सकता हूं?


मैं कुछ उपयोगकर्ताओं को उस खाते के पासवर्ड को जानने के बिना किसी अन्य उपयोगकर्ता खाते में मुकदमा करना चाहता हूं, लेकिन किसी अन्य उपयोगकर्ता खाते (यानी रूट) तक पहुंच की अनुमति नहीं देता हूं।
उदाहरण के लिए, मैं टॉम को डीबीए को ऑरैकल उपयोगकर्ता को सुइट करने की अनुमति देना चाहता हूं, लेकिन टॉमकैट उपयोगकर्ता या रूट के लिए नहीं।

मुझे कल्पना है कि यह / etc / sudoers फ़ाइल के साथ किया जा सकता है - क्या यह संभव है? यदि हां, तो कैसे?


49
2018-06-02 15:13


मूल




जवाब:


हाँ, यह संभव है।

में / Etc / sudoers बराबर के बाद तुरंत आइटम वह उपयोगकर्ता है जिसे कमांड को निष्पादित करने की अनुमति दी जाएगी।

tom  ALL=(oracle) /bin/chown tom *

उपयोगकर्ता (टॉम) टाइप कर सकते हैं sudo -u oracle / bin / chown tom / home / oracle / oraclefile


39
2018-06-02 15:18



यह टॉम को ऑरैकल के रूप में कमांड चलाने की अनुमति देगा, लेकिन वास्तव में ऑरैकल उपयोगकर्ता बनने के लिए नहीं - gharper
सुडो-ओ ओरेकल सु के बारे में क्या? वह उसे ऑरैकल उपयोगकर्ता के रूप में खोला गया खोल देगा। क्या तुम यही चाहते हो? - Brent
उस अंतिम टिप्पणी के लिए +1, ब्रेंट। यह मेरा जवाब होगा। - Annika Backstrom
निम्नलिखित की तरह कुछ काम करेगा: sudo -u oracle -s या sudo -u oracle -i (खोल के लिए, -i लॉगिन के लिए - लॉगिन लॉगिन करता है)। दुर्भाग्य से मुझे पता नहीं है कि आप उपयोगकर्ता को सीमित करने के लिए / etc / sudoers में क्या उपयोग करेंगे, लेकिन यह देखते हुए कि आप उन्हें खोल पहुंचने की इजाजत दे रहे हैं, तो शायद आप किसी अन्य व्यक्ति के रूप में सभी को टॉम ऑल = (ऑरैकल) करना चाहते हैं। यदि वे एक खोल चला सकते हैं, तो संभवतः आप उन आदेशों को प्रतिबंधित करने की परवाह नहीं करते हैं जिन्हें वे चला सकते हैं। - Mark
आदर्श रूप में, क्या आप नहीं चाहते कि टॉम ऑरैकल उपयोगकर्ता बनने के बजाए ऑरैकल उपयोगकर्ता के रूप में कमांड चलाए? भेद मामूली है, लेकिन यह एक ऑडिट खोल का उपयोग करने के बिना futz के बिना एक महान लेखा परीक्षा लॉग प्रदान करता है। - Scott Pack


अपने / etc / sudoers जैसे कुछ जोड़ें

tom ALL=(oracle) ALL

फिर उपयोगकर्ता टॉम को टॉम देने के बिना, यू विकल्प के साथ उपयोगकर्ता ऑरैकल के रूप में चीजों को चलाने के लिए सुडो का उपयोग करने में सक्षम होना चाहिए

अर्थात। उपयोगकर्ता ऑरैकल के रूप में एक खोल प्राप्त करना (ठीक है, यह देखते हुए कि आपका सुडो -i विकल्प के लिए पर्याप्त नया है)।

sudo -u oracle -i

36
2018-06-02 15:26



मुझे वाक्यविन्यास का उपयोग करना पड़ा tom ALL=(oracle)NOPASSWD:ALL सुडो को पासवर्ड नहीं पूछने के लिए - snowindy


केवल प्रश्न में क्षमताओं को प्रदान करने के लिए, निम्नलिखित / etc / sudoers में जोड़ें:

tom            ALL=(oracle)    /bin/bash

फिर टॉम कर सकते हैं:

sudo -u oracle bash -i

7
2017-12-11 22:44