एक सही ढंग से काम करने वाला फ़ायरवॉल संपूर्ण Linux सिस्टम सुरक्षा का सबसे महत्वपूर्ण हिस्सा है। डिफ़ॉल्ट रूप से, डेबियन और उबंटू वितरण एक फ़ायरवॉल कॉन्फ़िगरेशन टूल के साथ आता है जिसे कहा जाता है यूएफडब्ल्यू (जटिल फ़ायरवॉल), फ़ायरवॉल को कॉन्फ़िगर करने और प्रबंधित करने के लिए सबसे लोकप्रिय और उपयोग में आसान कमांड लाइन टूल है उबंटू तथा डेबियन वितरण।
इस लेख में, हम बताएंगे कि कैसे स्थापित और सेटअप किया जाए यूएफडब्ल्यू फ़ायरवॉल चालू उबंटू तथा डेबियन वितरण।
इस लेख के साथ शुरू करने से पहले, सुनिश्चित करें कि आपने अपने उबंटू या डेबियन सर्वर में sudo उपयोगकर्ता या रूट खाते के साथ लॉग इन किया है। यदि आपके पास sudo उपयोगकर्ता नहीं है, तो आप रूट उपयोगकर्ता के रूप में निम्न निर्देशों का उपयोग करके एक बना सकते हैं।
# योजक उपयोगकर्ता नाम। # usermod -aG sudo यूजरनेम # su - यूजरनेम। $ सुडो व्हामी।
NS यूएफडब्ल्यू (जटिल फ़ायरवॉल) उबंटू और डेबियन में डिफ़ॉल्ट रूप से स्थापित होना चाहिए, यदि नहीं, तो इसका उपयोग करके इसे स्थापित करें एपीटी पैकेज मैनेजर निम्न आदेश का उपयोग कर।
$ sudo apt ufw स्थापित करें।
एक बार इंस्टॉलेशन पूरा हो जाने के बाद आप टाइप करके UFW की स्थिति की जांच कर सकते हैं।
$ sudo ufw स्थिति वर्बोज़।
पहली स्थापना पर, UFW फ़ायरवॉल डिफ़ॉल्ट रूप से अक्षम है, आउटपुट नीचे जैसा होगा।
स्थिति: निष्क्रिय
आप निम्न कमांड का उपयोग करके UFW फ़ायरवॉल को सक्रिय या सक्षम कर सकते हैं, जो फ़ायरवॉल को लोड करना चाहिए और इसे बूट पर शुरू करने में सक्षम बनाता है।
$ sudo ufw सक्षम करें।
UFW फ़ायरवॉल को अक्षम करने के लिए, निम्न कमांड का उपयोग करें, जो फ़ायरवॉल को अनलोड करता है और इसे बूट पर प्रारंभ होने से अक्षम करता है।
$ सुडो यूएफडब्ल्यू अक्षम
डिफ़ॉल्ट रूप से, UFW फ़ायरवॉल प्रत्येक आने वाले कनेक्शन को अस्वीकार करता है और केवल सभी आउटबाउंड कनेक्शन को सर्वर से अनुमति देता है। इसका मतलब है, कोई भी आपके सर्वर तक नहीं पहुंच सकता है, जब तक कि आप विशेष रूप से पोर्ट नहीं खोलते, जबकि आपके सर्वर पर चल रही सभी सेवाएं या एप्लिकेशन बाहरी नेटवर्क तक पहुंचने में सक्षम हो सकते हैं।
डिफ़ॉल्ट UFW फ़ायरवॉल नीतियों को इसमें रखा गया है /etc/default/ufw
फ़ाइल और निम्न आदेश का उपयोग करके बदला जा सकता है।
$ sudo ufw डिफ़ॉल्ट आने से इनकार करते हैं। $ sudo ufw डिफ़ॉल्ट आउटगोइंग की अनुमति देता है।
सॉफ़्टवेयर पैकेज का उपयोग करते समय अपार्ट पैकेज प्रबंधक, इसमें एक एप्लिकेशन प्रोफ़ाइल शामिल होगी /etc/ufw/applications.d
निर्देशिका जो सेवा को परिभाषित करती है और UFW सेटिंग्स रखती है।
आप निम्न आदेश का उपयोग करके अपने सर्वर पर सभी उपलब्ध एप्लिकेशन प्रोफाइल सूचीबद्ध कर सकते हैं।
$ sudo ufw ऐप सूची।
आपके सिस्टम पर सॉफ़्टवेयर पैकेज इंस्टॉलेशन के आधार पर आउटपुट निम्न के जैसा दिखेगा:
उपलब्ध आवेदन: अपाचे अपाचे पूर्ण अपाचे सुरक्षित कप ओपनएसएसएच पोस्टफिक्स पोस्टफिक्स एसएमटीपीएस पोस्टफिक्स सबमिशन।
यदि आप किसी विशेष प्रोफ़ाइल और परिभाषित नियमों के बारे में अधिक जानकारी प्राप्त करना चाहते हैं तो आप निम्न आदेश का उपयोग कर सकते हैं।
$ sudo ufw ऐप की जानकारी 'अपाचे'
प्रोफाइल: अपाचे। शीर्षक: वेब सर्वर विवरण: Apache V2 सर्वव्यापी Apache वेब सर्वर की अगली पीढ़ी है। बंदरगाह: 80/टीसीपी।
यदि आपका सर्वर कॉन्फ़िगर किया गया है आईपीवी6, सुनिश्चित करें कि आपका यूएफडब्ल्यू के साथ कॉन्फ़िगर किया गया है आईपीवी6 तथा आईपीवी 4 सहयोग। इसे सत्यापित करने के लिए, अपने पसंदीदा संपादक का उपयोग करके UFW कॉन्फ़िगरेशन फ़ाइल खोलें।
$ sudo vi /etc/default/ufw.
फिर सुनिश्चित करें "आईपीवी6" इस पर लगा है "हाँ"
कॉन्फ़िगरेशन फ़ाइल में जैसा कि दिखाया गया है।
आईपीवी 6 = हाँ।
सेव करके छोड़ो। फिर निम्न आदेशों के साथ अपने फ़ायरवॉल को पुनरारंभ करें:
$ sudo ufw अक्षम करें। $ sudo ufw सक्षम करें।
यदि आपने अब तक UFW फ़ायरवॉल को सक्षम किया है, तो यह आने वाले सभी कनेक्शनों को अवरुद्ध कर देगा और यदि आप दूरस्थ स्थान से SSH पर अपने सर्वर से जुड़े हैं, तो आप इसे फिर से कनेक्ट नहीं कर पाएंगे।
आइए अपने सर्वर से SSH कनेक्शन को सक्षम करें ताकि निम्न कमांड का उपयोग करके ऐसा होने से रोका जा सके:
$ sudo ufw ssh की अनुमति दें।
यदि आप कस्टम SSH पोर्ट का उपयोग कर रहे हैं (उदाहरण के लिए port 2222), तो आपको निम्न आदेश का उपयोग करके UFW फ़ायरवॉल पर उस पोर्ट को खोलने की आवश्यकता है।
$ sudo ufw 2222/tcp की अनुमति दें।
सभी SSH कनेक्शन को ब्लॉक करने के लिए निम्न कमांड टाइप करें।
$ सुडो यूएफडब्ल्यू एसएसएच/टीसीपी से इनकार करते हैं। $ sudo ufw 2222/tcp से इनकार करते हैं [यदि कस्टम SSH पोर्ट का उपयोग कर रहे हैं]
आप एक निश्चित सेवा के लिए इसके माध्यम से कनेक्शन की अनुमति देने के लिए फ़ायरवॉल में एक विशिष्ट पोर्ट भी खोल सकते हैं। उदाहरण के लिए, यदि आप एक वेब सर्वर सेटअप करना चाहते हैं जो पोर्ट पर सुनता है 80 (एचटीटीपी) तथा 443 (HTTPS के) डिफ़ॉल्ट रूप से।
अपाचे सेवाओं के लिए आने वाले कनेक्शन की अनुमति देने के कुछ उदाहरण नीचे दिए गए हैं।
$ sudo ufw http की अनुमति दें [सेवा के नाम से] $ sudo ufw 80/tcp की अनुमति दें [पोर्ट नंबर द्वारा] $ sudo ufw 'अपाचे' की अनुमति दें [आवेदन प्रोफ़ाइल द्वारा]
$ sudo ufw https की अनुमति दें। $ sudo ufw 443/tcp की अनुमति दें। $ sudo ufw 'अपाचे सिक्योर' की अनुमति दें
मान लें कि आपके पास कुछ एप्लिकेशन हैं जिन्हें आप कई पोर्ट पर चलाना चाहते हैं (5000-5003), आप इन सभी पोर्ट को निम्न कमांड का उपयोग करके जोड़ सकते हैं।
सुडो यूएफडब्ल्यू 5000:5003/टीसीपी की अनुमति दें। सुडो यूएफडब्ल्यू 5000:5003/udp की अनुमति दें।
यदि आप विशिष्ट आईपी पते से सभी बंदरगाहों पर कनेक्शन की अनुमति देना चाहते हैं 192.168.56.1, तो आपको आईपी पते से पहले से निर्दिष्ट करना होगा।
$ sudo ufw 192.168.56.1 से अनुमति दें।
किसी विशिष्ट पोर्ट पर कनेक्शन की अनुमति देने के लिए (उदाहरण के लिए पोर्ट 22) आपके होम मशीन से के आईपी पते के साथ 192.168.56.1, तो आपको जोड़ने की जरूरत है कोई बंदरगाह और यह पोर्ट नंबर दिखाए गए अनुसार आईपी पते के बाद।
$ sudo ufw 192.168.56.1 से किसी भी पोर्ट 22 पर अनुमति दें।
से लेकर विशेष IP पतों के लिए कनेक्शन की अनुमति देने के लिए 192.168.1.1 प्रति 192.168.1.254 बायें तरफ़ मुड़ने के लिए 22 (एसएसएच), निम्न आदेश चलाएँ।
$ sudo ufw 192.168.1.0/24 से किसी भी पोर्ट 22 पर अनुमति दें।
विशिष्ट नेटवर्क इंटरफ़ेस से कनेक्शन की अनुमति देने के लिए eth2 एक विशेष बंदरगाह के लिए 22 (एसएसएच), निम्न आदेश चलाएँ।
$ sudo ufw eth2 पर किसी भी पोर्ट 22 में प्रवेश करने की अनुमति देता है।
डिफ़ॉल्ट रूप से, आने वाले सभी कनेक्शन अवरुद्ध हैं, जब तक कि आपने विशेष रूप से UFW पर कनेक्शन नहीं खोला है। उदाहरण के लिए, आपने पोर्ट खोले हैं 80 तथा 443 और आपके वेब सर्वर पर अज्ञात नेटवर्क से हमला हो रहा है 11.12.13.0/24.
इस विशेष से सभी कनेक्शनों को ब्लॉक करने के लिए 11.12.13.0/24 नेटवर्क रेंज, आप निम्न आदेश का उपयोग कर सकते हैं।
$ sudo ufw 11.12.13.0/24 से इनकार करते हैं।
यदि आप केवल पोर्ट पर कनेक्शन ब्लॉक करना चाहते हैं 80 तथा 443, आप निम्न आदेशों का उपयोग कर सकते हैं।
$ sudo ufw 11.12.13.0/24 से किसी भी पोर्ट 80 पर इनकार करते हैं। $ sudo ufw 11.12.13.0/24 से किसी भी पोर्ट 443 पर इनकार करते हैं।
UFW नियमों को हटाने के 2 तरीके हैं, इसके द्वारा नियम संख्या और द्वारा वास्तविक नियम.
UFW नियमों का उपयोग करके हटाने के लिए नियम संख्या, सबसे पहले आपको निम्न आदेश का उपयोग करके नियमों को संख्याओं द्वारा सूचीबद्ध करना होगा।
$ sudo ufw स्थिति क्रमांकित।
स्थिति: सक्रिय से कार्रवाई के लिए -- [ १] २२/टीसीपी कहीं भी अनुमति दें। [२] ८०/टीसीपी कहीं भी अनुमति दें।
नियम संख्या मिटाने के लिए 1, निम्न आदेश का प्रयोग करें।
$ sudo ufw डिलीट 1.
दूसरी विधि का उपयोग करके किसी नियम को हटाना है वास्तविक नियम, उदाहरण के लिए किसी नियम को हटाने के लिए, प्रोटोकॉल के साथ पोर्ट नंबर निर्दिष्ट करें जैसा कि दिखाया गया है।
$ sudo ufw हटाएं 22/tcp की अनुमति दें।
आप सिस्टम फ़ायरवॉल में वास्तव में कोई बदलाव किए बिना किसी भी ufw कमांड को चला सकते हैं --पूर्वाभ्यास
ध्वज, यह केवल उन परिवर्तनों को दिखाता है जहां होने का अनुमान है।
$ sudo ufw --dry-run सक्षम करें।
किसी न किसी कारण से, यदि आप सभी फ़ायरवॉल नियमों को हटाना / रीसेट करना चाहते हैं, तो निम्न कमांड टाइप करें, यह आपके सभी परिवर्तनों को वापस लाएगा और नए सिरे से शुरू होगा।
$ सुडो यूएफडब्ल्यू रीसेट। $ sudo ufw स्थिति।
NS यूएफडब्ल्यू फ़ायरवॉल कुछ भी करने का प्रबंधन कर सकता है जो iptables करता है। यह नियम फाइलों के विभिन्न सेटों के साथ किया जा सकता है, जो कुछ भी नहीं है, लेकिन सरल है iptables-पुनर्स्थापना पाठ फ़ाइलें।
UFW फ़ायरवॉल की ट्यूनिंग या अतिरिक्त iptables कमांड जोड़ने की ufw कमांड के माध्यम से अनुमति नहीं है, निम्नलिखित टेक्स्ट फाइलों को बदलने का मामला है
इतना ही! यूएफडब्ल्यू एक उत्कृष्ट फ्रंट-एंड है आईपीटेबल्स एक एकल ufw कमांड के साथ जटिल नियमों को परिभाषित करने के लिए उपयोगकर्ता के अनुकूल इंटरफेस के साथ।
यदि आपके पास इस ufw लेख के बारे में साझा करने के लिए कोई प्रश्न या विचार हैं, तो हम तक पहुंचने के लिए नीचे दिए गए टिप्पणी फ़ॉर्म का उपयोग करें।