सिस्टम में स्वचालित रूप से iptables नियम कैसे शुरू करें (ArchLinux)

जब सुरक्षा की बात आती है तो कुछ लोग मुझे पागल समझते हैं, यही कारण है कि फ़ायरवॉल का उपयोग मेरे लिए आवश्यक है। मेरे लैपटॉप पर मेरे लिए बेहद महत्वपूर्ण संवेदनशील जानकारी है; और चूंकि फ़ायरवॉल पीसी के लिए लॉक या के रूप में है काजा फुटरे हमारे लिए, यह भी याद रखें कि कंप्यूटर पर हम ईमेल, बैंक खाता डेटा (जिसके पास भी हैं), सर्वर जानकारी और अन्य आभासी जानकारी तक पहुंचने के लिए पासवर्ड संग्रहीत करते हैं जो सीधे हमारे भौतिक जीवन में हमें प्रभावित करते हैं... ठीक है, बिना किसी संदेह के, चलना कॉन्फ़िगर फ़ायरवॉल के बिना नेटवर्क के माध्यम से, हमारे कंप्यूटर पर उचित सुरक्षा के बिना ऐसा कुछ नहीं है जो अनुशंसित हो।

कुछ समय पहले मैंने आपको दिखाया था कि iptables नियम कैसे शुरू करें डेबियन जैसे डिस्ट्रोज़ पर स्वचालित रूप से, उबंटू या अन्य जिनमें /etc/rc.local फ़ाइल शामिल है, हालाँकि ArchLinux में क्योंकि यह systemd का उपयोग करता है, यह फ़ाइल मौजूद नहीं है।

तो, जिस तरह से मैंने अपने iptables को कॉन्फ़िगर करना चाहा, वह एक बैश स्क्रिप्ट बनाना है जो iptables को कॉन्फ़िगर करता है, और फिर फ़ाइल /usr/lib/systemd/system/iptables.service को संशोधित करता है ... लेकिन, आइए आगे बढ़ते हैं भाग 🙂

1. हमें चाहिए एक बैश स्क्रिप्ट बनाएं जिसमें हमारे iptables नियम शामिल हैं, कुछ इस प्रकार: उदाहरण बैश + iptables स्क्रिप्ट

2. स्क्रिप्ट बनाने, उसमें अपने नियम लिखने और उसे निष्पादन की अनुमति देने के बाद, हम systemd iptables सेवा को संपादित करेंगे:

निम्नलिखित कमांड को प्रशासनिक अनुमतियों के साथ निष्पादित किया जाना चाहिए, या तो मेरे जैसे sudo का उपयोग करके या सीधे रूट उपयोगकर्ता के साथ

sudo nano /usr/lib/systemd/system/iptables.service

हमें कुछ इस तरह मिलेगा:

[इकाई] विवरण=पैकेट फ़िल्टरिंग फ्रेमवर्क [सेवा] प्रकार=oneshot ExecStart=/usr/bin/iptables-restore /etc/iptables/iptables.rules ExecReload=/usr/bin/iptables-restore /etc/iptables/iptables.rules ExecStop=/usr/lib/systemd/scripts/iptables-flush RemainAfterExit=yes [इंस्टॉल करें]wantedBy=multi-user.target

3. यह मानते हुए कि हमारे द्वारा पहले बनाई गई स्क्रिप्ट /home/myuser/script-iptables.sh में स्थित है, तो हम iptables.service फ़ाइल को इस प्रकार खुला छोड़ देंगे:

[यूनिट] विवरण=पैकेट फ़िल्टरिंग फ्रेमवर्क [सेवा] प्रकार=oneshot ExecStart=/home/myuser/script-iptables.sh ExecReload=/home/myuser/script-iptables.sh ExecStop=/usr/lib/systemd/scripts/iptables -फ्लश रिमेनआफ्टरएक्सिट=हां [इंस्टॉल] वांटेडबाय=मल्टी-यूजर.टार्गेट

4. फिर हमें यह सुनिश्चित करना होगा कि iptables स्वचालित रूप से प्रारंभ हो:

sudo systemctl enable iptables

5. हम इसे शुरू करते हैं:

sudo systemctl start iptables

6. और हम नियमों की जाँच कर सकते हैं:

sudo iptables -nL

यह सबसे आसान तरीका है जो मैंने पाया (1) मेरी अपनी बैश स्क्रिप्ट मेरे लिए आईपीटेबल्स कॉन्फ़िगर करती है, साथ ही (2) नियम स्वचालित रूप से शुरू होते हैं, और अंत में (3) स्क्रिप्ट स्वयं अकेली खड़ी होती है, यानी, अगर कल मैं मैं इसे डेबियन में उपयोग करना चाहता हूं जिसे मैं इंस्टॉल करता हूं (उदाहरण के लिए) मुझे ज्यादा पुन: कॉन्फ़िगर नहीं करना पड़ेगा।

