easy-xray/CDN.ru.md
2024-03-26 17:00:10 +03:00

3.5 KiB
Raw Blame History

Дополнительный канал связи

Если вы делитесь доступом к своему серверу с другими людьми, рано или поздно IP-адрес вашего сервера может утечь к РКН, который добавит его в список блокируемых сайтов, доступ к серверу при этом пропадёт. Если же сервер работает через сеть доставки контента (content delivery network, CDN), то для доступа используется не IP-адрес, а доменное имя. Для того, чтобы заблокировать сервер в этом случае нужно будет заблокировать один из серверов доменных имён CDN-провайдера (на котором "резолвится" ваше доменное имя). На этом сервере имён может резолвиться большое число других сайтов (в том числе российских), и в случае блокировки они тоже перестанут работать. Так что, возможно, РКН не станет идти на такие риски и не будет блокировать ваш сервер даже в случае обнаружения.

CDN от Cloudflare позволяет бесплатно транспортировать grpc-трафик, однако вам потребуется купить какое-либо доменное имя. Чтобы понять общую концепцию работы xray через CDN, прочитайте вот эту статью.

До запуска установки xray скопируйте ваши сертификаты Cloudflare cert.pem и cert.key в директорию со скриптом ex.sh!

Vless не может быть сконфигурирован с fallback при использовании grpc, соответственно, не может противостоять атаке active-probing. Поэтому помимо xray нужно установить веб-сервер nginx, который будет обеспечивать перенаправление на сайт-заглушку. Easy-xray сгенерирует "сайт" для nginx, который слушает IPv6 адрес и перенаправляет реальных пользователей на xray-сервер, слушающий на 127.0.0.1:50051. При настройке easy-xray (при выполнении команды sudo ./ex.sh install или ./ex.sh conf) укажите ваше доменное имя, и следуйте дальнейшим инструкциям. После установки нужно проверить конфигурацию nginx и запустить его с помощью команд

sudo nginx -t
sudo systemctl start nginx

Если при попытке зайти на ваш "сайт" из браузера редирект (fallback) на сайт-заглушку не происходит (error 502, bad gateway), возможно, политики SELinux запрещают nginx выполнять сетевые соединения. Чтобы это исправить, выполните команду

sudo setsebool -P httpd_can_network_connect 1