लक्ष्य मशीन पर व्यवस्थापक विशेषाधिकार के बिना psexec का उपयोग कैसे करें?


27

क्या psexecरिमोट मशीन पर व्यवस्थापक विशेषाधिकारों के बिना किसी दूरस्थ मशीन पर कमांड निष्पादित करने के लिए उपयोग करना संभव है ?

मैं चल रहा है की कोशिश की psexec \\<machine> -u <username> -p <password>है, जहां <username>और <password>गैर-व्यवस्थापक क्रेडेंशियल्स हैं, लेकिन मैं एक "पहुँच अस्वीकृत" त्रुटि प्राप्त

मैं किसी भी समस्या के बिना समान क्रेडेंशियल के साथ दूरस्थ मशीन में डेस्कटॉप को दूरस्थ कर सकता हूं।

मेरी स्थानीय मशीन विंडोज 7 एंटरप्राइज 64-बिट चल रही है, और रिमोट मशीन विंडोज सर्वर 2008 64-बिट चल रही है। मेरे पास स्थानीय मशीन पर व्यवस्थापक विशेषाधिकार हैं।

EDIT : उन सभी लोगों के लिए जो इस सवाल को नकार रहे हैं: मैं किसी भी तरह के सुरक्षा उपाय को दरकिनार करने की कोशिश नहीं कर रहा हूं । मैं पहले से ही दूरस्थ मशीन पर दूरस्थ डेस्कटॉप-आईएनजी द्वारा दूरस्थ मशीन में प्रक्रिया को चला सकता हूं और इसे चला सकता हूं । मैं बस कुछ करने के लिए कमांड-लाइन तरीका ढूंढ रहा हूं जो मैं पहले से ही GUI के माध्यम से कर सकता हूं।


यह एक खराब सवाल है क्योंकि इस साइट पर हम उपयोगकर्ताओं को सुरक्षा प्रणालियों को दरकिनार करने के लिए पूछ रहे हैं। हो सकता है कि आपके पास इसका एक पाठ होना चाहिए: meta.serverfault.com/questions/1659/… , इसके बाद अक्सर पूछे जाने वाले प्रश्न पढ़े जाते हैं।
जॉन गार्डनियर्स

7
मैं किसी भी सुरक्षा प्रणाली को दरकिनार करने की कोशिश नहीं कर रहा हूं । मैं कुछ ऐसा करने की कोशिश कर रहा हूं जो मैं पहले से ही जीयूआई के माध्यम से कर सकता हूं, इसके बजाय कमांड-लाइन के माध्यम से, जो मुझे अधिक सुविधाजनक लगता है। कृपया मुझे समझाएं कि सुरक्षा प्रणाली को दरकिनार करने का तरीका क्या है।
HC4 - मोनिका

4
कई बार ऐसा होता है जब एक व्यक्ति जो एक प्रशासक होता है उसके पास पूर्ण प्रशासनिक अधिकारों का उपयोग किए बिना प्रक्रिया चलाने का तरीका खोजने के अच्छे कारण होते हैं। कभी-कभी, निश्चित रूप से, यह संभव नहीं है या व्यावहारिक नहीं है, लेकिन अगर सिस्टम में कुछ ट्विक्स पूरी तरह से सिस्टम खोलने के बीच अंतर कर सकते हैं। इसे और अधिक सीमित खाते का उपयोग करके एक्सेस करने के लिए कॉन्फ़िगर किया जा रहा है, तो यह अक्सर करना अच्छा होता है। अधिक सीमित खाते के तहत काम करने की आवश्यकता है।
शैनन वैगनर

8
मैं अपनी नौकरी की भूमिका में विंडोज, लिनक्स और यूनिक्स होस्ट करता हूं और यदि मैं किसी उपयोगकर्ता के प्रश्न को संबोधित करने के लिए उस पर हमला कर रहा हूं तो वह सवाल पूछ सकता है कि मैं जल्द ही नौकरी से बाहर हो जाऊंगा। यह व्यक्ति प्रशासनिक अधिकारों को दरकिनार करने के लिए एक विधि का अनुरोध नहीं कर रहा है। वह एक प्रक्रिया चलाने के लिए सीमित अधिकारों के साथ PSEXEC का उपयोग करने की एक विधि के लिए पूछ रहा है कि उसके पास पहले से ही GUI के माध्यम से चलाने के अधिकार हैं।
रॉबर्ट एबर

