
Proxy de reescritura HTTP(S) transparente que admite los modos HTTP, SOCKS5, TPROXY, REDIRECT y NFQUEUE con MitM de HTTPS, reescritura de cabeceras/cuerpo basada en reglas y desincronización de DPI.
English | 简体中文
UA3F es un proxy de reescritura HTTP(S) que, como servicio HTTP, SOCKS5, TPROXY, REDIRECT y NFQUEUE, reescribe de forma eficiente y transparente el tráfico HTTP(S) (por ejemplo, el User-Agent).
UA3F admite múltiples métodos de instalación:
Archivos binarios y paquetes de instalación
La página de Release ya proporciona archivos binarios y paquetes de instalación opkg/apk para las arquitecturas comunes; basta con descargar el paquete de instalación correspondiente a la plataforma e instalarlo manualmente.
Despliegue con Docker:
Ejecutar como proxy SOCKS5:
docker run -p 1080:1080 sunbk201/ua3f -f FFF
Compilación desde el código fuente:
Compilar y construir el binario UA3F:
git clone https://github.com/SunBK201/UA3F.git && cd UA3F
go build -o ua3f main.go
Compilación e instalación en OpenWrt:
git clone https://github.com/openwrt/openwrt.git && cd openwrt
git checkout openwrt-24.10
./scripts/feeds update -a && ./scripts/feeds install -a
git clone https://github.com/SunBK201/UA3F.git package/UA3F
make menuconfig # 勾选 Network->Web Servers/Proxies->ua3f
make download -j$(nproc) V=s
make -j$(nproc) || make -j1 || make -j1 V=sc
# make package/UA3F/openwrt/compile -j1 V=sc # 单独编译 UA3F 安装包
La documentación detallada se encuentra en UA3F
Iniciar UA3F con la configuración predeterminada:
ua3f
Iniciar con el archivo de configuración especificado:
ua3f -c /path/to/config.yaml
Generar el archivo de configuración de plantilla:
ua3f -g
Para obtener instrucciones detalladas sobre la configuración de los parámetros de línea de comandos, consulte 配置说明; para ver ejemplos de archivos de configuración, consulte 配置示例
UA3F es compatible con la página web LuCI de OpenWrt; puede abrir Services -> UA3F para realizar la configuración correspondiente.
Para ver un tutorial de uso rápido, consulte: 猴子也能看懂的 UA3F 使用教程
opkg install sudo
sudo -u nobody /usr/bin/ua3f
shellclash/shellcrash los usuarios recomiendan iniciar con el siguiente comando:
sudo -u shellclash /usr/bin/ua3f
# 如果上面命令报错执行下面该命令
sudo -u shellcrash /usr/bin/ua3f
Parámetros de inicio de línea de comandos relevantes:
-c <config path>: ruta personalizada del archivo de configuración-g: genera el archivo de configuración de plantilla config.yaml en el directorio actual-m <mode>: modo de servicio, compatible con HTTP, SOCKS5, TPROXY, REDIRECT, por defecto SOCKS5-b <bind addr>: dirección de escucha de enlace personalizada, por defecto 127.0.0.1-p <port>: número de puerto, por defecto 1080-l <log level>: nivel de registro, por defecto info, opcional: debug, ubicación de registro por defecto: /var/log/ua3f.log-x: política de reescritura, compatible con GLOBAL, DIRECT, RULE, por defecto GLOBAL-f <UA>: UA personalizado, por defecto FFF-r <regex>: coincidencia personalizada de User-Agent mediante regex, por defecto vacío, lo que significa que todos los User-Agent serán reescritos-s: reemplazo parcial, solo se reemplaza la parte que coincide con la regex-z: reglas de reescritura, en formato json string, solo tiene efecto en el modo de política de reescritura RULEUA3F incorpora un controlador API Server integrado, que proporciona interfaces de consulta y control de información como el estado de funcionamiento de UA3F, las reglas de configuración, etc., y puede habilitarse mediante el parámetro --api-server:
ua3f --api-server <addr:port>
Consulta la documentación de la API en Documentación de la API de UA3F
UA3F admite 5 modos de servicio diferentes; las características y los escenarios de uso de cada modo son los siguientes:
| Modo de servicio | Principio de funcionamiento | ¿Depende de Clash, etc.? | Compatibilidad | ¿Puede ejecutarse junto con Clash, etc.? |
|---|---|---|---|---|
| HTTP | Proxy HTTP | Sí | Alta | Sí |
| SOCKS5 | Proxy SOCKS5 | Sí | Alta | Sí |
| TPROXY | netfilter TPROXY | No | Media | Sí |
| REDIRECT | netfilter REDIRECT | No | Media | Sí |
| NFQUEUE | netfilter NFQUEUE | No | Baja | Sí |
UA3F admite 3 estrategias de reescritura diferentes:
| Estrategia de reescritura | Comportamiento de reescritura | Reescritura de Header | Modos de servicio aplicables |
|---|---|---|---|
| GLOBAL | Se reescriben todas las solicitudes | User-Agent | Aplicable a todos los modos de servicio |
| DIRECT | No se reescribe, solo reenvío | Ninguna | Aplicable a todos los modos de servicio |
| RULE | Se reescribe según las reglas de reescritura | Personalizado | Aplicable a HTTP/SOCKS5/TPROXY/REDIRECT |
Tipos de regla: