Wolkra फ़ायरवॉल इनबाउंड और आउटबाउंड नियमों का एक मुफ़्त, stateful सेट है, जो ट्रैफ़िक को आपके सर्वर तक पहुँचने से पहले फ़िल्टर करता है। एक बार रूल सेट बनाएं, फिर उसे अलग-अलग सर्वर पर या किसी लेबल सेलेक्टर से मेल खाने वाले सभी सर्वर पर लागू करें।
फ़ायरवॉल कैसे काम करते हैं
- Stateful. अनुमति वाले कनेक्शन का वापसी ट्रैफ़िक अपने-आप अनुमत होता है।
- इनबाउंड और आउटबाउंड. नियम तय करते हैं कि सर्वर तक क्या पहुँच सकता है और, अगर आप चाहें, तो सर्वर बाहर क्या भेज सकता है।
- सर्वर के बाहर. नियम नेटवर्क पर लागू होते हैं, इसलिए सर्वर का सॉफ़्टवेयर गलत कॉन्फ़िगर होने या हैक होने पर भी काम करते रहते हैं।
- शेयर करने योग्य. एक फ़ायरवॉल कई सर्वर को सुरक्षित रख सकता है। एक बार नियम बदलें और वह सब पर लागू हो जाता है।
फ़ायरवॉल बनाएं
- कंसोल में Firewalls खोलें और Create firewall चुनें।
- उसे नाम दें, जैसे
web-public। - नियम जोड़ें। हर नियम में एक दिशा, एक प्रोटोकॉल (TCP, UDP, ICMP आदि), ज़रूरत हो तो एक पोर्ट या पोर्ट रेंज, और सोर्स या डेस्टिनेशन एड्रेस होते हैं।
- इसे सर्वर पर या किसी लेबल सेलेक्टर पर लागू करें।
- सेव करें।
सर्वर या लेबल पर लागू करें
छोटे सेटअप के लिए अलग-अलग सर्वर चुनना सबसे आसान है।
लेबल सेलेक्टर बड़े सेटअप में बेहतर रहते हैं। सर्वर को role=web या env=prod जैसे लेबल दें, फिर फ़ायरवॉल को सेलेक्टर role=web पर लागू करें। उस लेबल वाले हर सर्वर को, बाद में बनाए गए सर्वर समेत, नियम अपने-आप मिल जाते हैं। लेबल सर्वर बनाते समय या बाद में सर्वर व्यू में सेट किए जाते हैं।
उदाहरण रूल सेट
नीचे दी गई एड्रेस रेंज सिर्फ़ उदाहरण हैं। इन्हें अपने ऑफ़िस, घर या VPN की रेंज से बदलें।
पब्लिक वेब सर्वर
| दिशा | प्रोटोकॉल | पोर्ट | सोर्स |
|---|---|---|---|
| इनबाउंड | TCP | 22 | 198.51.100.0/24 (आपका ऑफ़िस) |
| इनबाउंड | TCP | 80 | कोई भी IPv4 और IPv6 |
| इनबाउंड | TCP | 443 | कोई भी IPv4 और IPv6 |
| इनबाउंड | UDP | 443 | कोई भी (HTTP/3) |
| इनबाउंड | ICMP | – | कोई भी |
प्राइवेट नेटवर्क पर डेटाबेस
| दिशा | प्रोटोकॉल | पोर्ट | सोर्स |
|---|---|---|---|
| इनबाउंड | TCP | 5432 | 10.0.0.0/24 (आपका प्राइवेट नेटवर्क) |
| इनबाउंड | TCP | 22 | 10.0.0.0/24 |
इसे ऐसे सर्वर के साथ इस्तेमाल करें जिसका कोई पब्लिक IP ही न हो; देखें प्राइवेट नेटवर्क।
WireGuard VPN
| दिशा | प्रोटोकॉल | पोर्ट | सोर्स |
|---|---|---|---|
| इनबाउंड | UDP | 51820 | कोई भी |
| इनबाउंड | TCP | 22 | आपका एड्रेस |
देखें WireGuard गाइड।
आउटबाउंड नियम
कई सेटअप सारा आउटगोइंग ट्रैफ़िक अनुमत रखते हैं और सिर्फ़ इनबाउंड फ़िल्टर करते हैं। अगर आप आउटबाउंड ट्रैफ़िक सीमित करते हैं, तो याद रखें कि सर्वर को क्या चाहिए:
- आपके रिज़ॉल्वर तक DNS (UDP और TCP 53);
- पैकेज अपडेट के लिए HTTP और HTTPS (TCP 80 और 443);
- घड़ी के लिए NTP (UDP 123);
- अगर सर्वर ईमेल भेजता है, तो SMTP या आपका मेल रिले।
सेव करने से पहले कंसोल में नियमों का सारांश जाँचें, और बाद में सर्वर से curl -I https://example.com चलाकर टेस्ट करें।
फ़ायरवॉल और लोड बैलेंसर
जब सर्वर किसी लोड बैलेंसर के पीछे हों, तो ऐप्लिकेशन पोर्ट को हर जगह से नहीं, बल्कि लोड बैलेंसर के नेटवर्क से अनुमति दें। अगर टारगेट तक प्राइवेट नेटवर्क से पहुँचा जाता है, तो सिर्फ़ उसी नेटवर्क रेंज को अनुमति दें।
फ़ायरवॉल और Docker
Docker कंटेनर पोर्ट को अपने iptables नियमों से पब्लिश करता है, जो सर्वर पर UFW को बायपास कर देते हैं। क्लाउड फ़ायरवॉल पर इसका असर नहीं होता, इसलिए कंटेनर पोर्ट को प्राइवेट रखने का भरोसेमंद तरीका यही है। Docker Compose गाइड में यह तरीका समझाया गया है।
समस्या निवारण
- SSH से लॉक आउट: अपने मौजूदा एड्रेस को अनुमति देने के लिए फ़ायरवॉल एडिट करें, या उसे सर्वर से डिटैच करें। सर्वर व्यू का ब्राउज़र कंसोल नेटवर्क एक्सेस के बिना भी काम करता है।
- सर्विस तक पहुँच नहीं: पहले क्लाउड फ़ायरवॉल जाँचें, फिर UFW (
sudo ufw status), फिर देखें कि सर्विस सुन रही है या नहीं (sudo ss -tlnp)। - IPv4 पर काम करता है, IPv6 पर नहीं: पक्का करें कि नियम दोनों एड्रेस फ़ैमिली को अनुमति देता है।
API
फ़ायरवॉल API में https://api.wolkra.com/v1/firewalls पर उपलब्ध हैं। ऑथेंटिकेशन के लिए API टोकन देखें।
प्रोडक्ट पेज पर और जानकारी: फ़ायरवॉल।
अक्सर पूछे जाने वाले सवाल
क्या फ़ायरवॉल के लिए अलग से पैसे लगते हैं?
नहीं। फ़ायरवॉल मुफ़्त हैं, और आप जितने चाहें उतने रूल सेट बना सकते हैं।
Stateful का क्या मतलब है?
अनुमति वाले कनेक्शन के जवाब अपने-आप आगे जाने दिए जाते हैं। अगर आप इनबाउंड TCP 443 की अनुमति देते हैं, तो जवाब बिना किसी अलग आउटबाउंड नियम के बाहर चले जाते हैं।
क्या मुझे सर्वर पर UFW भी इस्तेमाल करना चाहिए?
कर सकते हैं। क्लाउड फ़ायरवॉल ट्रैफ़िक को सर्वर तक पहुँचने से पहले फ़िल्टर करता है, और UFW सर्वर के अंदर दूसरी परत जोड़ता है। दोनों साथ में एक अच्छा डिफ़ॉल्ट हैं।
मैं खुद को लॉक आउट कर बैठा। वापस कैसे आऊँ?
कंसोल में फ़ायरवॉल एडिट करके अपने एड्रेस से SSH की अनुमति दें, या फ़ायरवॉल को सर्वर से हटा दें। ब्राउज़र कंसोल फ़ायरवॉल नियमों से प्रभावित नहीं होता।