एसएसएच होम डायरेक्टरी प्रति उपडोमेन


12

मुझे आश्चर्य हो रहा है कि क्या प्रत्येक उपडोमेन के लिए एक ही ssh उपयोगकर्ता के लिए अलग-अलग होम निर्देशिकाओं को सेट करना संभव है।

तो चलिए बताते हैं आपको ssh myuser@example.comअपने होम डायरेक्टरी के साथ लॉगिन : /www/httpdocs/

यदि आप ssh myuser@subdomain1.example.comअपनी होम डायरेक्टरी के साथ लॉगिन करते हैं: /www/subdomain1/

यदि आप ssh myuser@subdomain2.example.comअपनी होम डायरेक्टरी के साथ लॉगिन करते हैं: /www/subdomain2/

...

और इसी तरह।

जवाबों:


19

SSH ऐसा नहीं कर सकता क्योंकि SSH प्रोटोकॉल में कॉल में अनुरोधित होस्टनाम शामिल नहीं है। (HTTP उन कुछ प्रोटोकॉलों में से एक है जिनमें अनुरोधित होस्टनाम शामिल है, जो कि वर्चुअल होस्टिंग के लिए कैसे उपयोग किया जा सकता है।) कुछ अन्य चीजें हैं जो आप इसके बजाय आज़मा सकते हैं:

  • आप प्रत्येक उपडोमेन के लिए अलग उपयोगकर्ता बना सकते हैं, लेकिन "मुख्य" उपयोगकर्ता के समान यूआईडी के साथ। उपडोमेन-उपयोगकर्ताओं के पास उपनिर्देशिका के लिए निर्धारित उनकी घरेलू निर्देशिका होगी। उदाहरण:

    useradd -o -u 4711 -d /var/www/subdomain1 subdomain1

  • उपडोमेन के आधार पर प्रमाणित करने के लिए PAM मॉड्यूल का उपयोग करें। यदि ऐसा कोई मॉड्यूल मौजूद है, तो मुझे नहीं पता कि यह क्या होगा, लेकिन यह देखने लायक हो सकता है।

  • प्रत्येक उपडोमेन के लिए अलग SSH कुंजियों का उपयोग करें। क्लाइंट की तरफ, इसे सेट करें .ssh/configताकि आप ssh subdomainइसे सही कुंजी के साथ लॉग इन करने के लिए टाइप कर सकें। सर्वर की ओर, प्रत्येक सार्वजनिक कुंजी authorized_keysशब्दों के साथ शुरू होती है environment="DOMAIN=subdomain"। सर्वर की तरफ, एक .ssh/rcफ़ाइल भी बनाएं जो DOMAINपर्यावरण चर के आधार पर सही निर्देशिका के लिए सीडी होगी । इसके लिए सर्वर को कॉन्फ़िगर किया जाना आवश्यक है PermitUserEnvironment yes


धन्यवाद! एक अच्छे समाधान की तरह लगता है। मै उसे करने की एक कोशिश तो करूंगा।
कपाले

मैं वास्तव में SSH कुंजियों के साथ समाधान का सुझाव देना चाहता था और, विशेष रूप से, कनेक्शन मूल मशीन से ईएनवी संस्करण का निर्यात कर रहा था, लेकिन उन्होंने गृह निर्देशिकाओं के बारे में पूछा और न केवल cdउनमें, इसलिए मुझे नहीं लगा कि यह एक अच्छा समाधान है।
फ्लोरिन असावोई

+1, SSH कुंजी विचार अत्यंत चतुर है और मुझे नहीं पता था कि आप पर्यावरण को उस तरह प्रति कुंजी सेट कर सकते हैं।
tgies

8

यह संभव नहीं है क्योंकि SSH प्रोटोकॉल पैकेट में कहीं भी अनुरोधित होस्टनाम नहीं भेजता है।

इसे लागू करने पर मेरा विचार सबडोमेन को अलग करने के लिए ओपनवीजेड की तरह कुछ का उपयोग करना होगा और प्रत्येक उपडोमेन के लिए एक अलग आईपी होगा।


एक संभावना होगी, लेकिन जिस तरह से मुझे इसकी आवश्यकता है, उसके लिए बहुत अधिक प्रयास करना चाहिए। धन्यवाद
kapale
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.