Este artigo apresenta o HomeProxy-hiddify, um fork do projeto HomeProxy que utiliza o núcleo hiddify-core em vez do sing-box. O resultado é uma interface gráfica para hiddify-core, permitindo a configuração de conexões com diversos protocolos como NaiveProxy, Mieru, ShadowTLS, Hysteria2, XRay, VLESS (XHTTP), VMESS, Trojan, TUIC, entre outros suportados pelo Hiddify App, inclusive via subscriptions. Uma característica distintiva do hiddify-core é o suporte a protocolos de proxy adicionais e funcionalidades do Hiddify App, como fragmentação TLS, além de um completo tradução para o idioma russo.
O foco principal deste tutorial é a instalação dos pacotes luci-app-homeproxy-hiddify e hiddify-core em uma instalação do OpenWRT 24.10.5 (versões 24.10, 25.12 e superiores são suportadas, com suporte experimental para versões anteriores a 23.05). Além disso, será demonstrada a configuração de roteamento dividido (split tunneling) utilizando listas Re:filter, embora qualquer lista nos formatos .srs, .json e texto plano possa ser empregada. O sistema pode ser instalado tanto em uma versão limpa do OpenWRT quanto em derivados como o projeto ImmortalWRT. É necessário um roteador com pelo menos 70 MB de espaço livre e 256 MB de RAM, pois o HomeProxy-hiddify em operação consome a partir de 70 MB de RAM.
1. Instalação do hiddify-core e luci-app-homeproxy-hiddify
Para começar, é preciso instalar o hiddify-core. Para versões com OPKG (até OpenWRT 24.10 inclusive), utilize os seguintes comandos:
bashwget -O /tmp/hiddify-core.ipk "https://github.com/1andrevich/hiddify-core/releases/latest/download/hiddify-core_$(. /etc/os-release; echo "$OPENWRT_ARCH").ipk" opkg update opkg install /tmp/hiddify-core.ipk
Em seguida, instale o luci-app-homeproxy-hiddify juntamente com o pacote de idioma:
bashwget -O /tmp/luci-app-homeproxy-hiddify.ipk "$(wget -qO- 'https://api.github.com/repos/1andrevich/homeproxy-hiddify/releases' | grep -o 'https://github\.com/[^"\\]*luci-app-homeproxy-hiddify[^"\\]*\.ipk' | head -1)" wget -O /tmp/luci-i18n-homeproxy-ru.ipk "$(wget -qO- 'https://api.github.com/repos/1andrevich/homeproxy-hiddify/releases' | grep -o 'https://github\.com/[^"\\]*luci-i18n-homeproxy-ru[^"\\]*\.ipk' | head -1)" opkg install /tmp/luci-app-homeproxy-hiddify.ipk opkg install /tmp/luci-i18n-homeproxy-ru.ipk
Após a instalação, é recomendado reiniciar o serviço rpcd:
/etc/init.d/rpcd restart
Para versões com Alpine APK (OpenWRT 25.12 e superiores):
bashwget -O /tmp/homeproxy-hiddify.pub https://github.com/1andrevich/homeproxy-hiddify/releases/latest/download/homeproxy-hiddify.pub cp /tmp/homeproxy-hiddify.pub /etc/apk/keys/ wget -O /tmp/hiddify-core.apk "https://github.com/1andrevich/hiddify-core/releases/latest/download/hiddify-core_$(. /etc/os-release; echo "$OPENWRT_ARCH").apk" apk update apk add /tmp/hiddify-core.apk
Em seguida, instale o luci-app-homeproxy-hiddify e o pacote de idioma:
bashwget -O /tmp/homeproxy-hiddify.pub https://github.com/1andrevich/homeproxy-hiddify/releases/latest/download/homeproxy-hiddify.pub cp /tmp/homeproxy-hiddify.pub /etc/apk/keys/ wget -O /tmp/luci-app-homeproxy-hiddify.apk "$(wget -qO- 'https://api.github.com/repos/1andrevich/homeproxy-hiddify/releases' | grep -o 'https://github\.com/[^"\\]*luci-app-homeproxy-hiddify[^"\\]*\.apk' | head -1)" wget -O /tmp/luci-i18n-homeproxy-ru.apk "$(wget -qO- 'https://api.github.com/repos/1andrevich/homeproxy-hiddify/releases' | grep -o 'https://github\.com/[^"\\]*luci-i18n-homeproxy-ru[^"\\]*\.apk' | head -1)" apk add /tmp/luci-app-homeproxy-hiddify.apk apk add /tmp/luci-i18n-homeproxy-ru.apk
Após a instalação, reinicie o rpcd:
/etc/init.d/rpcd restart
Para dispositivos com memória limitada, como o Mercusys MR90X, pode-se utilizar a versão com binários compactados (16MB vs 26MB), mas com risco de bugs inesperados. Usuários da versão OpenWRT 23.05 devem instalar a versão ipk do hiddify-core e a versão legacy do luci-app-homeproxy-hiddify.
2. Configuração do Homeproxy-hiddify
Acesse a interface em "Serviços" -> "Homeproxy-Hiddify". Para adicionar um servidor, vá para a aba "Configurações de Nós" -> "Nós". Clique em "Importar links de compartilhamento" para adicionar configurações estáticas de VLESS, Trojan, etc., ou vá para a aba "Assinaturas" para adicionar um link de assinatura (Subscription). Ao adicionar assinaturas, utilize a opção "Atualizar via proxy" apenas após a configuração inicial do HomeProxy-Hiddify. O "Filtrar nós" permite definir um "Modo de lista negra" ou "Modo de lista branca". Salve as configurações antes de atualizar as assinaturas clicando em "Atualizar N assinaturas". Se a atualização falhar, execute o comando uc /etc/homeproxy/scripts/update_subscriptions.uc no terminal.
Para o roteamento dividido, selecione "Modo de roteamento" -> "Roteamento Personalizado". O modo "Global" direciona todo o tráfego pelo nó principal, mas pode aumentar o consumo de dados e o risco de detecção. O modo "JSON Personalizado" oferece flexibilidade adicional. Em "Portas de roteamento", "Apenas portas comuns" é recomendado para evitar problemas de tráfego; a opção "Todas as portas" redireciona todo o tráfego. Os "Portas comuns" (22, 53, 80, 443, etc.) podem ser customizadas em /etc/config/homeproxy. O "Modo de proxy" padrão é "Redirecionamento TCP + TProxy UDP". Para suporte a UDP via TUN, instale ip-full e kmod-tun. A "Suporte a IPv6" é recomendada desativar, pois a maioria das listas não inclui endereços IPv6. O "outbound padrão" é "Diretamente", e o "DNS outbound padrão" é "DNS padrão (da WAN)", que pode ser alterado para um servidor DNS específico em configurações Multi-WAN.
Na aba "Nós de roteamento", adicione um novo nó, por exemplo, "proxy". Configure "Nós URLTest" com os nós desejados. O "URL de teste" é uma página para verificar a conectividade (ex: http://captive.apple.com/hotspot-detect.html). "Intervalo de teste" (padrão 180s) e "Tolerância de teste" (padrão 50ms) ajustam a frequência e a sensibilidade da troca de nós. "Tempo limite ocioso" (padrão 1800s) pausa os testes quando não há atividade de rede.
Na aba "Conjunto de regras", adicione listas como as do Re:filter. Para "ipsum", use o tipo "Remoto", formato "Arquivo binário" (srs) e o URL https://github.com/1andrevich/Re-filter-lists/releases/latest/download/ruleset-ip-refilter_ipsum.srs, definindo "Outbound" como "proxy" e "Intervalo de atualização" (ex: 1d). Repita o processo para "domains" com o URL https://github.com/1andrevich/Re-filter-lists/releases/latest/download/ruleset-domain-refilter_domains.srs.
Em "Regras de roteamento", crie regras para direcionar os IPs e domínios das listas para o "proxy". Para tráfego VoIP (Telegram, WhatsApp, Discord, Viber), adicione regras para portas UDP e TCP/UDP específicas, como 1400, 8443, e faixas de portas como 50000:65535. As configurações podem ser editadas diretamente no arquivo /etc/config/homeproxy.
Para a configuração de DNS, vá para "Servidores DNS". Adicione um servidor DNS "direto" (ex: Яндекс DNS 77.88.8.1) com "Outbound" "Diretamente". Em seguida, adicione um servidor DNS "proxy" (ex: Google DNS dns.google) com "Outbound" "proxy". Na aba "Regras de DNS", crie uma regra "Rota" para "dns_proxy" para domínios de proxy. Defina "Estratégia de DNS padrão" e "Servidor DNS padrão" como "dns_direct" nas "Configurações de DNS".
3. Configurações Adicionais do Homeproxy
Na seção "Controle de Acesso", "Gerenciamento de Interfaces" permite configurar interfaces de entrada e saída. Para "Multi-WAN", a "Política de IP para LAN" oferece opções como "Proxy apenas os especificados" ou "Proxy tudo exceto os especificados". O "Modo de filtragem de proxy" também pode ser configurado para o "Modo Jogo", excluindo tráfego UDP de dispositivos específicos.
Em "Configurações do Servidor", é possível adicionar "inbounds" adicionais, como um proxy HTTP/SOCKS5 na porta 20170. Se estiver usando "Tun TCP/UDP", crie um novo "interface" em "Rede" -> "Firewall" para o dispositivo singtun0 e configure as "Configurações de firewall" para wan.
4. JSON Personalizado
Este modo, exclusivo do HomeProxy-hiddify, permite usar uma configuração de texto em /etc/homeproxy/hiddify-c.json. Para usar redirecionamento e TProxy com regras de firewall, adicione os parâmetros inbounds (dns-in, mixed-in, redirect-in, tproxy-in) ao seu JSON. É crucial adicionar a default_mark na seção route para evitar loops de roteamento TProxy, garantindo que o valor coincida com o self_mark em /etc/config/homeproxy (padrão: 100). O hiddify-core, diferentemente do sing-box, não suporta routing_mark para cada outbound.
Informações adicionais sobre o HomeProxy-Hiddify podem ser encontradas na wiki do projeto. O autor também mantém um canal no Telegram para atualizações e suporte.





