SSH कनेक्शन बनाने का प्रयास करते समय कोई त्रुटि उत्पन्न होती है:
$ ssh -p 22 www-data@x.x.x.x
This account is currently not available
SSH कनेक्शन बनाने का प्रयास करते समय कोई त्रुटि उत्पन्न होती है:
$ ssh -p 22 www-data@x.x.x.x
This account is currently not available
जवाबों:
आपको This account is currently not available.
त्रुटि मिल रही है क्योंकि उपयोगकर्ता के लिए शेल www-data
सेट है /usr/sbin/nologin
, और यह एक बहुत अच्छे कारण के लिए सेट है। आपको लॉग इन नहीं करना चाहिए www-data
, यह वेब सर्वर द्वारा उपयोग किया जाने वाला एक विशेष उपयोगकर्ता / समूह है, जो नियमित शेल उपयोग के लिए नहीं है।
EDIT : यह अधिकार देने के लिए एक विशेष रूप से बुरा विचारsudo
है www-data
। यदि अपाचे को रूट अनुमतियों के साथ चलाने का इरादा था, तो इसका अपना समूह नहीं होगा। ऐसा करके, आप भारी सुरक्षा छेद बना रहे हैं। आपको चेतावनी दी गई है।
root
, या लॉगिन शेल को जोड़ सकते हैं www-data
, लेकिन यह बोतल को तोड़कर शराब की बोतल खोलने जैसा है क्योंकि आप कॉर्क-स्क्रू का उपयोग करने के लिए बहुत आलसी और लापरवाह हैं।
हालांकि मैं दूसरों से सहमत हूं कि एसएसएच के माध्यम से www-डेटा उपयोगकर्ता के माध्यम से लॉगिन की अनुमति देना आम तौर पर एक बुरा विचार है, एक बार जब आप सामान्य उपयोगकर्ता के साथ लॉग इन करते हैं तो www के अनुमतियों के साथ समवर्ती रूप से कई कमांड चलाने के लिए उपयोगी हो सकता है- डेटा उपयोगकर्ता। उस स्थिति में, कोई भी चला सकता है
sudo su -l www-data -s /bin/bash
और आप www-data उपयोगकर्ता के रूप में अपनी फ़ाइलों को एक्सेस कर पाएंगे।
-s /bin/bash
पहला सवाल मुझे पूछना होगा कि आप ऐसा करके क्या हासिल करना चाहते हैं?
kraxor 100% सही है आप अपने Apache / Nginx उपयोगकर्ता का उपयोग करके कभी भी अपने सर्वर में ssh नहीं कर सकते। ऐसा करने से आपके सर्वर में आधे हैकर के साथ हर हैकर को आमंत्रित किया जाता है।
यदि आपको एक स्क्रिप्ट या कुछ प्रोग्राम चलाने की आवश्यकता है तो उस उपयोगकर्ता के रूप में जिसे आप कोशिश sudo -u www-data yourscript
कर सकते हैं या आप अस्थायी रूप chown
से लॉगिन विशेषाधिकार वाले उपयोगकर्ता को फ़ाइल पर दे सकते हैं । इस खाते को उस तरह की अनुमति देने के लिए यह केवल एक बुरा विचार है।
su -
अक्षम लॉगिन वाले खातों के लिए काम नहीं करता है।