Как стать автором
Обновить

Обход блокировок: настройка сервера XRay для Shadowsocks-2022 и VLESS с XTLS-Vision, Websockets и фейковым веб-сайтом

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров259K
Всего голосов 37: ↑35 и ↓2+42
Комментарии108

Комментарии 108

ЗакрепленныеЗакреплённые комментарии
  "inbounds": [
    {
      "listen": "/dev/shm/Xray-VLESS-gRPC.socket,0666",
      "protocol": "vless",
      "settings": {
        "clients": [
          {
            "id": "123"
          }
	],
	"decryption": "none"
      },
      "streamSettings": {
        "network": "grpc",
        "grpcSettings": {
          "serviceName": "1234"
      	}
      }
    },
  {
       "listen": "0.0.0.0",
       "port": 443,
       "protocol": "vless",
       "settings": {
    	   "clients": [
        	{
                "id": "123",
                "flow": "xtls-rprx-vision"
                 }
            ],
		"decryption": "none",
		"fallbacks": [
                    {
                        "dest": "8001",
                        "xver": 1
                    },
                    {
                        "alpn": "h2",
                        "dest": "8002",
                        "xver": 1
                    }
		]
	},
	  "streamSettings": {
                "network": "tcp",
                "security": "tls",
                "tlsSettings": {
                    "rejectUnknownSni": true,
                    "minVersion": "1.2",
                    "certificates": [
                        {
                            "ocspStapling": 3600,
                            "certificateFile": "/etc/letsencrypt/live/domain/fullchain.pem",
                            "keyFile": "/etc/letsencrypt/live/domain/privkey.pem"
                        }
                    ]
                }
            },
            "sniffing": {
                "enabled": true,
                "destOverride": [
                    "http",
                    "tls"
                ]
            }
	}
],

grpc плюс vision. nginx слушает только 80/8001/8002 порт, с 443 идет проброс с xray на nginx, если клиент не опознан. grpc работает через 443 с таким конфигом.

nginx.conf из ключевого

http
{
map $http_upgrade $connection_upgrade {
        default upgrade;
        ""      close;
    }

map $proxy_protocol_addr $proxy_forwarded_elem {
        ~^[0-9.]+$        "for=$proxy_protocol_addr";
        ~^[0-9A-Fa-f:.]+$ "for=\"[$proxy_protocol_addr]\"";
        default           "for=unknown";
    }

map $http_forwarded $proxy_add_forwarded {
        "~^(,[ \\t]*)*([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?(;([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?)*([ \\t]*,([ \\t]*([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?(;([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?)*)?)*$" "$http_forwarded, $proxy_forwarded_elem";
        default "$proxy_forwarded_elem";
    }

server {
    listen 80;
    return 301 https://$host$request_uri;
     server_tokens off;
}

server {
    listen 127.0.0.1:8001 proxy_protocol;
    listen 127.0.0.1:8002 http2 proxy_protocol;
    set_real_ip_from 127.0.0.1;
location / {
    sub_filter                         $proxy_host $host;
    sub_filter_once                    off;
    proxy_pass                         https://thisis.com;
    proxy_set_header Host              $proxy_host;
    proxy_http_version                 1.1;
    proxy_cache_bypass                 $http_upgrade;
    proxy_ssl_server_name              on;
    proxy_set_header Upgrade           $http_upgrade;
    proxy_set_header Connection        $connection_upgrade;
    proxy_set_header X-Real-IP         $proxy_protocol_addr;
    proxy_set_header Forwarded         $proxy_add_forwarded;
    proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-Host  $host;
    proxy_set_header X-Forwarded-Port  $server_port;
    proxy_connect_timeout              60s;
    proxy_send_timeout                 60s;
    proxy_read_timeout                 60s;
    }

location /1234 {
    if ($content_type !~ "application/grpc") {
    return 404;
    }
    client_max_body_size 0;
    client_body_buffer_size 512k;
    grpc_set_header X-Real-IP $remote_addr;
    client_body_timeout 52w;
    grpc_read_timeout 52w;
    grpc_pass unix:/dev/shm/Xray-VLESS-gRPC.socket;
    }
}
}

НЛО прилетело и опубликовало эту надпись здесь

Xray имеет скрипт для установки который скачает последнюю версию и создаст юниты systemd. Почему не использовали его?

https://github.com/XTLS/Xray-install

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

