उबुन्टु सर्भरमा फायरवाल कसरी सेट अप गर्ने
प्रकाशित: २०२५ फेब्रुअरी १५: २१:३९:४३ UTC
यस लेखले UFW प्रयोग गरेर GNU/Linux मा फायरवाल कसरी सेटअप गर्ने भन्ने बारे व्याख्या गर्दछ र केही उदाहरणहरू प्रदान गर्दछ, जुन Uncomplicated FireWall को लागि छोटो छ - र नाम उपयुक्त छ, यो वास्तवमै तपाईंलाई आवश्यक भन्दा बढी पोर्टहरू खुला छैनन् भनेर सुनिश्चित गर्ने एक धेरै सजिलो तरिका हो।
How to Set Up a Firewall on Ubuntu Server
यस पोस्टमा भएको जानकारी Ubuntu Server 14.04 x64 मा आधारित छ। यो अन्य संस्करणहरूको लागि मान्य हुन सक्छ वा नहुन सक्छ। (अपडेट: म पुष्टि गर्न सक्छु कि यस पोस्टमा भएको जानकारी मूल रूपमा Ubuntu Server 24.04 को रूपमा अझै पनि मान्य र कार्यात्मक छ, यद्यपि मध्यवर्ती १० वर्षमा, ufw ले सामान्य सर्भर अनुप्रयोगहरूको लागि प्रोफाइलहरू राखेर केही हदसम्म "स्मार्ट" भएको छ (उदाहरणका लागि, तपाईंले पोर्ट 80 र 443 लाई छुट्टाछुट्टै "Nginx full" सक्षम गर्न सक्नुहुन्छ) र नयाँ नियमहरू लागू गर्न सम्पूर्ण फायरवाललाई असक्षम/सक्षम गर्न अब आवश्यक छैन)
जब मैले पहिलो पटक GNU/Linux (Ubuntu) सर्भरहरूसँग सुरु गरें, फायरवाल सेटअप गर्दा iptables को लागि सम्भावित जटिल कन्फिगरेसन फाइल म्यानुअल रूपमा सिर्जना र मर्मत गर्नु समावेश थियो। यद्यपि, मैले हालसालै ufw पत्ता लगाएको छु, जुन Uncomplicated Firewall को लागि छोटो छ - र यो वास्तवमै :-)
मेरो Ubuntu Server 14.04 को स्थापनामा पहिले नै ufw स्थापना गरिएको थियो, तर यदि तपाईंको स्थापना गरिएको छैन भने, यसलाई भण्डारहरूबाट स्थापना गर्नुहोस्:
UFW वास्तवमा एउटा उपकरण मात्र हो जसले iptables कन्फिगरेसनलाई सरल बनाउँछ - पर्दा पछाडि, यो अझै पनि iptables र Linux कर्नेल फायरवाल हो जसले फिल्टरिङ गर्छ, त्यसैले ufw न त यी भन्दा कम छ न त बढी सुरक्षित छ। यद्यपि, ufw ले फायरवाललाई सही रूपमा कन्फिगर गर्न धेरै सजिलो बनाउने भएकोले, यसले मानव त्रुटिको जोखिम कम गर्न सक्छ र त्यसैले अनुभवहीन प्रशासकहरूको लागि सम्भवतः बढी सुरक्षित छ।
यदि तपाईंको सर्भर IPv6 साथै IPv4 सँग कन्फिगर गरिएको छ भने, यो UFW को लागि पनि सक्षम छ भनी सुनिश्चित गर्नुहोस्। /etc/default/ufw फाइल सम्पादन गर्नुहोस् र IPV6=yes भन्ने लाइन खोज्नुहोस्। मेरो स्थापनामा यो पहिले नै त्यहाँ थियो, तर यदि यो छैन वा यदि यसले होइन भन्छ भने, तपाईंले यसलाई सम्पादन गर्नुपर्छ।
त्यसपछि तपाईंले खोल्न चाहनुभएको पोर्टहरू सक्षम गर्न कमाण्ड प्रम्प्ट प्रयोग गर्नुहोस्। यदि तपाईं ssh मार्फत आफ्नो सर्भरमा जडान हुनुहुन्छ भने, त्यसलाई पनि अनुमति दिनुहोस् नत्र यसले तपाईंको जडानमा बाधा पुर्याउन सक्छ र सम्भवतः तपाईंले यसलाई सक्रिय गर्दा तपाईंको सर्भरबाट लक आउट गर्न सक्छ - तपाईंसँग सर्भरमा भौतिक पहुँच छ वा छैन भन्ने कुरामा निर्भर गर्दै, यो अलि असुविधाजनक हुन सक्छ ;-)
उदाहरणका लागि, यदि तपाईंले मानक पोर्ट २२ मा ssh प्रयोग गर्नुहुन्छ र तपाईंले अनइन्क्रिप्टेड (पोर्ट ८० मा HTTP) र इन्क्रिप्टेड (पोर्ट ४४३ मा HTTPS) जडानहरूलाई समर्थन गर्ने वेब सर्भर कन्फिगर गर्दै हुनुहुन्छ भने, तपाईंले ufw कन्फिगर गर्न निम्न आदेशहरू जारी गर्नुहुनेछ:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
यदि तपाईंलाई थप नियमहरू चाहिन्छ भने, माथि उल्लेख गरिए जस्तै थप्नुहोस्।
यदि तपाईंसँग स्थिर IP ठेगाना छ र केवल एक स्थानबाट ssh मार्फत जडान गर्न सक्षम हुन आवश्यक छ भने, तपाईं ssh जडानहरूलाई एकल मूल ठेगानामा पनि प्रतिबन्धित गर्न सक्नुहुन्छ जस्तै:
अवश्य पनि, यसको सट्टामा आफ्नै IP ठेगाना प्रविष्ट गर्नुहोस्।
काम सकिएपछि, निम्न प्रविष्ट गरेर ufw सक्षम गर्नुहोस्:
अनि तपाईंको काम सकियो! फायरवाल चलिरहेको छ र तपाईंले आफ्नो सर्भर रिबुट गर्दा स्वतः सुरु हुनेछ :-)
यदि तपाईंले ufw कन्फिगरेसनमा परिवर्तनहरू गर्नुभयो भने, तिनीहरूलाई प्रभावकारी बनाउनको लागि तपाईंले यसलाई असक्षम र पुन: सक्षम गर्नुपर्ने हुन सक्छ, जस्तै:
sudo ufw enable
हालको कन्फिगरेसन हेर्नको लागि, केवल प्रविष्ट गर्नुहोस्:
यदि ufw सक्षम पारिएको छैन भने, यसले केवल "निष्क्रिय" सन्देश देखाउनेछ, अन्यथा यसले हाल परिभाषित नियमहरू सूचीबद्ध गर्नेछ।