2
Настройка ruantiblock для совместной работы с прокси сервером xray
gSpot edited this page 2025-12-25 04:19:06 +03:00
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Прокси сервер xray поддерживает некоторые популярные протоколы проксификации и обфускации трафика (для обхода продвинутых методов блокировки средствами DPI), в том числе Shadowsocks, VLESS, VMess, Hysteria2, Trojan и прочие. Доступен в репозитории OpenWrt.

1. Установка xray:

OpenWrt >= 25.12:

apk update
apk add xray-core

OpenWrt <= 24.10:

opkg update
opkg install xray-core

2.1 Конфигурация xray с прозрачным прокси для приёма входящих соединений:

Здесь xray будет принимать соединения в качестве локального прозрачного прокси. Ruantiblock будет настроен в режиме прозрачного прокси для заворачивания трафика заблокированных сайтов в xray.

  • Бэкап стандартного конфига:

    cp /etc/xray/config.json /etc/xray/config.json.bak
    
  • Создание собственного конфига /etc/xray/config.json:

    {
      "log": {
        "loglevel": "warning",
        "access": "none"
      },
      "inbounds": [
        {
          "tag": "tproxy-in",
          "protocol": "dokodemo-door",
          "listen": "0.0.0.0",
          "port": 1100,
          "settings": {
            "network": "tcp,udp",
            "followRedirect": true
          },
          "sniffing": {
            "enabled": true,
            "destOverride": [
              "http",
              "tls"
            ]
          },
          "streamSettings": {
            "sockopt": {
            "tproxy": "tproxy"
            }
          }
        }
      ],
      "outbounds": [
    
      ],
      "routing": {
        "domainStrategy": "AsIs"
      }
    }
    

    Секция inbounds с протоколом типа dokodemo-door ("protocol": "dokodemo-door") определяет параметры прозрачного прокси для входящих соединений. Прокси должен принимать соединения на всех адресах ("listen": "0.0.0.0"), это необходимо для приёма соединений как удалённых хостов из домашней сети, так и локальных приложений самого роутера. Параметры секции outbounds нужно заполнить в соответствии с вашей конфигурацией (VLESS, Shadowsocks и т.п.).

  • Можно запустить xray из консоли, для проверки возможных ошибок в созданном конфигурационном файле:

    xray run -confdir /etc/xray -config /etc/xray/config.json -format json
    

2.2 Включение и запуск xray:

    uci set xray.enabled.enabled="1"
    uci commit xray
    service xray enable
    service xray start

2.3 Настройка ruantiblock в режиме прозрачного прокси:

В настройках ruantiblock включаем режим прозрачного прокси, задаём тип прокси 1 (tproxy) и TCP-порт прокси:

    uci set ruantiblock.config.proxy_mode='3'
    uci set ruantiblock.config.t_proxy_type='1'
    uci set ruantiblock.config.t_proxy_port_tcp='1100'

Также, если необходимо, для пользовательских списков (на примере list1):

    uci set ruantiblock.list1.u_proxy_mode='3'
    uci set ruantiblock.list1.u_t_proxy_type='1'
    uci set ruantiblock.list1.u_t_proxy_port_tcp='1100'

Применение настроек:

    uci commit ruantiblock
    service ruantiblock restart