Большое спасибо за цикл статей.

особенная благодарность за  Nekoray/Nekobox . Я когда изучал вопрос этот как-то проглядел это чудо)

Статья интересная, так почитать что что-то там придумали. Но классический ShadowSocket избыточен на данный с chacha20. Китайцы ходят вроде на ура и без проблем. А на тему заглушек актуально наверное для тех кто предоставляет это как сервис. А когда ты и твои друзья условно пользуются одним сервером – вряд ли будут ползать искать

Сейчас у меня две виртуалки, одна в РФ и там нет роскомнадзора, другая в США для нетфликса и прочих сервисов которые наши айпи забанили. Заплатил сразу за год, обе обошлись мне в 2800 в сумме. 230 рублей/мес это не такие уж большие деньги за комфорт.

Поставил Shadowsocks одной командой, сделал sub для shadowrocket. Туда указал два сервера, и определил с помощь config какие ресурсы куда должны ходить. 4 месяца – идеально. Макбук и iphone ходит в зависимости от адреса через нужную проксю. Но большая часть в Direct.

НЛО прилетело и опубликовало эту надпись здесь

При этом в инстаграмме китайцы продают классический ss пока что. Все таки повторюсь, классно что технологии есть, развиваются. Но пока они слишком избыточны.

а как эти новые технологии по скорости доступа, насколько все плохо или хорошо. Потому что классический ovpn рвет даже первую итерацию SS как тузик грелку. На сайтах в целом разницы не видишь, зато видно как проседает скорость при скачивании к примеру больших файлов с сайтов. Например тот же самый ютуб если запроксировать, заметно становится сразу на 4к роликах он прям туго начинает кэшировать

НЛО прилетело и опубликовало эту надпись здесь

Спасибо за ваш труд, вон оказывается сколько всяких интересных технологий существует, не TORом и VPNом единым, даже GUI красивый и функциональный сделали и не один)

хз что там по dyndns, но как написано в етой статье есть ещё какой-то сервис freemyip для тех кто ни хочет регесрировать домемные имена

НЛО прилетело и опубликовало эту надпись здесь

На Freenom в свое время можно было бесплатно доменное имя сделать. На этой неделе заходил — пишут, технические неполадки, новых не даем. Не знаю, оклемаются ли, но как альтернатива — домен sbs можно на год взять за 3 бакса. Без продления (оно уже 9).

НЛО прилетело и опубликовало эту надпись здесь

sbs себе заказывал пару дней назад за bitcoin, но не уверен, что стоит давать ссылку на регистратора.

Freenom через год попросил платить за домен. Есть еще no-ip.com. Третий уровень дают. Раз в месяц надо тыкнуть, что пользуешься.

По freenom - ты не успел тыкнуть на «продлить», там что-то около двух недель до окончания срока «аренды» нужно нажать, не успеешь - какое-то время домен вернуть можно только за деньги. Потом он возвращался в общий пул. Заранее продлить или сразу на больше чем на год - он не давал. А сейчас вообще ругается на технические неполадки

низкий поклон. Пока все работает через sshuttle думаешь, что сойдет итак. А тут видимо надо готовиться уже заранее. Сам пробовал начинать смотреть и изучать, но информация настолько разрозненна, что бросал на пол пути даже SoftEther.

Интересно мнение опытных людей насколько подозрительно выглядит sshuttle работающий через websocket соединение. В теории это просто https сессия, но возможно по паттернам траффика можно заподозрить что-то неладное?

НЛО прилетело и опубликовало эту надпись здесь

Вот клиент, которым пользуюсь лично я: https://github.com/vi/websocat. Можно вас попросить рассказать или дать линку на документацию как я могу проверить TLS fingerprint?

НЛО прилетело и опубликовало эту надпись здесь

Все понятно, спасибо!

Cloak тоже на Go написан... у него fingerprint на go-похожий не будет ли?

