मेरे पास 4 मशीनों के साथ प्रयोगशाला में एक परीक्षण-सेटअप है:
- 2 पुरानी पी 4 मशीनें (टी 1, टी 2)
- 1 Xeon 5420 DP 2.5 GHz 8 GB RAM (t3) इंटेल e1000
- 1 एक्सॉन 5420 डीपी 2.5 गीगाहर्ट्ज 8 जीबी रैम (टी 4) इंटेल ई 1000
पिछले महीनों में सिंक-फ्लड हमलों की संख्या से काटे जाने के बाद से लिनक्स फ़ायरवॉल प्रदर्शन का परीक्षण करने के लिए। सभी मशीनें Ubuntu 12.04 64bit चलती हैं। t1, t2, t3 एक 1GB / s स्विच के माध्यम से आपस में जुड़े हुए हैं, t4 एक अतिरिक्त इंटरफ़ेस के माध्यम से t3 से जुड़ा है। इसलिए t3 फ़ायरवॉल का अनुकरण करता है, t4 लक्ष्य है, t1, t2 एक पैकेट थरुघ (192.168.4.199 t4) पैदा करने वाले हमलावरों को खेलते हैं:
hping3 -I eth1 --rand-source --syn --flood 192.168.4.199 -p 80
टी 4 गेटवे के साथ भ्रम से बचने के लिए आने वाले सभी पैकेटों को छोड़ देता है, टी 4 के प्रदर्शन के मुद्दों आदि। मैं आईपीट्राफ में पैकेट आँकड़े देखता हूं। मैंने फ़ायरवॉल (t3) को निम्नानुसार कॉन्फ़िगर किया है:
- स्टॉक 3.2.0-31-जेनेरिक # 50-उबंटू एसएमपी कर्नेल
- rhash_entries = 33554432 कर्नेल पैरामीटर के रूप में
sysctl इस प्रकार है:
net.ipv4.ip_forward = 1 net.ipv4.route.gc_elasticity = 2 net.ipv4.route.gc_timeout = 1 net.ipv4.route.gc_interval = 5 net.ipv4.route.gc_min_interval_ms = 500 net.ipv4.route.gc_thresh = 2000000 net.ipv4.route.max_size = 20000000
(जब मैंने t1 + t2 को अधिक से अधिक पैकेट भेज रहे हैं तो t3 को चालू रखने के लिए बहुत कुछ ट्विक किया है)।
इस प्रयासों के परिणाम कुछ हद तक विषम हैं:
- t1 + t2 प्रत्येक 200k पैकेट / s भेजने का प्रबंधन करता है। t4 सबसे अच्छे मामले में aroung 200k को देखता है, इसलिए पैकेट के आधे भाग खो जाते हैं।
- t3 कंसोल पर लगभग अनुपयोगी है, हालांकि पैकेट इसके माध्यम से बह रहे हैं (नरम-इरक की उच्च संख्या)
- मार्ग कैश गारबेज कलेक्टर के पास कोई अनुमान लगाने योग्य नहीं है और डिफ़ॉल्ट सेटिंग में बहुत कम पैकेट / एस (<50k पैकेट / एस) से अभिभूत है
- स्टेटफुल iptables नियमों को सक्रिय करने से पैकेट दर t4 ड्रॉप पर लगभग 100 k पैकेट / s तक पहुँच जाता है, जो प्रभावी रूप से 75% से अधिक पैकेट खो देता है।
और यह - यहां मेरी मुख्य चिंता है - दो पुरानी पी 4 मशीनों के साथ जितने पैकेट भेजे जा सकते हैं - जिसका मतलब है कि नेट पर लगभग हर कोई इसके लिए सक्षम होना चाहिए।
तो यहाँ मेरा सवाल है: क्या मैंने विन्यास में या मेरे परीक्षण सेटअप में कुछ आयात बिंदु को नजरअंदाज किया है? क्या विशेष रूप से smp सिस्टम पर फ़ायरवॉल सिस्टम बनाने के लिए कोई विकल्प हैं?