विंडोमैकसॉफ्टवेयरसेटिंग्ससुरक्षाउत्पादकतालिनक्सएंड्रॉइडप्रदर्शनकॉन्फ़िगरेशनएप्पल सभी

डिबियन पर Nginx के साथ वेब सर्वर कैसे सेट करें

संपादित 3 सप्ताह पहले द्वारा ExtremeHow संपादकीय टीम

डेबियनएनजिनएक्सवेब सर्वरवेब विकाससर्वर सेटअपलिनक्ससिस्टम प्रशासनओपन सोर्ससीएलआईआईटी

डिबियन पर Nginx के साथ वेब सर्वर कैसे सेट करें

अनुवाद अपडेट किया गया 3 सप्ताह पहले

Nginx एक व्यापक रूप से इस्तेमाल किया जाने वाला वेब सर्वर सॉफ़्टवेयर है जो उच्च प्रदर्शन, स्थिरता, कम संसाधन खपत और सरल विन्यास के लिए जाना जाता है। इस विस्तृत गाइड में, हम देखेंगे कि डिबियन ऑपरेटिंग सिस्टम पर Nginx के साथ एक वेब सर्वर कैसे सेट किया जाए। चरणों में जाने से पहले, यह समझना आवश्यक है कि Nginx क्या है और यह वेब सर्वर विन्यास के लिए फायदेमंद क्यों है।

Nginx को समझना

Nginx (उच्चारण "एनजन-एक्स") खुला स्रोत सॉफ़्टवेयर है जो वेब सेवा, रिवर्स प्रॉक्सिंग, कैचिंग, लोड बैलेंसिंग, मीडिया स्ट्रीमिंग, आदि के लिए है। यह C10k समस्या को संबोधित करने की परियोजना के रूप में शुरू किया गया था - दस हजार कनेक्शनों को एक साथ संभालने के लिए। आज, Nginx उच्च लोड को प्रबंधित करने की इसकी क्षमता और दक्षता के कारण लोकप्रिय है। यह HTTP, HTTPS, SMTP, POP3, और IMAP प्रोटोकॉल के लिए रिवर्स प्रॉक्सी सर्वर, एक लोड बैलेंसर और HTTP कैश के रूप में कार्य कर सकता है, और भी कई उपयोगों में इसका उपयोग होता है। ओपन-सोर्स होने के कारण, यह उपयोग करने के लिए मुफ्त है और इसे वैश्विक योगदानकर्ताओं द्वारा लगातार सुधार किया जा रहा है।

पूर्वापेक्षाएँ

शुरू करने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित चीजें हैं:

एक बार जब आपके पास ये पूर्वापेक्षाएँ पूरी हो जाएं, आप अपने डिबियन सर्वर पर Nginx स्थापित और कॉन्फ़िगर कर सकते हैं।

चरण 1: अपने सर्वर को अपडेट करें

पहला कदम यह सुनिश्चित करना है कि आपका सर्वर नवीनतम पैकेजों के साथ अद्यतित है। एक अद्यतन प्रणाली असंगतता समस्याओं को कम करती है और सुरक्षा को बढ़ाती है। अपने सर्वर को अपडेट करने के लिए निम्नलिखित कमांड का उपयोग करें:

sudo apt update sudo apt upgrade

apt update कमांड पैकेजों और उनके उपलब्ध संस्करणों की सूची को ताज़ा करता है। apt upgrade कमांड पुराने पैकेजों को नए संस्करणों के साथ अपडेट करता है।

चरण 2: Nginx स्थापित करें

डिबियन का APT पैकेज प्रबंधन उपकरण Nginx जैसे सॉफ़्टवेयर पैकेज स्थापित करना आसान बनाता है। Nginx को स्थापित करने के लिए निम्नलिखित कमांड को निष्पादित करें:

sudo apt install nginx

यह कमांड Nginx पैकेज और इसके निर्भरता को प्राप्त और स्थापित करेगा। एक बार स्थापना पूरी हो जाने पर, Nginx स्वचालित रूप से चलना शुरू हो जाएगा।

चरण 3: Nginx स्थापना का सत्यापन करें

Nginx स्थापित होने के बाद, इसकी स्थापना का सत्यापन करना और यह सुनिश्चित करना आवश्यक है कि यह सही ढंग से चल रहा है। Nginx की स्थिति की जांच के लिए निम्नलिखित कमांड का उपयोग करें:

sudo systemctl status nginx