НЛО прилетело и опубликовало эту надпись здесь
  "inbounds": [
    {
      "listen": "/dev/shm/Xray-VLESS-gRPC.socket,0666",
      "protocol": "vless",
      "settings": {
        "clients": [
          {
            "id": "123"
          }
	],
	"decryption": "none"
      },
      "streamSettings": {
        "network": "grpc",
        "grpcSettings": {
          "serviceName": "1234"
      	}
      }
    },
  {
       "listen": "0.0.0.0",
       "port": 443,
       "protocol": "vless",
       "settings": {
    	   "clients": [
        	{
                "id": "123",
                "flow": "xtls-rprx-vision"
                 }
            ],
		"decryption": "none",
		"fallbacks": [
                    {
                        "dest": "8001",
                        "xver": 1
                    },
                    {
                        "alpn": "h2",
                        "dest": "8002",
                        "xver": 1
                    }
		]
	},
	  "streamSettings": {
                "network": "tcp",
                "security": "tls",
                "tlsSettings": {
                    "rejectUnknownSni": true,
                    "minVersion": "1.2",
                    "certificates": [
                        {
                            "ocspStapling": 3600,
                            "certificateFile": "/etc/letsencrypt/live/domain/fullchain.pem",
                            "keyFile": "/etc/letsencrypt/live/domain/privkey.pem"
                        }
                    ]
                }
            },
            "sniffing": {
                "enabled": true,
                "destOverride": [
                    "http",
                    "tls"
                ]
            }
	}
],

grpc плюс vision. nginx слушает только 80/8001/8002 порт, с 443 идет проброс с xray на nginx, если клиент не опознан. grpc работает через 443 с таким конфигом.

nginx.conf из ключевого

http
{
map $http_upgrade $connection_upgrade {
        default upgrade;
        ""      close;
    }

map $proxy_protocol_addr $proxy_forwarded_elem {
        ~^[0-9.]+$        "for=$proxy_protocol_addr";
        ~^[0-9A-Fa-f:.]+$ "for=\"[$proxy_protocol_addr]\"";
        default           "for=unknown";
    }

map $http_forwarded $proxy_add_forwarded {
        "~^(,[ \\t]*)*([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?(;([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?)*([ \\t]*,([ \\t]*([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?(;([!#$%&'*+.^_`|~0-9A-Za-z-]+=([!#$%&'*+.^_`|~0-9A-Za-z-]+|\"([\\t \\x21\\x23-\\x5B\\x5D-\\x7E\\x80-\\xFF]|\\\\[\\t \\x21-\\x7E\\x80-\\xFF])*\"))?)*)?)*$" "$http_forwarded, $proxy_forwarded_elem";
        default "$proxy_forwarded_elem";
    }

server {
    listen 80;
    return 301 https://$host$request_uri;
     server_tokens off;
}

server {
    listen 127.0.0.1:8001 proxy_protocol;
    listen 127.0.0.1:8002 http2 proxy_protocol;
    set_real_ip_from 127.0.0.1;
location / {
    sub_filter                         $proxy_host $host;
    sub_filter_once                    off;
    proxy_pass                         https://thisis.com;
    proxy_set_header Host              $proxy_host;
    proxy_http_version                 1.1;
    proxy_cache_bypass                 $http_upgrade;
    proxy_ssl_server_name              on;
    proxy_set_header Upgrade           $http_upgrade;
    proxy_set_header Connection        $connection_upgrade;
    proxy_set_header X-Real-IP         $proxy_protocol_addr;
    proxy_set_header Forwarded         $proxy_add_forwarded;
    proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-Host  $host;
    proxy_set_header X-Forwarded-Port  $server_port;
    proxy_connect_timeout              60s;
    proxy_send_timeout                 60s;
    proxy_read_timeout                 60s;
    }

location /1234 {
    if ($content_type !~ "application/grpc") {
    return 404;
    }
    client_max_body_size 0;
    client_body_buffer_size 512k;
    grpc_set_header X-Real-IP $remote_addr;
    client_body_timeout 52w;
    grpc_read_timeout 52w;
    grpc_pass unix:/dev/shm/Xray-VLESS-gRPC.socket;
    }
}
}

НЛО прилетело и опубликовало эту надпись здесь

То есть я правильно понял, XRay ждет VLESS+XTLS, если нет - то передает запрос на Nginx, а уже Nginx смотрит, что там URL для gRPC и передает обратно на XRay? Запутанно, но должно сработать наверное.

по логике так. работает

Или это для случая, когда TLS ALPN указан как http/1.1

мне кажется именно для этого, http1, http2 детектить.

НЛО прилетело и опубликовало эту надпись здесь

