Pull to refresh

Comments 107

PinnedPinned comments
  "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;
    }
}
}

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here

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

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

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

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

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

UFO just landed and posted this here

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

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

UFO just landed and posted this here

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

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

UFO just landed and posted this here

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

UFO just landed and posted this here

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

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

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

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

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

UFO just landed and posted this here

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

UFO just landed and posted this here

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

UFO just landed and posted this here
  "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;
    }
}
}

UFO just landed and posted this here

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

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

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

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

UFO just landed and posted this here

не получилось только 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

UFO just landed and posted this here

Точно. Без указания 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

UFO just landed and posted this here

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


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


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

UFO just landed and posted this here

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

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

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

Я правильно понимаю что если все сделать как в этом гайде то можно подключиться как по 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"? Я на всякий случай уточняю.
За регэксп спасибо.

Аналогично, 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 айпишники, потом адрес по регекспу.

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

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

UFO just landed and posted this here

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

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

UFO just landed and posted this here

"regexp:.ru$"

"regexp:.рф$"

не работает?

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

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

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

UFO just landed and posted this here

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

UFO just landed and posted this here

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

UFO just landed and posted this here

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

UFO just landed and posted this here

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

UFO just landed and posted this here

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

UFO just landed and posted this here

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

UFO just landed and posted this here

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

UFO just landed and posted this here
Значит не поднять впн тогда через cdn?
Значит не поднять впн тогда через cdn?

UFO just landed and posted this here

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

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

UFO just landed and posted this here

У меня другой прокси на серваке был запущен (для телеграма), который тоже на 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 Но какая то беда с сертификатом я так понимаю(

UFO just landed and posted this here
UFO just landed and posted this here

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

UFO just landed and posted this here

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

UFO just landed and posted this here

Ставил xray перед nginx. Все работает и сайт через nginx тоже. Где то был мой коммент.

UFO just landed and posted this here

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

UFO just landed and posted this here

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

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

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

UFO just landed and posted this here
UFO just landed and posted this here

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

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

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

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

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

UFO just landed and posted this here

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

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

UFO just landed and posted this here

правила по суффиксам 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:~#

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

Значение параметра "security" должно быть "tls" а не "xtls". "xtls" надо было писать в старых версиях, а в современных просто "tls" (даже если вы на самом деле настраиваете XTLS). Посмотрите пример конфига из статьи внимательнее.

Sign up to leave a comment.

Articles