CentOS 7 - क्रूट जेल के साथ सेटअप SFTP
विषयसूची:
- एक SFTP समूह बनाना
- SFTP समूह में उपयोगकर्ता जोड़ना
- SSH को कॉन्फ़िगर करना
- कॉन्फ़िगरेशन का परीक्षण करना
- निष्कर्ष
इस ट्यूटोरियल में, हम बताएंगे कि कैसे एक SFTP चेरोट जेल पर्यावरण की स्थापना की जाए जो उपयोगकर्ताओं को उनके घरेलू निर्देशिकाओं तक सीमित कर देगा। उपयोगकर्ताओं के पास केवल SFTP पहुँच होगी, SSH पहुँच अक्षम की जाएगी। ये निर्देश उबंटू, सेंटोस, डेबियन और फेडोरा सहित किसी भी आधुनिक लिनक्स वितरण के लिए काम करना चाहिए।
एक SFTP समूह बनाना
प्रत्येक उपयोगकर्ता के लिए ओपनएसएसएच सर्वर को व्यक्तिगत रूप से कॉन्फ़िगर करने के बजाय हम एक नया समूह बनाएंगे और इस समूह में अपने सभी क्रॉओटेड उपयोगकर्ताओं को जोड़ेंगे।
sftponly
उपयोगकर्ता समूह बनाने के लिए निम्न
groupadd
कमांड चलाएँ:
sudo groupadd sftponly
आप जैसा चाहें ग्रुप का नाम बता सकते हैं।
SFTP समूह में उपयोगकर्ता जोड़ना
अगला चरण उन उपयोगकर्ताओं को जोड़ना है जिन्हें आप
sftponly
समूह में प्रतिबंधित करना चाहते हैं।
यदि यह एक नया सेटअप है और उपयोगकर्ता मौजूद नहीं है तो आप टाइप करके एक नया उपयोगकर्ता खाता बना सकते हैं:
sudo useradd -g sftponly -s /bin/false -m -d /home/username username
-
-g sftponly
विकल्प उपयोगकर्ता को sftponly group में जोड़ देगा।-s /bin/false
विकल्प उपयोगकर्ता के लॉगिन शेल को सेट करता है। लॉगिन शेल को/bin/false
करने से उपयोगकर्ता SSH के माध्यम से सर्वर में प्रवेश नहीं कर पाएगा।-m -d /home/username
विकल्प useradd को उपयोगकर्ता होम डायरेक्टरी बनाने के लिए कहता है।
नए बनाए गए उपयोगकर्ता के लिए एक मजबूत पासवर्ड सेट करें:
sudo passwd username
अन्यथा यदि आप जिस उपयोगकर्ता को पहले से ही प्रतिबंधित करना चाहते हैं, वह उपयोगकर्ता को
sftponly
समूह में जोड़ें और उपयोगकर्ता के शेल को बदल दें:
sudo usermod -G sftponly -s /bin/false username2
उपयोगकर्ता होम निर्देशिका को रूट के स्वामित्व में होना चाहिए और इसकी
755
अनुमतियां होनी चाहिए:
sudo chown root: /home/username
sudo chmod 755 /home/username
चूंकि उपयोगकर्ता होम डाइरेक्टरी रूट उपयोगकर्ता के स्वामित्व में हैं, इसलिए ये उपयोगकर्ता अपने होम डाइरेक्टरी में फाइल और डायरेक्टरी नहीं बना पाएंगे। यदि उपयोगकर्ता के घर में कोई निर्देशिका नहीं है, तो आपको नई निर्देशिकाएँ बनाने की आवश्यकता होगी, जिसके लिए उपयोगकर्ता की पूर्ण पहुँच होगी। उदाहरण के लिए, आप निम्न निर्देशिका बना सकते हैं:
sudo mkdir /home/username/{public_html, uploads}
sudo chmod 755 /home/username/{public_html, uploads}
sudo chown username:sftponly /home/username/{public_html, uploads}
यदि कोई वेब एप्लिकेशन उपयोगकर्ता के
public_html
निर्देशिका को दस्तावेज़ रूट के रूप में उपयोग कर रहा है, तो इन परिवर्तनों से अनुमतियाँ समस्याएँ हो सकती हैं। उदाहरण के लिए, यदि आप वर्डप्रेस चला रहे हैं, तो आपको एक PHP पूल बनाने की आवश्यकता होगी जो फ़ाइलों को रखने वाले उपयोगकर्ता के रूप में चलेगा और
sftponly
समूह में जाले को जोड़
sftponly
।
SSH को कॉन्फ़िगर करना
SFTP SSH का एक सबसिस्टम है और सभी SSH प्रमाणीकरण तंत्रों का समर्थन करता है।
अपने पाठ संपादक के साथ SSH कॉन्फ़िगरेशन फ़ाइल
/etc/ssh/sshd_config
खोलें:
sudo nano /etc/ssh/sshd_config
आमतौर पर फ़ाइल के अंत में
Subsystem sftp
शुरू होने वाली लाइन को खोजें। यदि रेखा हैश
#
शुरू होती है तो
#
हैश को हटा दें और इसे संशोधित करके निम्नलिखित की तरह देखें:
Subsystem sftp internal-sftp
फ़ाइल के अंत में, सेटिंग्स का निम्नलिखित ब्लॉक:
Match Group sftponly ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no
ChrootDirectory
निर्देश
ChrootDirectory
निर्देशिका के लिए पथ निर्दिष्ट करता है।
%h
अर्थ है उपयोगकर्ता होम डायरेक्टरी। यह निर्देशिका, रूट उपयोगकर्ता के पास होनी चाहिए और किसी अन्य उपयोगकर्ता या समूह द्वारा लिखित नहीं होनी चाहिए।
SSH कॉन्फ़िगरेशन फ़ाइल को संशोधित करते समय अतिरिक्त सावधानी बरतें। गलत कॉन्फ़िगरेशन SSH सेवा को प्रारंभ करने में विफल हो सकता है।
एक बार जब आप फ़ाइल को सेव कर लेते हैं और परिवर्तनों को लागू करने के लिए SSH सेवा को पुनः आरंभ करते हैं:
sudo systemctl restart ssh
CentOS और Fedora में ssh सेवा का नाम
sshd
:
कॉन्फ़िगरेशन का परीक्षण करना
अब जब आपने SFTP चेरोट को कॉन्फ़िगर कर लिया है, तो आप दूरस्थ उपयोगकर्ता को chtot उपयोगकर्ता के क्रेडेंशियल्स का उपयोग करके SFTP के माध्यम से लॉगिन करने का प्रयास कर सकते हैं। ज्यादातर मामलों में, आप FileZilla जैसे डेस्कटॉप SFTP क्लाइंट का उपयोग करेंगे, लेकिन इस उदाहरण में, हम sftp कमांड का उपयोग करेंगे।
दूरस्थ सर्वर उपयोगकर्ता नाम और सर्वर आईपी पते या डोमेन नाम के बाद sftp कमांड का उपयोग करके एक SFTP कनेक्शन खोलें:
sftp [email protected]
आपको उपयोगकर्ता पासवर्ड दर्ज करने के लिए प्रेरित किया जाएगा। एक बार कनेक्ट होने के बाद, रिमोट सर्वर एक पुष्टिकरण संदेश और
sftp>
प्रॉम्प्ट प्रदर्शित करेगा:
[email protected]'s password: sftp>
pwd
कमांड को चलाएं, जैसा कि नीचे दिखाया गया है, और यदि सब कुछ काम कर रहा है तो उम्मीद है कि कमांड को वापस लौटना चाहिए
/
।
sftp> pwd Remote working directory: /
आप
ls
कमांड का उपयोग करके दूरस्थ फ़ाइलों और निर्देशिकाओं को भी सूचीबद्ध कर सकते हैं और आपको उन निर्देशिकाओं को देखना चाहिए जो हमने पहले बनाई हैं:
निष्कर्ष
इस ट्यूटोरियल में, आपने सीखा है कि अपने लिनक्स सर्वर पर SFTP चेरोट जेल के वातावरण को कैसे सेटअप करें और उपयोगकर्ता की घर निर्देशिका तक पहुँच को सीमित करें।
डिफ़ॉल्ट रूप से, SSH पोर्ट 22 पर सुनता है। डिफ़ॉल्ट SSH पोर्ट को बदलना स्वचालित हमलों के जोखिम को कम करके आपके सर्वर पर सुरक्षा की एक अतिरिक्त परत जोड़ता है। आप एक SSH कुंजी-आधारित प्रमाणीकरण सेट करना चाहते हैं और पासवर्ड दर्ज किए बिना सर्वर से कनेक्ट कर सकते हैं।
ssh sftp सुरक्षाविंडोज़ में मास्टर बूट रिकॉर्ड (एमबीआर) को पुनर्स्थापित करें, ठीक करें, ठीक करें, मरम्मत करें, ठीक करें, पुनर्निर्माण या मरम्मत कैसे करें Bootrec.exe उपकरण का उपयोग कर विंडोज 10/8/7 में मास्टर बूट रिकॉर्ड या एमबीआर। कंप्यूटर में बूट समस्याएं होने में सहायक।

बूट समस्याओं को ठीक करने के लिए प्रभावी समस्या निवारण चरणों में से एक है
कैसे स्थापित करें, hp officejet 6500a प्लस ऑल-इन-वन प्रिंटर स्थापित करें

एचपी ऑफिसजेट 6500 ए प्लस ऑल-इन-वन प्रिंटर को स्थापित करना और स्थापित करना सीखें।
सेंटो 7 पर php कंपोज़र को कैसे स्थापित करें और कैसे उपयोग करें

संगीतकार PHP के लिए एक निर्भरता प्रबंधक है। संगीतकार सभी आवश्यक PHP संकुल में खींच लेगा जो आपकी परियोजना पर निर्भर करता है और आपके लिए उन्हें प्रबंधित करता है। इस ट्यूटोरियल में, हम सेंटोस 7 मशीन पर कम्पोज़र को स्थापित करने और उपयोग करने के चरणों से गुजरेंगे।