Добрый день.
Можете помочь с настройкой xray grpc по вашему конфигу?
Переадресация на сайт работает, сертификат лецинкрипт, но не получается подключиться с клиента на xray.
Если у вас есть рабочая сборка, можете хотябы скинуть список команд и конфиги?
Ну или если не затруднит, посмотреть что было настроено.
Можно через трансляцию в дискорд или как-то ещё.

не получилось только kcp настроить, либо shadowrocket что-то не так умеет

	{
            "protocol": "vless",
            "port": 443,
            "settings": {
                "decryption":"none",
                "clients": [
                    {"id": "123"}
                ]
            },
            "streamSettings": {
                "network": "kcp",
                "mtu": 1360,
                "uplinkCapacity":90,
                "downlinkCapacity":90,
                "congestion":false,
                "header":{
                    "type":"dtls"
                },
                "kcpSettings": {
                    "seed": ""
                }
            }
        },

в логе xray

[Info] transport/internet/kcp: discarding invalid payload

НЛО прилетело и опубликовало эту надпись здесь

Точно. Без указания header в shadowrocket работает. С любым совпадающим header не работает. Видимо не поддерживается обсфукация в shadowrocket.

Криво (используется host-network потому что иначе не работает IPv6, а с ней оно слушает 48800 порт не только на localhost, а в открытую, ибо через 127.0.0.1 не работает - знающие люди, подскажите, как пофиксить)

Caddy запускаем во внешней сетке, скажем reverse-proxy. Ее естественно перед этим создаем

docker network create reverse-proxy
services:
  caddy:
    container_name: caddy
    image: caddy:latest
    restart: unless-stopped
    networks:
      - reverse-proxy
    ports:
      - "80:80"
      - "443:443"
      - "443:443/udp"
    volumes:
      - $PWD/Caddyfile:/etc/caddy/Caddyfile
      - ./data:/data
      - ./config:/config
networks:
  reverse-proxy:
    external: true

В этой же сетке запускаем контейнер xray.

version: '3'
services:
  xray:
    image: teddysun/xray
    container_name: xray
    volumes:
      - .:/etc/xray
    networks:
      - reverse-proxy

networks:
  reverse-proxy:
    external: true

В Caddyfile тогда будет

example.com {
  handle_path /myverysecretpath {
    reverse_proxy xray:48800      
  }
}

К слову можно у себя запускать прокси тоже в докере

config.json

{
    "log": {
        "loglevel": "warning"
    },
    "inbounds": [
        {
            "port": 10800,
            "listen": "0.0.0.0",
            "protocol": "socks",
            "settings": {
                "udp": true
            }
        }
    ],
    "outbounds": [
        {
            "protocol": "vless",
            "settings": {
                "vnext": [
                    {
                        "address": "example.com", 
                        "port": 443,
                        "users": [
                            {
                                "id": "UUID",
                                "encryption": "none"
                            }
                        ]
                    }
                ]
            },
            "streamSettings": {
                "network": "ws",
                "security": "tls",
                "tlsSettings": {
                    "serverName": "example.com" 
                },
                "wsSettings": {
                    "path": "/myverysecretpath" 
                }
            }
        }
    ]
}

docker-compose.yml

version: '3'
services:
  xray-client:
    image: teddysun/xray
    container_name: xray-client
    ports:
      - "10800:10800"
    volumes:
      - .:/etc/xray

НЛО прилетело и опубликовало эту надпись здесь

Я ipv6 не использую. Поэтому такой вариант работает.

Возможно стоит попробовать включить поддержу ipv6 в самом docker

https://docs.docker.com/config/daemon/ipv6/

Появился вопрос. А существует какой либо софт который умеет кроме выбора родительского прокси по правилам дополнительно делать смену порта?
Как пример:
при обращении на host.com:11465 использовать proxy1.com:1080 и коннектиться к host.com:465
а при обращении на host.com:12465 использовать proxy2.com:1080 и коннектиться к host.com:465


Понятное дело что все можно разрулить на стенке и использовать что-то типа https://github.com/ginuerzh/gost или socat. Но конфиг уж очень не портативный, перенос на другой комп — боль и печаль


Этот изврат нужен чтобы в одном почтовом клиенте использовать разные акки на одном домене но с разных ип адресов. Или может кто знает почтового клиента кто умеет различные прокси для различных акков использовать

НЛО прилетело и опубликовало эту надпись здесь

Спасибо, гляну

