लिनक्स को समझना nftables आदेश #
RSI nftables कमांड एक शक्तिशाली लिनक्स फ़ायरवॉल उपकरण है जो प्रतिस्थापित करता है iptables, ip6tables, arptables, तथा ebtablesएकीकृत वाक्यविन्यास के साथ, nftables नेटवर्क पैकेट फ़िल्टरिंग, NAT और अन्य उन्नत नेटवर्क कॉन्फ़िगरेशन को सरल बनाता है। यह कमांड इसके साथ काम करता है nft उपयोगिता, जो नेटवर्क नियमों को प्रबंधित करने के लिए कर्नेल के नेटफिल्टर सबसिस्टम के साथ संचार करती है।
मूल वाक्यविन्यास और संरचना nft आदेश #
RSI nft कमांड सामान्यतः इस संरचना का अनुसरण करता है:
nft [OPTIONS] COMMAND
- विकल्प: झंडे जैसे
-a(नियम हैंडल दिखाएं) या-j(JSON प्रारूप में आउटपुट). - कमान: विशिष्ट कार्रवाई, जैसे
add,delete,listया,flush, तालिकाओं, श्रृंखलाओं या नियमों को प्रबंधित करने के लिए उपयोग किया जाता है।
nft कमांड चीटशीट तालिका #
| आदेश | विवरण |
nft list tables |
सभी तालिकाओं की सूची बनाएं |
nft add table inet filter |
नाम से एक नई तालिका बनाएं filter में inet परिवार |
nft delete table inet filter |
हटाएं filter टेबल में inet परिवार |
nft list ruleset |
सभी तालिकाओं, श्रृंखलाओं और नियमों को मानव-पठनीय प्रारूप में सूचीबद्ध करें |
nft flush ruleset |
सभी तालिकाएँ, श्रृंखलाएँ और नियम हटाएँ (संपूर्ण नियम-सेट को हटाएँ) |
nft add chain inet filter input { type filter hook input priority 0; } |
एक जोड़ें input श्रृंखला के लिए filter टेबल के साथ input हुक |
nft add rule inet filter input tcp dport 22 accept |
पोर्ट 22 पर आने वाले SSH ट्रैफ़िक को स्वीकार करें |
nft delete rule inet filter input handle <handle_number> |
किसी नियम को हटाएँ input नियम के हैंडल को निर्दिष्ट करके चेन बनाएं |
nft add rule inet filter forward counter |
इसमें एक काउंटर नियम जोड़ें forward यातायात की निगरानी के लिए चेन |
तालिकाएँ जोड़ना और प्रबंधित करना #
In nftables, टेबल चेन और नियमों के लिए कंटेनर हैं। उन्हें बनाने और प्रबंधित करने का तरीका यहां बताया गया है:
एक तालिका बनाएँ #
nft add table inet my_table
यह कमांड नाम से एक नई तालिका बनाता है my_table के अंदर inet परिवार, जो IPv4 और IPv6 दोनों का समर्थन करता है।
तालिका हटाएँ #
nft delete table inet my_table
हटाता है my_table से inet परिवार।
चेन में nftables #
चेन नियमों का अनुक्रम है जो परिभाषित करता है कि पैकेट को कैसे संभाला जाता है। प्रत्येक चेन का एक विशिष्ट नियम होता है hook, जो पैकेट फ़िल्टरिंग चरण निर्धारित करता है (उदाहरण के लिए, input, outputया, forward).
एक श्रृंखला बनाएं #
nft add chain inet my_table my_chain { type filter hook input priority 0; }
यह एक बनाता है input श्रृंखला में my_table प्राथमिकता वाले पैकेटों को फ़िल्टर करने के लिए 0.
चेन मिटाएँ #
nft delete chain inet my_table my_chain
को हटा देता है my_chain से my_table.
में नियम nftables #
नियम पैकेट के लिए क्रियाएँ निर्दिष्ट करते हैं जो कुछ शर्तों से मेल खाते हैं। नीचे नियम जोड़ने, सूचीबद्ध करने और हटाने के उदाहरण दिए गए हैं।
नियम जोड़ना #
nft add rule inet my_table my_chain tcp dport 80 accept
यह नियम TCP पोर्ट 80 (HTTP) पर ट्रैफ़िक की अनुमति देता है।
लिस्टिंग नियम #
nft list chain inet my_table my_chain
सभी नियम प्रदर्शित करता है my_chain.
नियम हटाना #
nft delete rule inet my_table my_chain handle <handle_number>
किसी नियम को उसका हैंडल नंबर निर्दिष्ट करके हटाता है, जिसे निम्न प्रकार से दिखाया जा सकता है nft list chain inet my_table my_chain -a.
उदाहरण nftables कॉन्फ़िगरेशन: बेसिक फ़ायरवॉल सेटअप #
यहां एक बुनियादी फ़ायरवॉल कॉन्फ़िगरेशन दिया गया है जो आने वाले SSH और HTTP/HTTPS को अनुमति देता है, जबकि अन्य सभी ट्रैफ़िक को अवरुद्ध करता है:
nft add table inet filter nft add chain inet filter input { type filter hook input priority 0\; policy drop\; } nft add rule inet filter input tcp dport 22 Accept # Allow SSH nft add rule inet filter input tcp dport 80 Accept # Allow HTTP nft add rule inet filter input tcp dport 443 Accept # Allow HTTPS nft add rule inet filter input ct stateestablish,related Accept # Allowestablished connections
उन्नत: कनेक्शन ट्रैकिंग के साथ स्टेटफुल नियम #
nftables इसमें कनेक्शन ट्रैकिंग के लिए अंतर्निहित समर्थन है, जो आपको स्टेटफुल नियमों का प्रबंधन करने की अनुमति देता है।
उदाहरण: संबंधित और स्थापित कनेक्शन की अनुमति दें #
nft add rule inet filter input ct state established,related accept
इससे पहले से स्थापित या मौजूदा कनेक्शनों से संबंधित कनेक्शनों से पैकेटों को अनुमति मिलती है, जिससे पहले से स्वीकृत कनेक्शनों के अनावश्यक पुनः प्रसंस्करण को कम करने में मदद मिलती है।
सारांश #
RSI nftables कमांड नेटवर्क पैकेट फ़िल्टरिंग के लिए एक आधुनिक और बहुमुखी उपकरण है, जो फ़ायरवॉल नियमों के प्रबंधन के लिए एकीकृत सिंटैक्स और लचीले विकल्प प्रदान करता है। nftables, आप सरल सेटअप और जटिल एंटरप्राइज़ वातावरण दोनों के लिए उपयुक्त कुशल और रखरखाव योग्य फ़ायरवॉल कॉन्फ़िगरेशन बना सकते हैं।