अपेक्षित आउटपुट दिखाता है कि Nginx सक्रिय और चल रहा है। यदि आप Nginx सेवा को शुरू या बंद करना चाहते हैं, तो आप इसका उपयोग कर सकते हैं:

sudo systemctl start nginx sudo systemctl stop nginx

Nginx को एक्सेस करना

Nginx चल रहा है इसे सुनिश्चित करने के बाद, एक वेब ब्राउज़र खोलें और अपने सर्वर के IP पते की खोज करें। यदि आप अपने सर्वर का IP पता नहीं जानते हैं, तो आप इसे इस तरह से पता कर सकते हैं:

hostname -I

जब आप अपने सर्वर के IP पते को ब्राउज़र के एड्रेस बार में दर्ज करते हैं, तो आपको Nginx का डिफ़ॉल्ट स्वागत पृष्ठ देखना चाहिए। यह सत्यापित करता है कि Nginx वेब पेज को सही ढंग से प्रस्तुत कर रहा है।

चरण 4: फ़ायरवॉल कॉन्फ़िगर करना

डिबियन सिस्टम पर, UFW (अति सरल फायरवॉल) आमतौर पर फ़ायरवॉल प्रबंधन सॉफ़्टवेयर के रूप में उपयोग किया जाता है। यदि UFW आपके सर्वर पर चल रहा है, तो आपको अपने वेब सर्वर को सार्वजनिक रूप से एक्सेस करने के लिए HTTP ट्रैफिक की अनुमति देनी होगी। आप UFW की वर्तमान स्थिति की जांच इस प्रकार कर सकते हैं:

sudo ufw status

यदि UFW सक्रिय है, तो Nginx HTTP ट्रैफिक की अनुमति देने के लिए इस कमांड का उपयोग करें:

sudo ufw allow 'Nginx HTTP'

स्थिति को डबल-चेक करें ताकि यह सुनिश्चित किया जा सके कि संबंधित नियम लागू हो:

sudo ufw status

चरण 5: Nginx सेवा प्रबंधित करें

Nginx पृष्ठभूमि में एक सेवा के रूप में चलता है। आप इस सेवा को systemctl कमांड का उपयोग करके प्रबंधित कर सकते हैं। यहाँ Nginx प्रबंधन के लिए कुछ सहायक systemctl कमांड हैं:

चरण 6: Nginx कॉन्फ़िगरेशन को समझना

Nginx कॉन्फ़िगरेशन फ़ाइलें आमतौर पर /etc/nginx निर्देशिका में स्थित होती हैं। मुख्य कॉन्फ़िगरेशन फ़ाइल /etc/nginx/nginx.conf है, जो मोड्यूल प्रबंधन करने, उपयोगकर्ता अनुमति सेट करने, आदि के लिए निर्देश chứa करती है।

अक्सर, वर्चुअल होस्ट कॉन्फ़िगरेशन को अलग से /etc/nginx/sites-available निर्देशिका में प्रबंधित किया जाता है। इस निर्देशिका में व्यक्तिगत डोमेन के लिए कॉन्फ़िगरेशन फ़ाइलें होती हैं, जिन्हें /etc/nginx/sites-enabled से सिंबलिक लिंक किया जाता है ताकि उन्हें सक्रिय किया जा सके। आप /etc/nginx/snippets में रीयूज़ करने योग्य सेटिंग्स के लिए कॉन्फ़िगरेशन स्निपेट भी पा सकते हैं।

चरण 7: सर्वर ब्लॉक सेटअप करें

सर्वर ब्लॉक, वर्चुअल होस्टों के बराबर, एक ही सर्वर पर कई साइट्स चलाने की अनुमति देता है। सबसे पहले, /etc/nginx/sites-available/ में जाएं और एक नई कॉन्फ़िगरेशन फ़ाइल बनाएं:

sudo nano /etc/nginx/sites-available/example.com

निम्नलिखित कॉन्फ़िगरेशन फ़ाइल में "example.com" को अपने डोमेन नाम से बदलें:

