Во-первых, я бы использовал "ванильный" Adguard, а не эту шнягу для LuCi. Таким, образом
- установить wget с поддержкой https и сертификаты
opkg update
opkg install wget ca-certificates
-
скачать AdGuardHome_linux_mipsle_softfloat.tar.gz c https://github.com/AdguardTeam/AdGuardHome/releases
-
распаковать
-
создать каталог /usr/bin/AdGuardHome и в него закинуть бинарник AdGuardHome
-
сделать его исполняемым
chmod +x /usr/bin/AdGuardHome/AdGuardHome
-
освободить 53 порт, занятый dnsmasq-ом:
uci set dhcp.@dnsmasq[0].port='0'
uci commit dhcp
service dnsmasq restart
На этом месте у клиентов пропадает доступ в интернет, потому что на 53 порту пока никого нет и на DNS-запросы никто не отвечает.
-
запустить AdGuard
/usr/bin/AdGuardHome/AdGuardHome -s install
-
через пару минут зайти на http://192.168.1.1:3000, там должен быть диалог первичной настройки
-
в диалоге первичной настройки для админки указать All interfaces и порт 1234, а для DNS указать All interfaces и порт 53, также придумать имя и пароль на админку
-
зайти на http://192.168.1.1:1234, настроить там фильтры по вкусу
-
http://192.168.1.1:1234/#dns → Blocking mode: NXDOMAIN
-
http://192.168.1.1:1234/#encryption → ничего не трогать
-
http://192.168.1.1:1234/#dhcp → ничего не трогать
-
http://192.168.1.1:1234/#dns → Upstream DNS servers: 8.8.8.8
-
проверить, что создался файл /etc/inid.d/AdGuardHome, это скрипт, который будет стартовать при запуске роутера.
На этом месте у клиентов должен появиться доступ в интернет. Если не появился, то следует перезапустить роутер и подождать, пока AdGuard стартанет. Стандартный текст на dnskeaktest.com с браузера на клиенте должен показывать сервер 8.8.8.8
В дальнейшем обновлять AdGuard точно так же:
- скачал билд для mipsle
- распаковал
- положил в /usr/bin/AdGuardHome
- сделал исполняемым
chmod +x /usr/bin/AdGuardHome/AdGuardHome
- перезапустил
service AdGuardHome restart
- установить OpenVPN
opkg update
opkg install openvpn-openssl
-
положить ключи из архива в /etc/openvpn https://antizapret.prostovpn.org/antizapret-tcp.zip
-
настроить OpenVPN
uci delete openvpn.custom_config
uci delete openvpn.sample_client
uci delete openvpn.sample_server
uci set openvpn.antizapret=openvpn
uci set openvpn.antizapret.enabled='1'
uci set openvpn.antizapret.nobind='1'
uci set openvpn.antizapret.client='1'
uci add_list openvpn.antizapret.remote='vpn.antizapret.prostovpn.org'
uci set openvpn.antizapret.remote_cert_tls='server'
uci set openvpn.antizapret.dev='tun0'
uci set openvpn.antizapret.dev_type='tun'
uci set openvpn.antizapret.proto='tcp-client'
uci set openvpn.antizapret.cipher='AES-128-CBC'
uci set openvpn.antizapret.resolv_retry='infinite'
uci set openvpn.antizapret.persist_key='1'
uci set openvpn.antizapret.persist_tun='1'
uci set openvpn.antizapret.ca='/etc/openvpn/ca.crt'
uci set openvpn.antizapret.cert='/etc/openvpn/antizapret-useraccess2.crt'
uci set openvpn.antizapret.key='/etc/openvpn/antizapret-useraccess2.key'
uci set openvpn.antizapret.auth_nocache='1'
uci set openvpn.antizapret.pull='1'
uci commit openvpn
service openvpn restart antizapret
- создать и настроить интерфейс для VPN:
uci set network.antizapret=interface
uci set network.antizapret.proto='none'
uci set network.antizapret.ifname='tun0'
uci commit network
service network restart
- создать и настроить зону файерволла
uci add firewall zone
uci set firewall.@zone[-1].name='antizapret'
uci set firewall.@zone[-1].input='REJECT'
uci set firewall.@zone[-1].output='ACCEPT'
uci set firewall.@zone[-1].forward='REJECT'
uci set firewall.@zone[-1].network='antizapret'
uci set firewall.@zone[-1].masq='1'
uci set firewall.@zone[-1].mtu_fix='1'
uci add firewall forwarding
uci set firewall.@forwarding[-1].dest='antizapret'
uci set firewall.@forwarding[-1].src='lan'
uci commit firewall
service firewall restart
- перехват AdGuard-овского трафика и заворот его в VPN
uci set openvpn.antizapret.route='8.8.8.8'
uci commit openvpn
service openvpn restart antizapret
Стандартный текст на dnskeaktest.com с браузера на клиенте должен показывать сервер anticensorship-proxy.antizapret.prostovpn.org
Ошибка в названии сайта - dnsleaktest.com