वैसे भी, मुझे आशा है कि आपको यह उपयोगी लगेगा 🙂

सादर


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।

  1.   एलियोटाइम३००० कहा

    दिलचस्प…।

  2.   शाऊल कहा

    iptables.rules फ़ाइल को संपादित करना आसान नहीं होता, यदि आपके पास पहले से ही sudo के साथ रूट एक्सेस है तो यह संशोधित करने लायक होगा, है ना?

  3.   xphnx कहा

    मैं इसे थोड़े अलग तरीके से करता हूं, हालांकि मैं नियमों को लॉन्च करने के लिए आपके द्वारा अपलोड की गई स्क्रिप्ट का भी लाभ उठाता हूं।

    1- हम सेवा लॉन्च करते हैं (यदि हमने इसे अभी तक नहीं किया है):
    # systemctl enable iptables.service
    # systemctl start iptables.service

    2- हम देखते हैं कि हमारे पास कौन से नियम सक्रिय हैं (यदि हमने कुछ भी नहीं छुआ है तो हम मानते हैं कि सब कुछ खुला है) sudo iptables -nvL

    3- हम कॉन्फ़िगरेशन स्क्रिप्ट लॉन्च करके अपने इच्छित नियमों में बदलाव करते हैं:
    # sh /home/miusuario/script-iptables.sh

    4- हम देखते हैं कि सक्रिय नियम कैसे बदल गए हैं:
    # iptables -nvL

    5- हम भविष्य में पुनरारंभ के लिए नए iptables कॉन्फ़िगरेशन को सहेजते हैं:
    # iptables-save > /etc/iptables/iptables.rules

    5बी- यदि हम नियमों को बदलने के लिए /etc/iptables/iptables.rules फ़ाइल को मैन्युअल रूप से संपादित करते हैं, तो हमें कॉन्फ़िगरेशन को फिर से लोड करना होगा:
    # systemctl reload iptables

    कम से कम मेरे लिए तो यह उतना ही आसान है। मैं कॉन्फ़िगरेशन को अधिक ग्राफ़िक तरीके से प्रबंधित करने के लिए कुछ बैश और kdialog सीखने का प्रयास कर रहा हूँ। बाद में मैं qtcreator के साथ कुछ और पूर्ण करने का प्रयास करूंगा, उदाहरण के लिए, हम जिस उपकरण (राउटर, पीसी, आदि...) को कॉन्फ़िगर कर रहे हैं उसके आधार पर कई कॉन्फ़िगरेशन स्क्रिप्ट प्राप्त करने में सक्षम होना चाहिए ताकि यह देखा जा सके कि यह काम करता है या नहीं।

    1.    xphnx कहा

      मेरे मन में जो इंटरफ़ेस है वह कुछ इस प्रकार है।

      मेहराब
      http://i1178.photobucket.com/albums/x380/beatfenix/kortafuegos_arch_zpscec2122d.jpeg
      डेबियन
      http://i1178.photobucket.com/albums/x380/beatfenix/kortafuegos_deb_zps75ada7c4.jpeg

  4.   घनाकार कहा

    टिप्पणियों के लिए यह कैप्चा एक बग स्ट्रेनर है, कृपया इसे दूसरे में बदलें या इसे अपडेट करें क्योंकि कई प्रयासों के बाद यह कष्टप्रद हो जाता है।

    1.    इलाव कहा

      यह वही है जो ह्यूमनओएस, फ़ायरफ़ॉक्समैनिया द्वारा उपयोग किया जाता है... शायद यह कैश के साथ कुछ है।

      1.    घनाकार कहा

        खैर, मैं अब उन दोनों पर कोई टिप्पणी भी नहीं करता।

  5.   mj कहा

    सादर,
    यह अत्यंत उपयोगी विषय है.
    निस्संदेह उन लोगों के लिए जो हमारे पीसी पर संग्रहीत जानकारी की सुरक्षा में रुचि रखते हैं; "iptables" उन उपकरणों में से एक है जिसका उपयोग करना सीखना चाहिए; हालाँकि, अपने स्वयं के महत्व के कारण, इसे सीखना थोड़ा जटिल है।
    मुझे इस विषय पर यह वीडियो मिला, मुझे आशा है कि आप मुझे इसका इलेक्ट्रॉनिक पता "http://www.youtube.com/watch?v=Z6a-K_8FT_Y" साझा करने की अनुमति देंगे; मुझे यह देखकर आश्चर्य हुआ कि यह यहां की बात से कुछ अलग है। लेकिन वैसे भी, मुझे लगता है कि यह GNU/Linux के वितरणों की विविधता (ARCH, DEBIAN, SUSE, आदि) के कारण होगा, हमें वैसे भी सीखना होगा।