मेरे पास एक दूरस्थ लिनक्स प्रणाली है जिसे मैं ssh और सार्वजनिक कुंजी के माध्यम से कनेक्ट कर सकता हूं और फिर निम्न कमांड निष्पादित कर सकता हूं:
sudo jetty restart
इस सिस्टम पर यह कमांड किसी को भी sudo पासवर्ड के बिना निष्पादित करने की अनुमति देने के लिए कॉन्फ़िगर किया गया है। यानी sudoers फ़ाइल शायद कुछ इस तरह दिखती है
%develop ALL = NOPASSWD: /opt/scripts/jetty
यह बहुत अच्छा है क्योंकि हम इस स्क्रिप्ट को उच्चीकृत विशेषाधिकारों के साथ निष्पादित कर सकते हैं जबकि बाकी सब कुछ बंद कर सकते हैं। समस्या तब है जब इस कमांड को दूरस्थ रूप से निष्पादित करने की कोशिश की जा रही है, मुझे हमेशा sudo पासवर्ड के लिए कहा जाता है।
me@home:~$ ssh -t -i ~/.ssh/identity me@remote.server.com 'sudo jetty restart'
Password: .....? (I don't have the sudo password!)
क्या कोई तरीका है जिससे मैं इस कमांड को दूरस्थ रूप से निष्पादित कर सकता हूं?
requiretty
बंद है? एक tty_tickets
पैरामीटर भी है जिसे आप जांचना चाहते हैं।
ssh -t
एक ट्टी का उपयोग करते समय हमेशा आवंटित किया जाता है। इसके अलावा, के साथ requiretty
, sudo
विफल हो जाएगा से पहले पासवर्ड के लिए पूछ रहा।