जवाबों:


26

जैसा कि पाया गया: /programming/534426/psexec-help-needed

लक्ष्य पर व्यवस्थापक अधिकार होने की आवश्यकता है क्योंकि psexec का हिस्सा लक्ष्य पर एक विंडोज़ सेवा शुरू करता है, और आपको ऐसा करने में सक्षम होने के लिए व्यवस्थापक अधिकारों की आवश्यकता होती है।

psexec व्यवस्थापक साझा करने के लिए एक psexecsvc फ़ाइल की प्रतिलिपि बनाता है और फिर दूरस्थ प्रबंधन का उपयोग करके उस फ़ाइल का उपयोग करके एक सेवा शुरू करता है। यह नामांकित पाइप को खोलता है और आगे के संचार के लिए इसका उपयोग करता है। जब यह खत्म हो जाता है तो यह अपने आप ही खत्म हो जाता है।

हालाँकि मुझे OFFICIAL प्रलेखन नहीं मिल रहा है जो एक ही बात कहता है।


5

मशीन पर स्थानीय व्यवस्थापक बनने के लिए कहें।

संपादित करें: या एक निर्धारित कार्य के रूप में कमांड चलाएं। या PsExec में -l स्विच का उपयोग करें: प्रक्रिया को सीमित उपयोगकर्ता के रूप में चलाएं (प्रशासकों के समूह को स्ट्रिप्स करें और केवल उपयोगकर्ता को सौंपे गए विशेषाधिकारों की अनुमति दें)। विंडोज विस्टा पर प्रक्रिया कम इंटीग्रिटी के साथ चलती है। यहाँ देखें: http://technet.microsoft.com/en-us/sysinternals/bb897553 । कहने के लिए क्षमा करें, लेकिन RTFM!

उदाहरण के लिए: सीमित उपयोगकर्ता विशेषाधिकार के साथ इंटरनेट एक्सप्लोरर चलाने के लिए इस कमांड का उपयोग करें:

psexec -l -d "c: \ program files \ internet explorer \ iexplore.exe"

ध्यान दें कि पासवर्ड दूरस्थ पाठ में स्पष्ट पाठ में प्रेषित होता है।


1
Sysadmins यह अनुमति नहीं देगा, और यह आवश्यक नहीं होना चाहिए। यह लिनक्स पर आवश्यक नहीं है।
एचसी 4 - मोनिका

4
@ HighCommander4, क्या फर्क पड़ता है कि लिनक्स पर यह आवश्यक है या नहीं? यह एक विंडोज़ वातावरण है। संतरे से सेब की तुलना करना बंद करें।
जॉन गार्डनियर्स

2
@ जॉन: मैं बस समझा रहा था कि मैं ऐसा कुछ भी करने की कोशिश नहीं कर रहा हूं जिसके लिए व्यवस्थापक विशेषाधिकारों की आवश्यकता होनी चाहिए। मेरे पास दो मशीनें हैं, जिनमें से प्रत्येक पर एक खाता है, और मैं दूसरी मशीन से एक मशीन पर दूरस्थ रूप से प्रक्रिया शुरू करने की कोशिश कर रहा हूं। यह मुझे करने के लिए एक बहुत ही स्वाभाविक बात लगती है, और यह करने के लिए व्यवस्थापक विशेषाधिकारों की आवश्यकता के लिए यह बेतुका लगता है।
एचसी 4 - मोनिका

@ HighCommander4, जो आप करने की कोशिश कर रहे हैं, जो प्रशासनिक रूप से एक दूरस्थ कंप्यूटर तक पहुंचने के लिए है, को Windows पर व्यवस्थापक एक्सेस की आवश्यकता होती है। हालांकि यह आपके लिए बेतुका लग सकता है, यह उन लोगों के लिए सही अर्थ है, जिन्हें विंडोज नेटवर्क का संचालन करना है।
जॉन गार्डनियर्स 3

4
@ जॉन: अपने स्वयं के खाते पर एक कार्यक्रम चलाने के बारे में "प्रशासनिक" क्या है?
HC4 - मोनिका

2

नहीं, एक उपयोगी तरीके से नहीं। आप ऐसा क्यों करना चाहते हैं और एक व्यवस्थापक नहीं होना चाहिए?