server { listen 80; server_name example.com www.example.com; location / { proxy_pass http://127.0.0.1:8080; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } }

इस सेटअप के साथ, 'example.com' के लिए अनुरोधों को 127.0.0.1:8080 पर चल रहे एप्लिकेशन पर प्रॉक्सी किया जाएगा। उपयुक्त डिफ़ॉल्ट मानों का उपयोग करें या अपने आवश्यकतानुसार कॉन्फ़िगरेशन को समायोजित करें।

चरण 8: सर्वर ब्लॉक को सिंबलिक लिंक द्वारा सक्षम करें

site-enabled में अपनी कॉन्फ़िगरेशन फ़ाइल का एक सिंबलिक लिंक बनाएं:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

यह क्रिया आपके सर्वर ब्लॉक को सक्षम करती है। संभावित त्रुटियों का पता लगाने के लिए नई कॉन्फ़िगरेशन का परीक्षण करें:

sudo nginx -t

यदि कोई त्रुटियां नहीं हैं, तो परिवर्तनों को लागू करने के लिए Nginx को पुनरारंभ करें:

sudo systemctl restart nginx

चरण 9: एक सरल HTML वेबसाइट सेटअप करें

एक बुनियादी स्थिर HTML फ़ाइल बनाकर सेटअप का परीक्षण कर सकते हैं। एक नई निर्देशिका बनाएँ जो आपके वेब रूट के रूप में कार्य करेगी:

sudo mkdir -p /var/www/example.com/html

उपयुक्त अनुमतियाँ सेट करें:

sudo chown -R $USER:$USER /var/www/example.com/html

एक साधारण HTML फ़ाइल बनाएँ:

nano /var/www/example.com/html/index.html

index.html में निम्नलिखित सामग्री जोड़ें:

<!DOCTYPE html> <html> <head> <title>स्वागत है</title> </head> <body> <h1>example.com में आपका स्वागत है!</h1> </body> </html>

अपना वेबपेज देखने के लिए http://your_server_ip या http://example.com पर जाएं।

चरण 10: SSL/TLS के साथ सुरक्षा कार्यान्वित करना

अपने वेब सर्वर को सुरक्षित करने के लिए, साइट के लिए SSL/TLS प्रमाणपत्र लागू करना अनुशंसित है। मुफ्त SSL प्रमाणपत्र Let's Encrypt से प्राप्त किए जा सकते हैं, जो मुफ्त प्रमाणपत्रों के साथ स्वचालन समर्थन प्रदान करने वाली एक प्रमाणपत्र प्राधिकरण है।

SSL प्रमाणपत्र पुनः प्रप्ति और स्थापना के लिए Certbot उपयोगिता और Nginx प्लगइन इंस्टॉल करें:

sudo apt install certbot python3-certbot-nginx

इसके बाद, Certbot का उपयोग करके एक प्रमाणपत्र का अनुरोध करें:

sudo certbot --nginx

Certbot आवश्यक जानकारी, जैसे आपका डोमेन नाम और ईमेल पूछेगा। सफलतापूर्वक पूरा होने पर, Certbot स्वचालित रूप से Nginx को पुनःलोड़ करता है। सुरक्षित HTTPS कनेक्शन की पुष्टि करने के लिए https://example.com पर जाएं जिसे पैडलॉक आइकन द्वारा दर्शाया गया है।

SSL प्रमाणपत्र का स्वचालित पुनःनवीनीकरण

Certbot एक systemd जॉब सेट अप करता है जो SSL प्रमाणपत्र नवीनीकरण को स्वचालित रूप से हैंडल करता है। आप एक मैन्युअल नवीनीकरण जांच भी कर सकते हैं:

sudo certbot renew --dry-run

उन्नयन की जांच करें और सुनिश्चित करें कि यह किसी भी त्रुटि के बिना सफल है।

अंतिम विचार

एक बार Nginx कॉन्फ़िगर हो जाने के बाद, अब आप विभिन्न वेबसाइटों की मेजबानी और सेवा कर सकते हैं। सर्वर प्रदर्शन की निगरानी करें, लॉग प्रबंधित करें, और सुरक्षा और दक्षता बनाए रखने के लिए Nginx और सर्वर पैकेजों को अद्यतित रखें। Nginx वेब सर्वर वेब कार्यों और वास्तुकला की आवश्यकताओं के लिए एक शक्तिशाली उपकरण है।

निष्कर्ष

डिबियन पर Nginx के साथ एक वेब सर्वर सेट करना कॉन्फ़िगरेशन, सर्वर ब्लॉक जोड़ने और SSL के साथ सुरक्षा सुनिश्चित करने की मात्रा को शामिल करता है। Nginx स्थापना, कॉन्फ़िगरेशन, और प्रबंधन की मूल बातें समझना और अधिक जटिल अनुप्रयोगों और सेवा प्रस्तावों के लिए नींव रखता है। अब आपके पास एक चल रहा वेब सर्वर होना चाहिए जो उच्च दक्षता के साथ पृष्ठों या अनुप्रयोगों को सेवा देने के लिए तैयार है।

यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं


टिप्पणियाँ