А есть примеры конфигов, а то документация больше для тех кто и так знает как настраивать этот комбайн :( Т.е. больше документация именно по api и опциям конфига, а не по тому, как это все применять

А можно такую же статью, но для максимальных чайников?) Для тех кто только outline ставил)))

А чем плох outline?

Не плох ничем, но всегда хочется чему то новому научится, тем более это же более надёжное решение...

он слишком прост, нет обсфукации. его уже детектят, хотя и vless вроде как тоже.

https://github.com/Jigsaw-Code/outline-ss-server/issues/124

ну и плюс outline-server ставит прометея, без которого можно обойтись.

https://www.opencve.io/cve?vendor=prometheus

Я правильно понимаю что если все сделать как в этом гайде то можно подключиться как по ss так и по vless?

Ещё не совсем понятен момент с CDN, если мне заблочат прямой доступ к моему vps то тогда что?

Подскажите, пожалуйста, как потраблшутить nekoray на windows? Как будто петля, или что-то не так с маршрутизацией, nekoray 80% cpu, в его логе льется куча строк каких-то подключений, интернет пропадает (делал по вашей инструкции и vless direct, и vless-ws). При этом этот же конфиг, расшаренный по куаркоду на андроид - работает, подключается, трафик всего телефона идет через xray-сервер.

У меня вопрос по маршрутизации.

Попытался поставить правила geosite:ru и geoip:ru как здесь указано. Но geosite:ru вообще не принимает xray, ссылаясь на отсутствие директивы ru (cn работает, проверил). Проверка по geoip не вылетает, но похоже не работает.

В документации на сайте проекта и в репозиториях ru директив не нашел, китайцы делают под себя и правила обновляют для cn доменов.

Фильтровать российские домены смог только через regexp:

"rules": [
            {
                "type": "field",
                "domain": [
                    "regexp:^([\\w\\-\\.]+\\.)ru$"
                ],
                "outboundTag": "direct"
            }
        ]

Так все хорошо и ru домены идут напрямую.

Проверка по geoip не вылетает, но похоже не работает.

А вы geoip:ru писали в блок "ip" или в блок "domain"? Я на всякий случай уточняю.
За регэксп спасибо.

В ip блок.

Аналогично, geosite:ru не заработал.

geoip:ru у меня корректно работает и на сервере и на клиенте. Попробуйте "outboundTag": "block", так нагляднее. Ну и, конечно, удостовериться, что целевой ip действительно российский.

Спасибо, поэкспериментировал, победил кажется.

Я сделал два прокси на разные домены, один на CDN, другой напрямую. Через балансер. Такая связка заработала только так, конфиг клиента:

        "rules": [
            {
                "type": "field",
                "ip": [
                    "geoip:private"
                ],
                "outboundTag": "direct"
            },
            {
                "type": "field",
                "ip": [
                    "geoip:ru"
                ],
                "outboundTag": "ru_ip"
            },
            {
                "type": "field",
                "domain": [
                    "regexp:^([\\w\\-\\.]+\\.)ru$"
                ],
                "outboundTag": "ru_address"
            },
            {
                "type": "field",
                "inboundTag": [
                    "inbound"
                ],
                "balancerTag": "balancer"
            }
        ],
        "balancers": [
            {
                "tag": "balancer",
                "selector": [
                    "proxy_1",
                    "proxy_2"
                ]
            }
        ]
  

Соответственно нужны freedom-теги ru_ip, ru_address и inbound тег "inbound"

Сначала клиент пропускает локальные ip, затем ru айпишники, потом адрес по регекспу.

Если ничего не совпадает направляет на балансер.

Если сервер один, можно часть с балансерами удалить.

НЛО прилетело и опубликовало эту надпись здесь

Я пользуюсь голым xray в docker в качестве клиента. У меня суффикс не заработал. В документации я такой настройки не нашел, подозреваю это некобокса обертка какая-то.

подскажите как надо прописать на сервере чтобы ru сайты на прямую открывались ?

НЛО прилетело и опубликовало эту надпись здесь

"regexp:.ru$"

"regexp:.рф$"

не работает?

Подскажите, пожалуйста, как проверить работает ли при использовании Reality ,что

"TLS подключение передается на какой-нибудь другой абсолютно реальный хост с TLS (например, google.com или gosuslugi.ru) "

А т не очень понятно, эта обфускация работает вообще или нет

НЛО прилетело и опубликовало эту надпись здесь

