दो डिवाइस के बीच फाइल सिंक करने की बात आती है तो समाधान की निश्चित रूप से कोई कमी नहीं है। जबकि Google Drive और Microsoft OneDrive आपको आधिकारिक लिनक्स क्लाइंट नहीं दे सकते, NextCloud और अन्य देते हैं। लेकिन शायद आप किसी बड़ी कॉर्पोरेशन पर अपनी फाइलें स्टोर करने के लिए भरोसा नहीं करते। या, शायद, आप NextCloud द्वारा प्रदान की जाने वाली सुरक्षा से अधिक सुरक्षा चाहते हैं। NextCloud जैसी चीज़ बनाने में जाने वाले सभी घटकों के साथ, संभावना है कि इसमें सरल समाधानों की तुलना में अधिक अनदेखे सुरक्षा छेद हैं।
SSHFS का उपयोग क्यों करें?
एंड-यूज़र के दृष्टिकोण से, यह उपयोग करने में बहुत आसान, साफ और सरल है। यह अविश्वसनीय रूप से सुरक्षित भी है क्योंकि यह युद्ध-कठोर और सिद्ध OpenSSH सर्वर पर निर्भर करता है। एन्क्रिप्शन भी शीर्ष स्तर का है, इसलिए आप निश्चिंत हो सकते हैं कि कोई भी आपकी फाइलें चुरा नहीं सकता जब वे ट्रांजिट में हों। एक सही ढंग से कॉन्फिगर किया गया अप-टू-डेट सर्वर जो केवल SSH कनेक्शन के लिए सुनता है, आमतौर पर सभी को छोड़कर सबसे कुशल हमलावरों (NSA, सुरक्षा विशेषज्ञ, आदि) के लिए क्रैक करना असंभव है। और वे शायद आपकी फाइलें नहीं चाहते।
आप SSHFS का उपयोग क्यों नहीं करना चाहेंगे
यदि आप सर्वोत्तम संभव ट्रांसफर स्पीड चाहते हैं, तो आप NFS जैसे अन्य समाधानों का उपयोग करना चाह सकते हैं। SSHFS सबसे धीमा नहीं है यदि आपका इंटरनेट कनेक्शन उच्च गुणवत्ता का है, लेकिन यह सबसे तेज़ भी नहीं है। और यदि आप सैकड़ों छोटी फाइलों वाली डायरेक्टरी ट्रांसफर करना चाहते हैं, तो यह भयानक हो जाता है। साथ ही, यदि आप व्यक्तिगत उपयोगकर्ताओं या अन्य कारकों के आधार पर फाइल शेयरिंग सेटिंग्स को फाइन-ट्यून करना चाहते हैं, तो आप अन्य सॉफ्टवेयर का उपयोग करना चाह सकते हैं।
सारांश में, यदि आपको केवल एक रिमोट डायरेक्टरी को लोकल डायरेक्टरी के साथ सिंक्रनाइज़ करने का एक आसान, सुरक्षित तरीका चाहिए और आप बहुत जल्दी में नहीं हैं, तो आप शायद इस समाधान से संतुष्ट होंगे।
SSHFS इंस्टॉल करें
आर्च लिनक्स आधारित इंस्टॉलेशन पर, इस कमांड का उपयोग करें:
sudo pacman -S sshfs
यदि आप फेडोरा-आधारित डिस्ट्रो पर हैं, तो उपयोग करें:
sudo dnf install sshfs
डेबियन, उबंटू और परिवार पर, उपयोग करें:
sudo apt install sshfs
उन लोगों के लिए जो OpenSUSE का उपयोग करते हैं, यह कमांड दर्ज करें:
sudo zypper install sshfs
सर्वर कॉन्फिगरेशन
यदि आप एक सर्वर या VPS किराए पर लेते हैं, तो OpenSSH सर्वर डेमन पहले से कॉन्फिगर है। अपने क्लाउड सर्विस प्रोवाइडर द्वारा अनुशंसित चरणों का पालन करें एक नियमित उपयोगकर्ता (नॉन-रूट) कॉन्फिगर करने के लिए। कुछ आपको इसे सीधे उनके वेब कंट्रोल पैनल से करने देते हैं और यहां तक कि SSH एक्सेस की अनुमति देने के लिए पब्लिक की इम्पोर्ट करने देते हैं। इस मामले में, ssh-keygen कमांड के साथ स्थानीय रूप से की पेयर जनरेट करें। बाद में, "/home/your_username/.ssh/id_rsa.pub" से पब्लिक की इम्पोर्ट करें।
यदि क्लाउड प्रोवाइडर SSH पब्लिक की को आसानी से इम्पोर्ट करने के लिए टूल प्रदान नहीं करता है, तो इसे मैन्युअल रूप से करें। कम से कम, रूट लॉगिन की अनुमति न दें और पासवर्ड लॉगिन अक्षम करें। विशेष रूप से SSH कीज़ का उपयोग करें: उन्हें ब्रूट-फोर्स करना असंभव है, जैसा कि पासवर्ड के मामले में होता है।
यदि आप घर पर दो कंप्यूटर के बीच फाइल सिंक करना चाहते हैं, तो बस एक को सर्वर के रूप में मानें (openssh-server पैकेज इंस्टॉल करें और कॉन्फिगर करें) और दूसरे को क्लाइंट के रूप में। वही चरण लागू होते हैं।
SSHFS के साथ रिमोट डायरेक्टरी को स्थानीय रूप से माउंट करें
सबसे पहले, एक डायरेक्टरी बनाएं जिसे रिमोट साइड के साथ सिंक किया जाएगा।
mkdir $HOME/sshfs
अगला, SSHFS के माध्यम से रिमोट डायरेक्टरी को स्थानीय रूप से माउंट करें। "user" को अपने सर्वर पर बनाए गए वास्तविक यूज़रनेम से और "203.0.113.1" को अपने रिमोट इंस्टेंस के वास्तविक IP एड्रेस से बदलें।
sshfs user@203.0.113.1:/home/user $HOME/sshfs
बेशक, यदि आप सर्वर साइड पर यूज़र की पूरी होम डायरेक्टरी सिंक नहीं करना चाहते हैं, तो बस इसे बनाने के बाद "/home/user" को "/home/user/some_other_directory" से बदलें।
जब आप अनमाउंट करना चाहते हैं, तो इस कमांड का उपयोग करें:
cd && fusermount -u $HOME/sshfs
निष्कर्ष
यदि आप चाहते हैं कि एक डायरेक्टरी स्थायी रूप से रिमोट साइड से सिंक हो, तो अपने ऑटोस्टार्ट मैनेजर में sshfs user@203.0.113.1:/home/user $HOME/sshfs जैसी कमांड जोड़ें। प्रत्येक ग्राफिकल मैनेजर का एक अलग ऑटोस्टार्ट कॉन्फिगरेशन मैनेजर होता है, इसलिए अपने डेस्कटॉप एनवायरनमेंट हेल्प मैनुअल से परामर्श करें। कुछ स्रोत "/etc/fstab" में एक एंट्री जोड़ने की सलाह देते हैं, लेकिन हम आपको इससे बचने की सलाह देते हैं, क्योंकि डायरेक्टरी माउंट करने में विफलता के परिणामस्वरूप आपका सिस्टम पूरी तरह से बूट होने में विफल हो सकता है।
उम्मीद है यह आपकी सभी जरूरतों को पूरा करता है। लेकिन, यदि यह नहीं करता है, तो आप ऑनलाइन SSHFS मैनुअल में अधिक कमांड लाइन विकल्पों के बारे में पढ़ सकते हैं।