क्लाउड स्टोरेज आपकी फ़ाइलों को सुरक्षित रखने और आपके कंप्यूटर के खो जाने या क्षतिग्रस्त होने का एक शानदार तरीका है। यह आपको सड़क पर या काम से आपकी फ़ाइलों तक पहुँचने में मदद कर सकता है, और आपको अपने उपकरणों में सब कुछ समकालिक रखने में मदद करता है।
हालांकि, क्लाउड स्टोरेज एक बड़ी कमी के साथ आता है। आपको अपनी सभी व्यक्तिगत फ़ाइलों के साथ किसी कंपनी पर भरोसा करना होगा। हैक होने पर क्या होता है? क्या वे वास्तव में सभी विश्वसनीय हैं, या वे आपकी चीजों से गुजर रहे हैं जब आप नहीं देख रहे हैं? यह सुनिश्चित करने के लिए वास्तव में संभव नहीं है।
एक और विकल्प है। आप Nextcloud के साथ अपने स्वयं के क्लाउड स्टोरेज को होस्ट कर सकते हैं। Nextcloud एक ओपन सोर्स क्लाउड स्टोरेज सॉल्यूशन है जिससे आप अपनी क्लाउड स्टोरेज कंपनी बन सकते हैं। इसका उपयोग करना आसान है और आपके सभी उपकरणों के लिए इंटरफ़ेस और साथ में सफाई करना आसान है, इसलिए आप कुछ हैक किए गए जंक के साथ काम नहीं कर रहे हैं।
यह मार्गदर्शिका नेक्स्टक्लाउड को VPS (वर्चुअल प्राइवेट सर्वर) पर होस्ट करने पर ध्यान केंद्रित करने वाली है, लेकिन आप इसे स्थानीय रूप से अपने होम नेटवर्क पर भी चला सकते हैं। जब तक आप पोर्ट फ़ॉरवर्डिंग सेट नहीं करते या वीपीएन चला रहे होते हैं, तब तक इसे बाहर से एक्सेस करने की अपेक्षा न करें। कुछ चरण थोड़े अलग होंगे, और आपको डोमेन नाम खरीदने या एसएसएल प्रमाणपत्र सेट करने की आवश्यकता नहीं होगी।
एक मेजबान चुनें
त्वरित सम्पक
- एक मेजबान चुनें
- आपको क्या चाहिए स्थापित करें
- अपना फ़ायरवॉल सेट करें
- SSH कॉन्फ़िगर करें
- SSH कीज़
- खिड़कियाँ
- मैक और लिनक्स
- रूट और पासवर्ड को अस्वीकार करें
- SSH कीज़
- अपने डेटाबेस को कॉन्फ़िगर करें
- PHP को कॉन्फ़िगर करें
- Nextcloud प्राप्त करें
- SSL प्रमाणपत्र बनाएं
- Nginx कॉन्फ़िगर करें
- नेक्स्टक्लाउड शुरू करें
यह मानते हुए कि आप एक सच्चे क्लाउड समाधान के साथ जा रहे हैं और चाहते हैं कि आपकी फ़ाइलें वेब पर पहुँच योग्य हों, आपको नेक्स्टक्लब को होस्ट करने के लिए एक VPS सेट करने की आवश्यकता है। वहाँ कुछ बेहतरीन विकल्प हैं, इसलिए जो आपके लिए सबसे अच्छा लगता है उसे चुनें। यदि आपके पास पहले से ही कोई मेजबान नहीं है, तो लिनोड, डिजिटलऑन और गांडी को देखें।
यह गाइड सर्वर ऑपरेटिंग सिस्टम के रूप में डेबियन 9 "स्ट्रेच" का उपयोग करने जा रहा है। डेबियन सुपर स्थिर है और डिफ़ॉल्ट रूप से काफी सुरक्षित है। यह भी सबसे होस्टिंग प्लेटफार्मों द्वारा समर्थित है। यदि आप उबंटू के साथ अधिक सहज हैं, तो इसका अधिकांश हिस्सा सीधे वहां भी लागू होगा, क्योंकि उबंटू डेबियन पर आधारित है।
आपको अपने सर्वर के लिए एक डोमेन नाम प्राप्त करने की भी आवश्यकता है। चूंकि यह एक सार्वजनिक साइट नहीं है, आप वास्तव में इसे अपनी पसंद के अनुसार बना सकते हैं। डोमेन नाम खरीदने और लिंक करने की प्रक्रिया प्रत्येक होस्ट और डोमेन नाम प्रदाता के लिए अलग-अलग होती है, इसलिए सेवाओं द्वारा चुने गए दस्तावेज़ों की जांच करना सुनिश्चित करें।
यहाँ सब कुछ लिनक्स कमांड लाइन से दूरस्थ रूप से संभाला जा रहा है। इसलिए, यदि आप मैक या लिनक्स पर हैं, तो आप बस एक टर्मिनल खोल सकते हैं और अपने वीपीएस तक पहुंचने के लिए एसएसएच का उपयोग कर सकते हैं। यदि आप विंडोज पर हैं, तो PuTTY जैसे SSH क्लाइंट को पकड़ो।
आपको क्या चाहिए स्थापित करें
इस पहेली के कई टुकड़े हैं। हो सकता है कि आप इन सभी को अब हड़प लें, इसलिए आपके पास यहां से आगे बढ़ने की आवश्यकता है। डेबियन के पास आमतौर पर सुडोल डिफ़ॉल्ट रूप से स्थापित नहीं होते हैं, इसलिए पहले इसे पकड़ो, और इसे सेट करें।
$ su -c 'apt install sudo'
अपना रूट पासवर्ड डालें और सूडो इंस्टॉल हो जाएगा। उसके बाद, आपको अपने उपयोगकर्ता को sudo समूह में जोड़ने की आवश्यकता है।
$ su -c 'gpasswd -a उपयोगकर्ता नाम sudo'
अब, आप sudo का उपयोग कर सकते हैं। अगर यह तुरंत काम नहीं करता है, तो आपको फिर से लॉग इन करना पड़ सकता है। इस बिंदु से आगे, आप इसके बजाय sudo का उपयोग करेंगे, खासकर जब से आप सुरक्षा उद्देश्यों के लिए रूट लॉगिन को अक्षम करने जा रहे हैं।
अब, डेबियन के रिपॉजिटरी से सब कुछ पकड़ो।
$ sudo apt स्थापित ufw mariadb-server nginx certbot php php-mysql php-fpm php-cli php-json php-curl php-imap php-gd php-xml php-zml php-zl php-intl php-mcrypt php-कल्पना
अपना फ़ायरवॉल सेट करें
आपका सर्वर इंटरनेट पर है। इसके आसपास कोई रास्ता नहीं है, और इसका मतलब है कि आपको हमलावरों से निपटने की आवश्यकता है। एक साधारण फ़ायरवॉल स्थापित करने से कई संभावित खतरों को रोकने में मदद मिलेगी।
सीधे iptables का उपयोग करने के बजाय, आप अपने सिस्टम को सुरक्षित करने के लिए UFW (Uncomplicated Firewall) का उपयोग कर सकते हैं। इसमें सरल सिंटैक्स है, और इसके साथ काम करना बहुत आसान है।
फ़ायरवॉल में सब कुछ अक्षम करके प्रारंभ करें। यह सभी सेवाओं और बंदरगाहों से कनेक्शन को अस्वीकार करने के लिए डिफ़ॉल्ट नीति निर्धारित करेगा, यह सुनिश्चित करेगा कि हमलावर कुछ भूल गए पोर्ट पर कनेक्ट नहीं कर सकते हैं।
$ sudo ufw डिफ़ॉल्ट इंकार आने वाली
$ sudo ufw डिफ़ॉल्ट इनकार निवर्तमान $ sudo ufw डिफ़ॉल्ट इनकार आगे
इसके बाद, आप ufw सेवाओं को बता सकते हैं कि आप इसे अनुमति देना चाहते हैं। इस मामले में, आपको केवल SSH और वेब एक्सेस की आवश्यकता है। आप NTP और DNS को भी सक्षम करना चाहते हैं ताकि आपका सर्वर अपडेट प्राप्त कर सके और उसकी घड़ी सेट कर सके।
$ sudo ufw ssh में $ sudo ufw की अनुमति दें, ssh $ sudo ufw की अनुमति दें http $ sudo ufw की अनुमति दें http $ sudo ufw की अनुमति दें https $ sudo ufw की अनुमति दें https: sudo ufw ntp में अनुमति दें $ sudo ufw की अनुमति दें ntp $ sudo की अनुमति दें 53 $ सूद में ufw की अनुमति
अब आप अपना फ़ायरवॉल शुरू कर सकते हैं। यह आपको SSH को बाधित करने के बारे में चेतावनी देगा, लेकिन आपने पहले ही SSH को अनुमति दे दी है, इसलिए आप ठीक रहेंगे।
SSH कॉन्फ़िगर करें
SSH लिनक्स सर्वर पर सबसे अधिक बार हमला सेवाओं में से एक है। यह सर्वर पर सब कुछ के लिए प्रवेश द्वार है, और यह आमतौर पर केवल एक पासवर्ड द्वारा संरक्षित है। इसलिए यह सुनिश्चित करना महत्वपूर्ण है कि आपका सर्वर SSH पर हमलावरों के लिए आसानी से उपलब्ध न हो।
SSH कीज़
सबसे पहले, आपको एक पासवर्ड, एक SSH कुंजी के लिए अधिक सुरक्षित विकल्प सेट करने की आवश्यकता है। मैक और लिनक्स की तुलना में विंडोज पर प्रक्रिया अलग है, इसलिए अपने डेस्कटॉप को फिट करने वाले निर्देशों का पालन करें।
खिड़कियाँ
जैसा कि विंडोज तरीका है, आपको इस सरल कार्य को पूरा करने के लिए एक और कार्यक्रम की आवश्यकता है। PuTTYgen, PuTTY के लिए एक RSA प्रमुख जनरेटर है। यह PuTTY डाउनलोड पेज से उपलब्ध है। इसे डाउनलोड करें, और इसे चलाएं।
खुलने वाली विंडो में, अपनी कुंजी को नाम दें और इसके लिए एक पासवर्ड बनाएं। यह वह पासवर्ड है जिसका उपयोग आप अपने सर्वर में लॉग इन करने के लिए करेंगे। तल पर, SSH-2 RSA का चयन करें और कम से कम 2048 बिट्स का एक महत्वपूर्ण आकार सेट करें। 4096 बेहतर है, लेकिन 2048 थोड़ा तेज होगा। फिर, अपनी कुंजियाँ बनाएँ, और सार्वजनिक और निजी दोनों कुंजियाँ सहेजें। अंत में, विंडो के शीर्ष पर प्रदर्शित होने वाली सार्वजनिक कुंजी को कॉपी करें।
अपने सर्वर से कनेक्ट करने के लिए PuTTY का उपयोग करें। ~ / .Ssh / अधिकृत_की पर एक फ़ाइल खोलें और अपनी कुंजी पेस्ट करें।
PuTTY में वापस, SSH को साइड मेनू पर खोजें। फिर, "प्रामाणिक" खोलें। पेप्ट कुंजी के लिए क्षेत्र में, उस निजी कुंजी के स्थान पर ब्राउज़ करें जिसे आपने अभी बचाया था। जब PuTTY में सब कुछ आपके सर्वर के लिए सेट है, तो सत्र को बचाएं। आगे बढ़ने से पहले यह सुनिश्चित कर लें कि आप अपनी कुंजी से जुड़ रहे हैं।
मैक और लिनक्स
मैक और लिनक्स उपयोगकर्ताओं के लिए यहां बहुत आसान सड़क है। SSH कुंजी जनरेट करके प्रारंभ करें, यदि आपके पास पहले से कोई नहीं है। आपके पास कुंजी के लिए एक पासवर्ड बनाने का विकल्प है। यह वैकल्पिक है, इसलिए यह आपकी कॉल है।
$ ssh-keygen -b 4096 -t rsa
अब, बस अपनी कुंजी को अपने सर्वर पर भेजें। अपने यूज़रनेम और सर्वर के आईपी को बदलें।
$ ssh-copy-id -i ~ / .ssh / id_rsa.pub
बस!
रूट और पासवर्ड को अस्वीकार करें
आपके द्वारा अपनी कुंजी सेट करने के बाद, आप SSH के लिए पासवर्ड अक्षम कर सकते हैं। यदि आप पासवर्ड के साथ कुंजी सेट करते हैं, तो चिंता न करें। यह कुछ अलग है, और यह बिल्कुल भी प्रभावित नहीं करेगा। / Etc / ssh / sshd_config पर SSH कॉन्फ़िगरेशन फ़ाइल खोलें।
$ सुडो नैनो / आदि / ssh / sshd_config
वह लाइन ढूंढें जो पढ़ता है:
#PermitRootLogin निषेध-पासवर्ड
इसे इसमें बदलें:
PermitRootLogin नहीं
इसके बाद, दो पंक्तियों को खोजें:
#PasswordAuthentication हाँ #PermitEmptyPasswords no
उन्हें इसमें बदलें:
PasswordAuthentication no PermitEmptyPasswords no
अंत में, खोजें:
UsePAM हाँ
इसे बनाओ:
UsePAM सं
अपनी फ़ाइल को सेव करें और इसे बंद करें। फिर, SSH को पुनरारंभ करें। यह आपको बंद कर सकता है, इसलिए यदि ऐसा होता है तो फिर से कनेक्ट करें।
$ sudo systemctl पुनरारंभ sshd
अपने डेटाबेस को कॉन्फ़िगर करें
अगली चीज़ जो आपको करने की आवश्यकता है वह है आपका डेटाबेस कॉन्फ़िगर करना। यहाँ वास्तव में बहुत कुछ शामिल नहीं है, इसलिए बहुत चिंता न करें। आपको बस एक्सेस करने के लिए नेक्क्लाउड के लिए एक उपयोगकर्ता और खाली डेटाबेस सेट करना होगा।
मारियाबीडी को आपके लिए सुरक्षित और सुरक्षित करने के लिए वास्तव में एक सुविधाजनक स्क्रिप्ट है। इसे पहले चलाएं।
$ sudo mysql_secure_installation
डिफ़ॉल्ट रूट पासवर्ड खाली है, इसलिए यह पूछे जाने पर "दर्ज करें"। यह तब आपसे रूट पासवर्ड सेट करने के लिए कहेगा। वो करें। प्रत्येक प्रश्न का उत्तर "हाँ" है।
आप अपने डेटाबेस में रूट पासवर्ड के साथ लॉग इन कर सकते हैं जिसे आपने अभी सेट किया है।
$ सुदो मायस्कल -उ जड़ -प
प्रांप्ट मारियाबेड एक में बदल जाएगा। यह आपके डेटाबेस सर्वर को प्रबंधित करने के लिए कंसोल है। एक नया डेटाबेस बनाकर शुरू करें। यहां पूंजीकरण मायने रखता है।
अगली तिथि बनाएँ;
इसके बाद, उस डेटाबेस के लिए एक उपयोगकर्ता बनाएं।
निर्माता "अगलीक्लाउड" @ `लोकलहोस्ट` को" पासवर्डफॉरयूजर "द्वारा पहचानें;
फिर, उस उपयोगकर्ता को डेटाबेस का उपयोग करने की अनुमति दें।
अगलेक्लाउड पर सभी प्राप्त करें।
बस! अब आप डेटाबेस सर्वर से बाहर निकल सकते हैं।
PHP को कॉन्फ़िगर करें
Nextcloud PHP में लिखा है। आपने पहले से ही डेबियन स्ट्रेच पर उपलब्ध PHP के नवीनतम संस्करण को PHP एक्सटेंशन के साथ स्थापित किया है, जिसे नेक्क्लाउड को सही कार्य करने की आवश्यकता है। Nginx के साथ और अधिक आसानी से काम करने के लिए आपको अपने PHP कॉन्फ़िगरेशन में दो जोड़े बनाने की आवश्यकता है।
यह वास्तव में बस कुछ बुनियादी सुरक्षा tweaks की जरूरत है। ये कुछ भी प्रमुख नहीं हैं, लेकिन ये आपके सर्वर की सुरक्षा को बेहतर बनाने में मदद करेंगे।
Sudo और अपने पसंदीदा पाठ संपादक के साथ /etc/php/7.0/fpm/php.ini खोलें।
फ़ाइल बड़े पैमाने पर है, इसलिए चारों ओर नेविगेट करने के लिए अपने संपादक के खोज फ़ंक्शन का उपयोग करें। यदि आप नैनो का उपयोग कर रहे हैं, तो यह Ctrl + W है। मुट्ठी विकल्प जो आपको खोजने की आवश्यकता है वह अक्षम है_क्रियाएँ। अंत में phpinfo, सिस्टम, मेल, एक्ज़िक्यूट जोड़ें।
फिर, sql.safe_mode ढूंढें और इसे चालू करें। इसके बाद, allow_url_fopen को सेट करें। फ़ाइल के अंत में, निम्न पंक्ति जोड़ें, सहेजें और इसे बंद करें।
Nextcloud प्राप्त करें
Nextcloud अभी तक डेबियन के लिए एक पैकेज के रूप में उपलब्ध नहीं है, और यह ठीक है। तुम सच में यह होने की जरूरत नहीं है यह वर्डप्रेस की तरह अन्य पूर्व-निर्मित PHP वेब अनुप्रयोगों की तरह है, और यह एक संपीड़ित संग्रह में आता है जिसे आप नेक्स्टक्लाइन स्थापित करना चाहते हैं।
अभी के रूप में, नवीनतम स्थिर रिलीज़ नेक्क्लाउड है, जब आप इसे पढ़ रहे हैं तो आपके लिए नवीनतम संस्करण क्या है, इसकी दोबारा जाँच करें। गाइड 12 को संदर्भित करेगा, लेकिन जो भी नवीनतम स्थिर है, उसका उपयोग करें।
एक निर्देशिका में बदलें जहाँ आप अपने Nextcloud संग्रह को डाउनलोड करना चाहते हैं। फिर, इसे निकालने के लिए / var / www में बदलें।
$ cd ~ / डाउनलोड $ wget https://download.nextcloud.com/server/releases/nextcloud-12.0.3.tar.bz2 $ cd / var / www $ sudo tar xjpf ~ / डाउनलोड / अगलाक्लाउड -12.0.3। tar.bz2
यदि आप इसे भविष्य में पढ़ रहे हैं, तो आप नेक्स्टक्ड के सर्वर इंस्टॉल पेज पर डाउनलोड लिंक पा सकते हैं।
अंत में, अपने Nextcloud इंस्टॉलेशन के स्वामित्व को www-डेटा में बदलें।
$ sudo chown -R www-data: www-data / var / www / nextcloud
SSL प्रमाणपत्र बनाएं
अपने SSL सर्टिफिकेट बनाना सर्टिफिकेट के लिए बहुत आसान है। आपके लिए सर्बोट स्वचालित रूप से आपके एसएसएल सेरेक्ट उत्पन्न करेगा और आप उन्हें जिस भी साइट के लिए बना रहे हैं, उसके वेब रूट में रखें। आपको केवल एक ही कमांड चलाने की आवश्यकता है।
$ sudo सर्टिफिकेट सर्टिफिकेटली
चूंकि यह आपका पहली बार सर्टिफिकेट चल रहा है, इसलिए यह एक ईमेल पता पूछेगा। यह उस पते का उपयोग करेगा जब आप अपने चेहरों को समाप्त करने वाले हैं। आप उन्हें आसानी से एकल कमांड के साथ भी नवीनीकृत कर सकते हैं।
Nginx कॉन्फ़िगर करें
Nginx एक हल्का, अभी तक शक्तिशाली, वेब सर्वर है। यह उस इंटरफ़ेस की सेवा करने जा रहा है, जिसका उपयोग आप नेक्क्लाउड तक पहुँचने में करते हैं। Nginx के साथ जुड़े कुछ विन्यास फाइल हैं। पहले वाला मुख्य विन्यास /etc/nginx/nginx.conf पर स्थित है। यह मुख्य विन्यास फ़ाइल है, लेकिन इसमें ठोस चूक हैं। आप इसके साथ खेल सकते हैं यदि आप जानते हैं कि आप क्या कर रहे हैं, लेकिन आप इसे अकेले छोड़ सकते हैं और ठीक भी हो सकते हैं।
अगला कॉन्फ़िगरेशन बहुत लंबा और अधिक जटिल है। शुक्र है, आपको यह सब लिखने की जरूरत नहीं है। नेक्क्लाउड देवों ने पहले ही कर दिया था। आपको बस इसे संशोधित करने की आवश्यकता है। Config फ़ाइल Nextcloud की साइट पर स्थित है। Nginx के webroot के लिए एक को पकड़ो। / Etc / nginx / sites-available / nextcloud पर एक नई फ़ाइल बनाएं और उसमें पेस्ट करें।
आपके पास फ़ाइल होने के बाद, आपको कुछ सरल परिवर्तन करने होंगे। सबसे पहले, अपस्ट्रीम ब्लॉक को ढूंढें और इसे इस तरह देखें:
अपस्ट्रीम php- हैंडलर {सर्वर यूनिक्स: /run/php/php7.0-fpm.sock; }
फिर, Cloud.example.com को कहीं भी खोजने के लिए इसे अपने डोमेन नाम में बदल दें।
आखिरी चीज़ जो आपको करने की ज़रूरत है वह है अपने नाइनटैक्स अंक को Nginx। लाइनों को बदलें:
ssl_certificate /etc/ssl/nginx/cloud.example.com.crt; ssl_certificate_key /etc/ssl/nginx/cloud.example.com.key;
सेवा:
ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem;
बस! अगला, आपको इसे लिंक करने की आवश्यकता है ताकि निग्नेक्स इसे पा सके।
$ cd / etc / nginx / साइट्स-सक्षम $ sudo ln -s / etc / nginx / sites-available / nextcoud nextcloud
वहां मौजूद डिफ़ॉल्ट को हटा दें।
$ सूदो आरएम डिफ़ॉल्ट
PHP और Nginx को पुनरारंभ करें, और आप Nextcloud का उपयोग करने में सक्षम होंगे!
$ sudo systemctl पुनरारंभ php7.0-fpm $ sudo systemctl पुनरारंभ nginx
नेक्स्टक्लाउड शुरू करें
अपना वेब ब्राउज़र खोलें और अपने डोमेन नाम पर नेविगेट करें। आपको Nextcloud सेटअप स्क्रीन के साथ स्वागत किया जाएगा। अपने आप को एक व्यवस्थापक खाता बनाएं और आपके द्वारा बनाए गए डेटाबेस खाते की जानकारी दर्ज करें।
Nextcloud को खुद को कॉन्फ़िगर करने और इंस्टॉल करने में कई मिनट लगेंगे। जब यह पूरा हो जाएगा, तो आपको अपने नए नेक्स्टक्ड डैशबोर्ड में छोड़ दिया जाएगा। वहां से, आप अपने नए क्लाउड स्टोरेज पर भरोसा करने वाले लोगों को अनुमति देने के लिए नए उपयोगकर्ता बना सकते हैं। आप तुरंत फाइलें अपलोड करना भी शुरू कर सकते हैं।
बस! अब आपके पास अपना निजी क्लाउड है!