Ребят, мне очень не понятен пункт 6. Очень рекомендуется настраивать на клиентах правила маршрутизации ..... Мжно по подробней где это указать в клиентах и где/куда на сервере прописывать?

НЛО прилетело и опубликовало эту надпись здесь

Помогите с конфигом nginx для fallback-переадресации на левый адрес или запроса логина - пароля.

НЛО прилетело и опубликовало эту надпись здесь

На своем серваке задержка в разы выше, хотя на бесплатных серверах 140-250)

НЛО прилетело и опубликовало эту надпись здесь

Подскажите, пожалуйста, что я не так делаю? Все делал по инструкции ставил через bash. Ошибка появляется после команды journalctl -u xray. Выставлял права, но не помогает.
open /etc/letsencrypt/live/example.com/fullchain.pem: permission denied

НЛО прилетело и опубликовало эту надпись здесь

От пользователя root. Я каждой директории права выдал. Я уже и на debian пробовал, не получается.

НЛО прилетело и опубликовало эту надпись здесь

Если сам сайт cloudflare заблочен, то через cdn уже не получится выйти на заблоченный сервер и продолжать использовать впн? Есть страна такая как Туркмения где тонны подсеток в блоке и сам клаудфаер, для такой цензуры было бы удобно получить доступ к заблоченной впске

НЛО прилетело и опубликовало эту надпись здесь

Спасибо что отвечаете, вы реально про! Вроде проверили в тм заблочен клаудфаер, но gcore работает, значит можно за ним закрепить забаненный сервер и юзать его как ВПН? Действия все те же что и с клаудфаер прокси или там не такие настройки?

НЛО прилетело и опубликовало эту надпись здесь
Значит не поднять впн тогда через cdn?
Значит не поднять впн тогда через cdn?

НЛО прилетело и опубликовало эту надпись здесь

У меня открывает эти ссылки в браузере хоть и с ошибкой 404, у них даже этого нет. Третий вариант с websockets only будет с cdn proxy работать без поднятия сайта?

Подскажите как правильно изменить порт для vless. Как только меняю стандартный 443 на любой другой открытый, фейковый сайт перестает открываться, в браузере ошибка - не удается получить доступ к сайту. Порты само собой открыты, никаких запретов на их использование нет. В журнале или через systemctl status ни xray ни nginx никаких ошибок не выдают.

НЛО прилетело и опубликовало эту надпись здесь

У меня другой прокси на серваке был запущен (для телеграма), который тоже на 443 порту по умолчанию работал. Я хотел этот прокси на другой порт перевесить, но как только в конфиге менял 443 на другой соседний, фейковый сайт переставал открываться.

Error 503 Backend unavailable, connection timeout

Backend unavailable, connection timeout

Error 54113

Details: cache-fra-etou8220068-FRA 1682956545 3753448921

Varnish cache server

