अपडेट पर वापस जाएँ
New releaseSep 4, 2026

easywall v2.14.0

Linux पर nftables फ़ायरवॉल के लिए वेब इंटरफ़ेस, Go में लिखा गया। apply स्वयं को 120 सेकंड के बाद पूर्ववत कर लेता है जब तक आप इसकी पुष्टि नहीं करते — आप स्वयं को लॉक आउट नहीं कर सकते। Debian और Docker इंस्टॉल।

साझा करें

easywall

आपकी फ़ायरवॉल। आपके नियम। कोई आश्चर्य नहीं।

Tests Build Security Coverage

Latest release Go version GPL-3.0 Discord Support on Ko-fi

लाइव डेमो · दस्तावेज़ीकरण · परिवर्तन-सूची

एक वेब इंटरफ़ेस के माध्यम से nftables जो आपको बाहर नहीं कर सकता: हर apply अपने आप वापस हो जाता है जब तक कि आप उसकी पुष्टि न करें।

The easywall dashboard: firewall status with acceptance state, pending changes and last apply; tiles counting TCP ports, UDP ports, blacklist, whitelist, custom rules and forwarding; and a recent-activity list.

विचार

किसी नियम को संपादित करने से कुछ नहीं बदलता। उसे apply करने से सब कुछ बदल जाता है — 120 सेकंड के लिए। यदि नए नियम आपका कनेक्शन काट देते हैं तो आप Confirm नहीं दबा सकते, और नहीं दबाना ही पुराने नियमों को वापस लाता है।

State machine: editing leads to Staged, applying leads to Live, confirming within the window leads to Confirmed, and letting the window expire leads to Rolled back, from where the staged edits are still available.

आर्किटेक्चर

दो प्रक्रियाएँ। नेटवर्क के संपर्क में आने वाली प्रक्रिया के पास चुराने लायक कोई विशेषाधिकार नहीं होता।

Browser talks HTTPS to easywall-web, which runs unprivileged; easywall-web talks typed JSON over a Unix socket to easywall-core, which runs as root and speaks netlink to the nftables table inet easywall.

मूल easywall का पूर्ण पुनर्लेखन — Python, Flask, subprocess के माध्यम से iptables — जिसे 2022 में एक CVE के बाद संग्रहीत किया गया था। दोनों मूल कारण समाप्त हो गए हैं: विशेषाधिकार एक अलग प्रक्रिया में रहते हैं, और apply पथ कमांड लाइन के बजाय Go structs बनाता है। यह कैसे काम करता है →

इंस्टॉल

Decision tree: just looking leads to demo mode; Debian or Ubuntu leads to the .deb package; already running containers leads to Docker; otherwise build from source.
# Debian / Ubuntu — amd64 और arm64
ARCH=$(dpkg --print-architecture)
wget https://github.com/jp1337/easywall/releases/latest/download/easywall_$ARCH.deb
sudo dpkg -i easywall_$ARCH.deb && sudo apt-get install -f

# Docker
git clone https://github.com/jp1337/easywall.git && cd easywall && docker compose up -d

# स्रोत से — Go 1.27+, nftables
git clone https://github.com/jp1337/easywall.git && cd easywall
make build && sudo make install
sudo systemctl enable --now easywall-core easywall-web

फिर https://localhost:12227 खोलें। पहली यात्रा खाता सेट करती है और पहले नियमों को stage करती है

आपको क्या मिलता है

पोर्ट्सTCP और UDP, एकल या रेंज, प्रति-नियम SSH brute-force रूटिंग के साथ
ब्लैकलिस्ट और व्हाइटलिस्टIPv4, IPv6 और CIDR, किसी भी पोर्ट नियम से पहले मूल्यांकित
सुरक्षा मॉड्यूलबारह, पाँच डिफ़ॉल्ट रूप से चालू — floods, scans, bogons, fragments, broadcast/multicast/anycast
पोर्ट फ़ॉरवर्डिंगप्रोटोकॉल चयन के साथ NAT रीडायरेक्ट
कस्टम नियमरॉ nftables, apply करने से पहले सिंटैक्स-जाँचित
एक्सपोर्ट / इम्पोर्टपूरा नियम-सेट JSON के रूप में
ऑडिट लॉगक्या बदला और कब, प्रति पंक्ति एक JSON ऑब्जेक्ट
Docker सह-अस्तित्वकेवल table inet easywall का स्वामी, और कुछ नहीं छूता
English, Deutsch, Françaisइंटरफ़ेस में बदलने योग्य, साइन-इन से पहले भी। कोई भाषा आंशिक हो सकती है: जो अनुपलब्ध है वह English में प्रदर्शित होता है, और अंतर छिपाने के बजाय रिपोर्ट किया जाता है
लाइट और डार्कOS का अनुसरण करता है, मैनुअल टॉगल के साथ; दोनों कंट्रास्ट-जाँचित

निर्माण में प्रयुक्त

Go 1.27, एकल बाइनरीgo-chi/chi · html/template
google/nftables के माध्यम से nftablesसीधा netlink, कोई nft subprocess नहीं
Argon2idgolang.org/x/crypto, प्रति पासवर्ड 16-बाइट salt
CSRFnet/http.CrossOriginProtection, Go 1.25 नेटिव
डिज़ाइन सिस्टमDESIGN.md + Tailwind v4 — कोई तृतीय-पक्ष UI लाइब्रेरी नहीं
फ़ॉन्ट्सInter + JetBrains Mono, सेल्फ-होस्टेड, ~145 KB — air-gapped काम करता है
CIgovulncheck, gosec, CodeQL, -race, और वास्तविक कर्नेल के विरुद्ध एक एकीकरण सुइट

सहायता प्राप्त करना

कोई प्रश्न, या कुछ ठीक से व्यवहार नहीं कर रहाDiscord
कोई बग, या कोई सुविधा जो आप चाहते हैंGitHub issues
कोई सुरक्षा भेद्यताSecurity advisoryनहीं Discord, और न ही कोई सार्वजनिक issue

योगदान

सेटअप, कमिट परंपराएँ और समीक्षा चेकलिस्ट: CONTRIBUTING.md। कोई भी दृश्य चीज़ पहले DESIGN.md से गुज़रती है।

सुरक्षा मुद्दे: नहीं सार्वजनिक issue के रूप में — उपयोग करें GitHub Security Advisories

लाइसेंस

GPL-3.0 — देखें LICENSE

श्रेणियाँ