1.4. एफ़टीपी सुरक्षित करना
में विकल्प हैं /etc/vsftpd.conf vsftpd को और अधिक सुरक्षित बनाने में मदद करने के लिए। उदाहरण के लिए उपयोगकर्ताओं को उनके होम निर्देशिकाओं तक सीमित किया जा सकता है:
chroot_local_user=हाँ
आप उपयोगकर्ताओं की एक विशिष्ट सूची को केवल उनकी होम निर्देशिकाओं तक सीमित कर सकते हैं:
chroot_list_enable=हाँ chroot_list_file=/etc/vsftpd.chroot_list
उपरोक्त विकल्पों पर टिप्पणी न करने के बाद, a . बनाएं /etc/vsftpd.chroot_list प्रति पंक्ति एक उपयोगकर्ताओं की सूची युक्त। फिर vsftpd को पुनरारंभ करें:
sudo systemctl पुनरारंभ vsftpd.service
यह भी /आदि/ftpusers फ़ाइल उन उपयोगकर्ताओं की एक सूची है जो हैं अनुमति नहीं देना एफ़टीपी पहुंच। डिफ़ॉल्ट सूची में रूट, डेमॉन, कोई नहीं, आदि शामिल हैं। अतिरिक्त उपयोगकर्ताओं के लिए एफ़टीपी एक्सेस को अक्षम करने के लिए बस उन्हें सूची में जोड़ें।
एफ़टीपी का उपयोग करके भी एन्क्रिप्ट किया जा सकता है FTPS. से अलग SFTP, FTPS सिक्योर सॉकेट लेयर (एसएसएल) पर एफ़टीपी है। SFTP एन्क्रिप्टेड पर एक एफ़टीपी जैसा सत्र है एसएसएच कनेक्शन। एक बड़ा अंतर यह है कि SFTP के उपयोगकर्ताओं के पास एक होना चाहिए खोल सिस्टम पर खाता, के बजाय a नोलोगिन सीप। सभी उपयोगकर्ताओं को शेल प्रदान करना कुछ परिवेशों के लिए आदर्श नहीं हो सकता है, जैसे कि साझा वेब होस्ट। हालांकि, ऐसे खातों को केवल SFTP तक सीमित रखना और शेल इंटरैक्शन को अक्षम करना संभव है। अधिक के लिए ओपनएसएसएच-सर्वर पर अनुभाग देखें।
कॉन्फिगर करना FTPS, संपादित करें /etc/vsftpd.conf और सबसे नीचे जोड़ें:
ssl_enable=हाँ
इसके अलावा, प्रमाणपत्र और प्रमुख संबंधित विकल्पों पर ध्यान दें:
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
डिफ़ॉल्ट रूप से ये विकल्प ssl-cert पैकेज द्वारा प्रदान किए गए प्रमाणपत्र और कुंजी पर सेट होते हैं। एक उत्पादन वातावरण में इन्हें विशिष्ट होस्ट के लिए उत्पन्न प्रमाणपत्र और कुंजी के साथ प्रतिस्थापित किया जाना चाहिए। प्रमाणपत्रों के बारे में अधिक जानकारी के लिए खंड 5, “प्रमाणपत्र” [p. 198].
अब vsftpd को पुनरारंभ करें, और गैर-अनाम उपयोगकर्ता उपयोग करने के लिए मजबूर होंगे FTPS:
sudo systemctl पुनरारंभ vsftpd.service
के शेल वाले उपयोगकर्ताओं को अनुमति देने के लिए /usr/sbin/nologin एफ़टीपी तक पहुंच, लेकिन कोई शेल एक्सेस नहीं है, संपादित करें / आदि / गोले
जोड़ रहा है नोलोगिन खोल:
# / आदि / गोले: वैध लॉगिन शेल
/बिन/सीएसएच
/ बिन / श
/usr/बिन/es
/usr/bin/ksh
/बिन/क्षु
/usr/बिन/आरसी
/usr/बिन/टीसीएसएच
/ Bin / tcsh
/usr/बिन/ईश
/बिन/डैश
/ बिन / बैश
/बिन/रबाश
/usr/बिन/स्क्रीन
/usr/sbin/nologin
यह आवश्यक है क्योंकि, डिफ़ॉल्ट रूप से vsftpd प्रमाणीकरण के लिए PAM का उपयोग करता है, और /etc/pam.d/vsftpd
कॉन्फ़िगरेशन फ़ाइल में शामिल हैं:
प्रमाणीकरण आवश्यक pam_shells.so
RSI गोले PAM मॉड्यूल में सूचीबद्ध गोले तक पहुंच को प्रतिबंधित करता है / आदि / गोले फ़ाइल.
सबसे लोकप्रिय FTP क्लाइंट को FTPS का उपयोग करके कनेक्ट करने के लिए कॉन्फ़िगर किया जा सकता है। Lftp कमांड लाइन FTP क्लाइंट के पास FTPS का भी उपयोग करने की क्षमता है।