मेरे पास सर्वर ए और सर्वर बी (दोनों Ubuntu 10.04 एलटीएस) अलग-अलग कार्य कर रहे हैं। सर्वर ए को सर्वर बी को पॉकेट करने की आवश्यकता है, जो एक फ़ाइल उत्पन्न करता है और जब यह किया जाता है तो सर्वर ए पर वापस आ जाता है। यह सब इन-हाउस है और मैं सुरक्षा मुद्दों के बारे में बहुत चिंतित नहीं हूं। SSH कुंजी विनिमय पहले से ही सर्वर A और B के बीच किया जाता है और ठीक काम करता है।
सर्वर B पर, स्क्रिप्ट generateOfflineSig
जैसा दिखता है
#!/bin/bash
echo "in script"
sudo apt-offline set offline_package.sig --install-packages "$0"
echo "after sudo"
scp offline_package.sig jeff@servera:/tmp
सर्वर B पर भी, visudo की यह प्रविष्टि है:
jeff ALL=NOPASSWD: ALL
जो काम करता है अगर मैं sudo ls
सर्वर बी पर निष्पादित करता हूं ... कोई पासवर्ड नहीं पूछा गया।
दुर्भाग्य से SSH हमेशा सर्वर A पर पासवर्ड मांगता है:
jeff@servera:~$ ssh -t jeff@serverb /home/jeff/generateOfflineSig "incron"
in script
[sudo] password for jeff:
कोई विचार? पासवर्ड इनपुट द्वारा इस प्रक्रिया को बाधित नहीं किया जा सकता है।
/etc/sudoers
सिंटैक्स का 100% यकीन नहीं है , लेकिन मेरी फ़ाइल में लाइन है# %wheel ALL=(ALL) NOPASSWD: ALL
। शायद आपकी लाइन होनी चाहिएjeff ALL=(ALL) NOPASSWD: ALL
?