2
अपने डोमेन व्यवस्थापक से इसे आपके लिए करने के लिए कहें। जब तक आप जो कर रहे हैं, वह एक समस्या नहीं होनी चाहिए, तो क्या आप सही हैं?
सफेडो

2
मेरे डोमेन व्यवस्थापक से पूछें कि मेरे लिए क्या करना है? मैं पहले से ही गैर-व्यवस्थापक खाते का उपयोग करके मशीन में दूरस्थ डेस्कटॉप द्वारा प्रक्रिया को चला सकता हूं, और उस खाते के तहत प्रक्रिया चला रहा हूं, अर्थात प्रक्रिया को चलाने के लिए व्यवस्थापक विशेषाधिकारों की आवश्यकता नहीं है। मैं बस मशीन में दूरस्थ डेस्कटॉप होने के बजाय कमांड-लाइन से ऐसा करने में सक्षम होना चाहता हूं।
एचसी 4 -

1
क्या व्यवस्थापक विशेषाधिकार के बिना विंडोज सर्वर पर ssh स्थापित करना संभव है? यदि हां, तो क्या आप मुझे एक लिंक दे सकते हैं? मैंने ओपनएसएसएच की कोशिश की, लेकिन इसके लिए व्यवस्थापक विशेषाधिकारों की आवश्यकता है।
HC4 - मोनिका

1
@tony roth: आपको लिनक्स पर SSH डेमॉन चलाने के लिए एलिवेटेड परमिट की आवश्यकता नहीं है। आपको इसे विशेषाधिकार प्राप्त पोर्ट (0-1023) पर चलाने के लिए केवल ऊंचे परमिट की आवश्यकता है। आप दोनों गैर-विशेषाधिकार प्राप्त पोर्ट का उपयोग करने के लिए क्लाइंट और सर्वर दोनों को कॉन्फ़िगर कर सकते हैं, या तो मशीन पर एलिवेटेड परमिट की आवश्यकता के बिना।
एचसी 4 - मोनिका

2
और वास्तव में मैं बिना किसी विशेषाधिकार के एसएसएच डेमॉन को चलाकर किसी भी व्यवस्थापक विशेषाधिकारों के बिना विंडोज सर्वर पर ओपनएसएसएच स्थापित करने में कामयाब रहा। आगे बढ़ो और मुझे पवित्र Sysadmins की सलाह के बिना अपनी नौकरी में अपनी उत्पादकता बढ़ाने की पहल करने की हिम्मत करने के लिए मुझे नीचा दिखाना।
एचसी 4 - मोनिका


0

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


-1

ऐसा करने का एक तरीका शायद है। यह शायद मशीन पर WMI अनुमतियों को संपादित करने जितना आसान है। यदि यह संभव नहीं है, तो WinRM जैसी किसी चीज़ का उपयोग करना निश्चित रूप से काम करेगा।

हालांकि यह सब आपके लिए मूट है। आपके पास मशीन तक पहुँच नहीं है। इसलिए, आप इसे प्राप्त करने के लिए आवश्यक परिवर्तन नहीं कर सकते हैं। आपको हमें उसके चारों ओर जाने में मदद करने के लिए कहने के बजाय अपने sysadmin के साथ यह काम करने की आवश्यकता है। एक बात बहुत स्पष्ट रूप से याद रखें, हम में से ज्यादातर यहाँ sysadmins हैं और हम उन उपयोगकर्ताओं को पसंद नहीं करते हैं जो हमारे आस-पास जाने की कोशिश कर रहे हैं। इससे हमें आपके sysadmins के आसपास जाने की कोशिश करने में मदद करने की बहुत संभावना नहीं है।


2
मैं यह नहीं देखता कि मैं कुछ भी करने की कोशिश कर रहा हूं। Sysadmins चाहते हैं कि मैं उस मशीन पर प्रक्रियाएं चलाने में सक्षम हो जाऊं, अन्यथा मैं इसमें डेस्कटॉप को दूरस्थ नहीं कर पाऊंगा। मैं चाहता हूं कि रिमोट डेस्कटॉप जीयूआई के बजाय कमांड-लाइन का उपयोग करके प्रक्रिया को चलाने का एक तरीका है। अब मैं इस बारे में sysadmins बग जा सकता है, या मैं बस इसे खुद करने का एक तरीका मिल सकता है। मुझे लगा कि पेशेवर सीसडिन्स का एक समुदाय मेरी मदद करने की कोशिश करेगा, न कि मुझे व्याख्यान देने की।
एचसी 4 - मोनिका

