एलशेल - क्लाउड में ऑनलाइन

यह कमांड एलशेल है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे कि उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।

कार्यक्रम:

नाम


एलशेल - सीमित शैल

SYNOPSIS


एलशैल [विकल्प]

वर्णन


एलशैल प्रति उपयोगकर्ता कॉन्फ़िगर किया गया एक सीमित शेल प्रदान करता है। कॉन्फ़िगरेशन काफी किया गया है
बस एक कॉन्फ़िगरेशन फ़ाइल का उपयोग करना। एसएसएच के साथ युग्मित authorized_keys या के साथ / आदि / गोले
और / Etc / पासवर्ड , उपयोगकर्ता की पहुंच को सीमित सेट तक सीमित करना बहुत आसान हो जाता है
आदेश।

विकल्प


--कॉन्फ़िगरेशन
कॉन्फ़िग फ़ाइल निर्दिष्ट करें

--लॉग
लॉग निर्देशिका निर्दिष्ट करें

--
कहाँ *कोई भी* कॉन्फ़िग फ़ाइल पैरामीटर है

-एच, --मदद
सहायता संदेश दिखाएं

--संस्करण
संस्करण दिखाएं

विन्यास


आप इसकी कॉन्फ़िगरेशन फ़ाइल के माध्यम से lshell को कॉन्फ़िगर कर सकते हैं:

On Linux -> /etc/lshell.conf
On * बी.एस.डी. -> /यूएसआर/{pkg,स्थानीय}/etc/lshell.conf

एलशैल कॉन्फ़िगरेशन में 4 प्रकार के अनुभाग हैं:

[वैश्विक] -> एलशैल प्रणाली विन्यास (केवल 1)
[चूक जाना] -> एलशैल चूक उपयोगकर्ता विन्यास (केवल 1)
[फू] -> यूनिक्स उपयोगकर्ता नाम "फू" विशिष्ट विन्यास
[जीआरपी:बार] -> यूनिक्स समूह नाम "बार" विशिष्ट विन्यास

प्राथमिकताएँ लोड करते समय प्राथमिकता का क्रम निम्नलिखित है:

1- उपयोगकर्ता विन्यास
2- समूह विन्यास
3- चूक विन्यास

[वैश्विक]
लॉगपथ
कॉन्फ़िगरेशन पथ (डिफ़ॉल्ट /var/log/lshell/ है)

लॉग स्तर
0, 1, 2, 3 या 4 (0: कोई लॉग नहीं -> 4: सब कुछ लॉग करता है)

लॉगफ़ाइलनाम
- करने के लिए सेट syslog syslog में लॉग इन करने के लिए
- लॉग फ़ाइल नाम सेट करें, उदाहरण के लिए %u-%y%m%d (यानी foo-20091009.log): %u -> उपयोक्तानाम
%d -> दिन [1..31]
%m -> महीना [1..12]
%y -> वर्ष [00..99]
%h -> समय [00:00..23:59]

syslogname
यदि आप syslog का उपयोग कर रहे हैं, तो अपना लॉगनाम सेट करें (डिफ़ॉल्ट: lshell)

