PassWall2 is a powerful LuCI web interface application for OpenWrt that provides advanced proxy and VPN functionality. It's a comprehensive solution for network traffic management, proxy services, and access control on OpenWrt-based routers.
# find it in releases,base of your router ArchVisit GitHub Releases to download the correct package for your system.
Choose the package format based on your router's OpenWrt package manager:
-
Download the IPK package from the releases page
Look forluci-app-passwall2_{VERSION}_all.ipkin the Assets section.Note: If you need localization (Chinese/Persian), download the corresponding language package as well (e.g.,
luci-i18n-passwall2-zh-cn...or...-fa...). -
Upload to your router (via SCP, LuCI upload, or wget):
# Replace {VERSION} with the actual version (e.g., 26.2.5-1) wget https://github.com/Openwrt-Passwall/openwrt-passwall2/releases/download/{VERSION}/luci-app-passwall2_{VERSION}_all.ipk -
Install:
opkg update opkg install luci-app-passwall2_*.ipkIf installation fails due to missing dependencies (e.g.,
xray-core), you need to add the PassWall packages feed to/etc/opkg/customfeeds.conf.
-
Download the APK package from the releases page
Look forluci-app-passwall2_{VERSION}_all.apkin the Assets section.Note: If you need localization (Chinese/Persian), download the corresponding language package as well (e.g.,
luci-i18n-passwall2-zh-cn...or...-fa...). -
Upload to your router (via SCP, LuCI upload, or wget):
# Replace {VERSION} with the actual version (e.g., 26.2.5-1) wget https://github.com/Openwrt-Passwall/openwrt-passwall2/releases/download/{VERSION}/luci-app-passwall2_{VERSION}_all.apk -
Install:
apk add --allow-untrusted luci-app-passwall2_*.apk⚠️ Security Note:--allow-untrustedbypasses package signature verification.
How to check your package manager: Run
opkg --versionorapk --versionto see which one your router uses.
/etc/init.d/rpcd restart- OpenWrt 21.02 or later
- LuCI 19.07 or later
- Minimum 128MB RAM (256MB recommended for stability with Xray/VLESS)
- Sufficient storage for packages (varies by protocol selection)
The following packages should be resolved automatically by the package manager (if available in your feeds):
coreutils,coreutils-base64,coreutils-nohupcurl,ip-full,libuci-lua,lua,luci-compat,luci-lib-jsoncresolveip,tcping,unzipxray-core(core proxy component)geoview,v2ray-geoip,v2ray-geosite(geo-routing data)
Note: Actual dependencies may vary based on selected features and your OpenWrt build. Ensure you have the necessary feeds configured.
Selected during installation based on your needs:
- Shadowsocks (Libev/Rust), ShadowsocksR
- V2Ray/Xray (VMess, VLESS, Trojan)
- Sing-Box, Hysteria, Hysteria2, TUIC
- NaiveProxy, HAProxy
- Shadowsocks (Libev & Rust implementations)
- V2Ray/Xray with full protocol support (VMess, VLESS, Trojan)
- Sing-Box with modern proxy features
- Hysteria and Hysteria2 for high-performance UDP transport
- TUIC client support
- NaiveProxy for advanced obfuscation
- ShadowsocksR legacy support
- Load Balancing: Distribute traffic across multiple nodes
- Smart Routing: Domain-based and geo-based routing rules
- DNS Control: Advanced DNS filtering and DoH/DoT support
- Transparent Proxy: Seamless network-wide proxy
- Subscription Support: Import nodes from subscription URLs
- Node Testing: Built-in latency and connectivity testing
- Failover Support: Automatic failover to backup nodes
- QR Code: Generate and scan QR codes for node sharing
- Per-Device Rules: Configure proxy settings per device
- Domain/IP Filtering: Whitelist/blacklist support
- Time-based Rules: Schedule proxy usage
-
Access LuCI Interface:
- Navigate to
Services→PassWall2
- Navigate to
-
Add Your First Node:
- Go to
Node List→Add Node - Select protocol and fill in server details
- Go to
-
Configure Basic Settings:
- Select your default node
- Configure DNS settings
- Enable transparent proxy
-
Apply Configuration:
- Click
Save & Apply
- Click
PassWall2 supports multiple languages:
- 🇨🇳 Chinese (Simplified/Traditional)
- 🇮🇷 Persian (فارسی)
Language files are organized in luci-app-passwall2/po/ subdirectories.
Service Won't Start
logread | grep passwall2Check system logs, verify node configuration, and ensure required packages are installed.
DNS Issues
- Disable built-in DNS in browsers (Chrome: Settings → Privacy → Security → Disable "Use secure DNS")
- Clear DNS cache after reboot:
ipconfig /flushdns(Windows) or toggle airplane mode (mobile)
Connection Problems
- Test node connectivity
- Check firewall rules
- Verify transparent proxy settings
Enable debug logging in Other Settings and check:
- Main log:
/tmp/log/passwall2.log - Server log:
/tmp/log/passwall2_server.log
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Note: This software is intended for legal use only. Users are responsible for complying with all applicable laws and regulations in their jurisdiction.