@HighCommander - जवाब यह है कि sysadmins आपको यह क्षमता प्रदान करनी चाहिए। आप इसे स्वयं नहीं कर सकते क्योंकि आपके पास मशीन पर प्रशासनिक अधिकार नहीं हैं। यदि वे वास्तव में इस बात का अनुमोदन करते हैं, तो उन्हें आपको वे अधिकार देने के लिए कहें जो आपको करने में सक्षम होने के लिए आवश्यक हैं।
जेसन बर्ग

-1

`कास्ट स्ट्रिंग उपकुंजी =" सॉफ्टवेयर \ _ Sysinternals \ PsExec ";

        if (Environment.Is64BitOperatingSystem)
        {
            // For 64 Bit PC
            RegistryKey registryKey64 = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser, RegistryView.Registry64);
            RegistryKey NDPKey64 = registryKey64.OpenSubKey(subkey);
            if (NDPKey64 != null)
            {
                Registry.CurrentUser.OpenSubKey(subkey, true).SetValue("EulaAccepted", 1, RegistryValueKind.DWord);
            }
            else
            {
                RegistryKey regKey64 = registryKey64.OpenSubKey("Software", true);
                regKey64.CreateSubKey("Sysinternals\\PsExec", RegistryKeyPermissionCheck.ReadWriteSubTree);
                Registry.CurrentUser.OpenSubKey(subkey, true).SetValue("EulaAccepted", 1, RegistryValueKind.DWord);
            }
        }
        else
        {
            //For 32 bit PC
            RegistryKey registryKey32 = Registry.CurrentUser.OpenSubKey(subkey);
            if (registryKey32 != null)
            {
                Registry.CurrentUser.OpenSubKey(subkey, true).SetValue("EulaAccepted", 1, RegistryValueKind.DWord);
            }
            else
            {
                RegistryKey regKey32 = Registry.CurrentUser.OpenSubKey("Software", true);
                regKey32.CreateSubKey("Sysinternals\\PsExec", RegistryKeyPermissionCheck.ReadWriteSubTree);
                Registry.CurrentUser.OpenSubKey(subkey, true).SetValue("EulaAccepted", 1, RegistryValueKind.DWord);
            }
        }`

4
अपने आप को सिस्टम के ध्यान में लाने के लिए एक निश्चित आग रास्ता पुराने प्रश्नों के समान उत्तर पोस्ट करना है। स्पष्टीकरण के बिना बस डंपिंग कोड महान भी नहीं है। कृपया अपने स्पष्टीकरण को कुछ स्पष्टीकरण के साथ अपडेट करें कि कोड क्या करता है और यह ओपी समस्या को कैसे हल करता है।
user9517

1
ठीक है, कभी-कभी PsExec Eventhough इसे स्थापित किया जाता है जब अनुरोध किया जाता है तो अन्य एक्ज़िट आह्वान नहीं करते हैं। समस्या यह है कि EulaAccepted DWORD मान को 1 के साथ सेट करना है। मुझे इस समस्या पर चर्चा करने वाला पृष्ठ नहीं मिला, इसलिए यहां जोड़ा गया।
श्याम

-1

कोई यह क्यों नहीं कहता कि यह संभव नहीं है? मुझे कुछ ऐसा ही करने की आवश्यकता है (रिमोट एक्ज़ेक ए एस ए एस प्रोग्राम), जिसकी मुझे एक्सेस करने की ज़रूरत है अगर मैं उस सर्वर में आरडीपी (यानी मेरे पास लॉगऑन एक्सेस है। मेरे पास सोर्स कोड फ़ोल्डर में फाइल सिस्टम एक्सेस है और मेरे पास है) एसएएस चलाने के लिए उपयोग)।

नहीं sysadmin उसका है / उसका सही मन मुझे दूर से निष्पादित करने के लिए उस बॉक्स पर पूर्ण व्यवस्थापक अधिकार देने जा रहा है। मूल रूप से PSTools एक sysadmin उपकरण है जिसे वास्तविक आईटी सिस्टम समाधानों की तैनाती के लिए उपयोग करने के लिए डिज़ाइन नहीं किया गया है।


1
यह शेख़ी इस सवाल का जवाब नहीं देती।
फ्लॉप

वास्तव में यह करता है। +1
अमित नायडू
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.