शामिल_दिर
एकाधिक कॉन्फ़िगरेशन फ़ाइलों वाली एक निर्देशिका शामिल करें। ये फ़ाइलें ही कर सकती हैं
डिफ़ॉल्ट/उपयोगकर्ता/समूह कॉन्फ़िगरेशन शामिल है। वैश्विक विन्यास ही होगा
डिफ़ॉल्ट कॉन्फ़िगरेशन फ़ाइल से लोड किया गया। इस वेरिएबल का विस्तार किया जाएगा (उदा
/पथ/*.conf).

[चूक जाना] और / या [उपयोगकर्ता नाम] और / या [जीआरपी:समूहनाम]
उपनाम
कमांड उपनाम सूची (बैश के उपनाम निर्देश के समान)

की अनुमति दी
उपयोगकर्ता के PATH में सभी आदेशों को अनुमति देने के लिए अनुमत आदेशों की एक सूची या 'सभी' पर सेट करें

अनुमति_cmd_पथ
पथ की एक सूची; इन पथ के अंदर सभी निष्पादन योग्य फ़ाइलों को अनुमति दी जाएगी

env_path
उपयोगकर्ता के पर्यावरण चर $PATH को अपडेट करें (वैकल्पिक)

env_vars
पर्यावरण चर सेट करें (वैकल्पिक)

निषिद्ध
निषिद्ध वर्णों या आदेशों की सूची

इतिहास_फ़ाइल
इतिहास फ़ाइल नाम सेट करें. वाइल्डकार्ड का उपयोग किया जा सकता है:
%u -> उपयोगकर्ता नाम (जैसे '/होम/%u/.lइतिहास')

इतिहास_आकार
इतिहास फ़ाइल का अधिकतम आकार (पंक्तियों में) सेट करें

गृह_पथ (बहिष्कृत)
अपने उपयोगकर्ता का होम फ़ोल्डर सेट करें। यदि निर्दिष्ट नहीं है, तो होम निर्देशिका पर सेट है
$HOME पर्यावरण चर। यह वेरिएबल अगले संस्करण में हटा दिया जाएगा
एलशेल के, कृपया उपयोगकर्ता की होम निर्देशिका सेट करने के लिए अपने सिस्टम के टूल का उपयोग करें। ए
वाइल्डकार्ड का उपयोग किया जा सकता है:
%u -> उपयोगकर्ता नाम (जैसे '/होम/%u')

परिचय लॉगिन पर प्रिंट करने के लिए परिचय सेट करें

लॉगिन_स्क्रिप्ट
उपयोगकर्ता लॉगिन पर चलाने के लिए स्क्रिप्ट को परिभाषित करें

पासवर्ड विशिष्ट उपयोगकर्ता का पासवर्ड (डिफ़ॉल्ट खाली है)

पथ उपयोगकर्ता को भौगोलिक रूप से प्रतिबंधित करने के लिए पथ की सूची। वाइल्डकार्ड का उपयोग संभव है
(जैसे '/var/log/ap*')।

शीघ्र उपयोगकर्ता का प्रॉम्प्ट प्रारूप सेट करें (डिफ़ॉल्ट: उपयोगकर्ता नाम)
%u -> उपयोक्तानाम
%h -> होस्टनाम

शीघ्र_लघु
सॉर्ट प्रॉम्प्ट वर्तमान निर्देशिका अद्यतन सेट करें - 1 या 0 पर सेट करें ओवरश आदेश की सूची
ssh पर निष्पादित करने की अनुमति (उदाहरण के लिए rsync, rdiff-backup, scp, आदि)

SCP एससीपी कनेक्शन के उपयोग की अनुमति दें या मना करें - 1 या 0 पर सेट करें

एससीपीफोर्स
एससीपी के माध्यम से एक विशिष्ट निर्देशिका में भेजी गई फ़ाइलों को बाध्य करें

एससीपी_डाउनलोड
एससीपी डाउनलोड को प्रतिबंधित करने के लिए 0 पर सेट करें (डिफ़ॉल्ट 1 है)

एससीपी_अपलोड
एससीपी अपलोड रोकने के लिए 0 पर सेट करें (डिफ़ॉल्ट 1 है)

SFTP एसएफटीपी कनेक्शन के उपयोग की अनुमति दें या मना करें - 1 या 0 पर सेट करें।

चेतावनी: यदि आप ओपनएसएसएच की आंतरिक-एसएफटीपी सेवा का उपयोग कर रहे हैं तो यह विकल्प काम नहीं करेगा
(उदाहरण के लिए जब क्रोट में कॉन्फ़िगर किया गया हो)

sudo_commands
अनुमत आदेशों की एक सूची जिसका उपयोग किया जा सकता है sudo(8). यदि 'सभी' पर सेट है, तो सभी
'अनुमत' आदेश इसके माध्यम से पहुंच योग्य होंगे sudo(8).

किसी कमांड को भिन्न रूप में चलाने के लिए -u sudo ध्वज का उपयोग करना संभव है
डिफ़ॉल्ट रूट की तुलना में उपयोगकर्ता।

घड़ी सत्र टाइमर के लिए सेकंड में एक मान

कठोर लॉगिंग सख्ती. यदि 1 पर सेट किया जाता है, तो किसी भी अज्ञात कमांड को निषिद्ध माना जाता है,
और उपयोगकर्ता का चेतावनी काउंटर कम हो गया है। यदि 0 पर सेट किया जाता है, तो कमांड को माना जाता है
अज्ञात, और उपयोगकर्ता को केवल चेतावनी दी जाती है (यानी *** अज्ञात सिंथैक्स)

चेतावनी_काउंटर
जब उपयोगकर्ता बाहर निकलने से पहले निषिद्ध मान दर्ज करता है तो चेतावनियों की संख्या
एलशैल. करने के लिए सेट -1 काउंटर को अक्षम करने के लिए, और केवल उपयोगकर्ता को चेतावनी दें।

शेल अंतर्निहित कमानों


यहां उन कमांडों का सेट दिया गया है जो हमेशा lshell के साथ उपलब्ध होते हैं:

स्पष्ट टर्मिनल साफ़ करता है

मदद, ?
अनुमत आदेशों की सूची प्रिंट करें

इतिहास
कमांड इतिहास प्रिंट करें

एलपथ सभी अनुमत और निषिद्ध पथों को सूचीबद्ध करता है

lsudo सभी सूडो अनुमत आदेशों को सूचीबद्ध करता है

उदाहरण


$ एलशैल
कॉन्फ़िगरेशन फ़ाइल के रूप में डिफ़ॉल्ट ${PREFIX}/etc/lshell.conf का उपयोग करके lshell चलाने का प्रयास करता है।
यदि यह विफल हो जाता है तो एक चेतावनी मुद्रित होती है और एलशेल बाधित हो जाता है। एलशेल विकल्प हैं
कॉन्फ़िगरेशन फ़ाइल से लोड किया गया

$ एलशैल --कॉन्फ़िगरेशन /path/to/myconf.file --लॉग /path/to/mylog.log
यह कॉन्फ़िगरेशन और/या लॉग फ़ाइल के लिए निर्दिष्ट डिफ़ॉल्ट विकल्पों को ओवरराइड कर देगा

उपयोग CASE


एलशेल का प्राथमिक लक्ष्य एसएसएच एक्सेस के साथ शेल खाते बनाने में सक्षम होना था
अपने परिवेश को कुछ आवश्यक आदेशों तक सीमित रखें। इस उदाहरण में, उपयोगकर्ता 'फू' और
उपयोगकर्ता 'बार' दोनों 'उपयोगकर्ता' UNIX समूह से संबंधित हैं:

उपयोगकर्ता फू:
-पहुंचने में सक्षम होना चाहिए / usr और / var लेकिन नहीं / Usr / स्थानीय
- उपयोगकर्ता अपने PATH में सभी आदेश देता है लेकिन 'su'
- एक चेतावनी काउंटर 5 पर सेट है
- उसका होम पथ '/home/users' पर सेट है

उपयोगकर्ता बार:
-पहुंचने में सक्षम होना चाहिए /आदि और / usr लेकिन नहीं / Usr / स्थानीय
- डिफ़ॉल्ट कमांड प्लस 'पिंग' माइनस 'एलएस' की अनुमति है
- सख्ती 1 पर सेट है (जिसका अर्थ है कि उसे अज्ञात कमांड टाइप करने की अनुमति नहीं है)

इस स्थिति में, मेरी कॉन्फ़िगरेशन फ़ाइल कुछ इस तरह दिखाई देगी:

# कन्फ़्यूरेशन स्टार्ट
[वैश्विक]
लॉगपथ : /var/लॉग/lshell/
लॉग स्तर : 2

[चूक जाना]
की अनुमति दी : ['ls','pwd']
निषिद्ध : [';', '&', '|']
चेतावनी_काउंटर : 2
घड़ी : 0
पथ : ['/आदि', '/ usr']
env_path : ':/ sbin:/ usr / बिन /'
SCP : 1 # or 0
SFTP : 1 # or 0
ओवरश : ['rsync','ls']
उपनाम : {'ls':'ls --color=auto','ll':'ls -एल'}

[जीआरपी:उपयोगकर्ता]
चेतावनी_काउंटर : 5
ओवरश : - ['एलएस']

[फू]
की अनुमति दी : 'सभी' - ['सु']
पथ : ['/ var', '/ usr'] - ['/ Usr / स्थानीय']
गृह_पथ : '/होम/उपयोगकर्ता'

[छड़]
की अनुमति दी : + ['गुनगुनाहट'] - ['एलएस']
पथ : - ['/ Usr / स्थानीय']
कठोर : 1
एससीपीफोर्स : '/होम/बार/अपलोड/'
# कन्फ़्यूरेशन अंत

टिप्पणियाँ


किसी उपयोगकर्ता की चेतावनियों को लॉगिंग निर्देशिका में लॉग करने के लिए (डिफ़ॉल्ट /var/लॉग/lshell/)
आपको सबसे पहले फ़ोल्डर बनाना होगा (यदि यह अभी तक मौजूद नहीं है) और इसे lshell समूह में शामिल करना होगा:

# समूह जोड़ें --प्रणाली एलशैल
# mkdir /var/log/lshell
# chown :एलशैल /var/log/lshell
# परिवर्तन विद्या 770 /var/log/lshell

फिर उपयोगकर्ता को इसमें जोड़ें एलशैल समूह:

# usermod -एजी एलशैल USER_NAME

किसी उपयोगकर्ता के लिए lshell को डिफ़ॉल्ट शेल के रूप में सेट करने के लिए:

On लिनक्स:
# छश -s /usr/bin/lshell USER_NAME

On *बीएसडी:
# छश -s /यूएसआर/{पीकेजी, स्थानीय}/बिन/एलशेल USER_NAME

onworks.net सेवाओं का उपयोग करके ऑनलाइन lshell का उपयोग करें



नवीनतम Linux और Windows ऑनलाइन प्रोग्राम