Подскажите почему такая ошибка выскакивает? все делал как написано в Marzban-examples Но какая то беда с сертификатом я так понимаю(

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

Подскажите, пожалуйста, что делаю не так. На двух компьютерах все настроил, все работает, на третьем - VLESS настроить получилось, а вот Shadowsoks при попытке сделать URL test выдает ошибку: "wsarecv: An existing connection was forcibly closed by the remote host." Что это может быть и как это пофиксить?

НЛО прилетело и опубликовало эту надпись здесь

Можно ли показать(в качестве примера), как должен выглядеть конфиг nginx для ssl_preread модуля ? А то я не силен в этом

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

"А теперь представим, что у вас на VPS уже установлен веб-сервер с каким-нибудь сайтом, уже настроены TLS-сертификаты, и все остальное, и нужно просто аккуратно добавить прокси, желательно не ломая конфиг сервера "

НЛО прилетело и опубликовало эту надпись здесь

У меня Gcore ns севера открываются в браузере хоть и с ошибкой 404 (но она красочная), у товарища в туркмении даже этого не видно, пишет как будто интернета нет. Думаю не судьба там настроить cdn прокси...

>О том, что эта версия протокола именно 2022 говорит method "2022-blake3-aes-128-gcm". Ключ - любой в шестнадцатеричной форме, его длина зависит от типа шифра, в примере 128-битный шифр, если используете 256-битный, то ключ, соответственно, должен быть в два раза длиннее.

Как минимум в свежих версиях sing-core/xray, ключ должен быть base64, a не hex.

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

есть веб сайт с nginx и сертификатом ! vision и реалити будут ли работать и какие настройки надо сделать ?

Можно вопрос про SNI?

У меня это поле сейчас не заполнено, и все работает. В каких случаях его можно/нужно использовать? Если его заполнить, то все сломается?

Просто подумалось, что вдруг его можно заполнить чем-то "известным", входящим в пакет "безлимитных мессенджеров". Вдруг получится у Туркишей добираться до своего прокси и интернетом пользоваться таким образом в рамках "Miles&Smiles Classic Members: Unlimited Messaging". Вряд ли по IP они это проверяют.

Или на мобильных тарифах бывают "безлимитные соцсети"....

НЛО прилетело и опубликовало эту надпись здесь

Ага, прояснилось. Спасибо!

А может кто-нибудь подсказать, как в json конфигурации кастомных маршрутов для NekoBox указать сайты, которые идут через proxy? Напрямую - это "outbound": "direct". А как через proxy? А то почему-то установка базовых маршрутов через квадратные поля не работает.

НЛО прилетело и опубликовало эту надпись здесь

правила по суффиксам Nekobox не умеет

В 3.26 уже умеет.

{
    "rules": [
        {
            "domain": [
                "regexp:.*\\.ru$"
            ],
            "outboundTag": "direct",
            "type": "field"
        },
        {
            "domain": [
                "regexp:.*\\.xn--p1ai$"
            ],
            "outboundTag": "direct",
            "type": "field"
        }
    ]
}

geoip:ru и geoip:private не взлетели

Подскажите плиз, что не нравится установеленному XRay-core на моем сервере? Вот его /usr/local/etc/xray/config.json:


{
    "log": {
        "loglevel": "warning"
    },
    "inbounds": [
        {
            "port": 443,
            "protocol": "vless",
            "settings": {
                "clients": [
                    {
                        "id": "66666666-CCCC-4444-8888-999999999999",
                        "flow": "xtls-rprx-vision",
                        "level": 0,
                        "email": "myname@mydomain.com"
                    }
                ],
                "decryption": "none",
                "fallbacks": [
                    {
                        "dest": 80
                    }
                ]
            },
            "streamSettings": {
                "network": "tcp",
                "security": "xtls",
                "xtlsSettings": {
                    "alpn": [
                        "http/1.1"
                    ],
                    "certificates": [
                        {
                            "certificateFile": "/etc/letsencrypt/live/gehxxxx.xxxx.xxx/fullchain.pem",
                            "keyFile": "/etc/letsencrypt/live/gehxxxx.xxxx.xxx/privkey.pem"
                        }
                    ]
                }
            }
        }
    ],
    "outbounds": [
        {
            "protocol": "freedom"
        }
    ]
}

А вот что в статусе:

root@ubuntu:~# systemctl status xray
× xray.service - Xray Service
Loaded: loaded (/etc/systemd/system/xray.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/xray.service.d
└─10-donot_touch_single_conf.conf
Active: failed (Result: exit-code) since Tue 2024-03-26 21:51:04 UTC; 4min 23s ago
Docs: https://github.com/xtls
Main PID: 662 (code=exited, status=23)
CPU: 19ms

Mar 26 21:51:03 ubuntu systemd[1]: Started Xray Service.
Mar 26 21:51:04 ubuntu xray[662]: Xray 1.8.9 (Xray, Penetrates Everything.) 37f8654 (go1.22.1 linux/amd64)
Mar 26 21:51:04 ubuntu xray[662]: A unified platform for anti-censorship.
Mar 26 21:51:04 ubuntu xray[662]: 2024/03/26 21:51:04 [Info] infra/conf/serial: Reading config: /usr/local/etc/xray/config.json
Mar 26 21:51:04 ubuntu xray[662]: Failed to start: main: failed to load config files: [/usr/local/etc/xray/config.json] > infra/conf: Please use VLESS flow "xtls-rprx-vision" with TLS or REALITY.
Mar 26 21:51:04 ubuntu systemd[1]: xray.service: Main process exited, code=exited, status=23/n/a
Mar 26 21:51:04 ubuntu systemd[1]: xray.service: Failed with result 'exit-code'.
root@ubuntu:~#

Что ему не нравится?

НЛО прилетело и опубликовало эту надпись здесь
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории