mirror of
https://github.com/XTLS/Xray-docs-next.git
synced 2026-10-05 05:18:18 +03:00
Fix prettier format with version 3.6.2
This commit is contained in:
@@ -41,12 +41,10 @@ Xray предлагает два способа проверки:
|
||||
### Установочные скрипты
|
||||
|
||||
- Скрипты для Linux
|
||||
|
||||
- [XTLS/Xray-install](https://github.com/XTLS/Xray-install) (**официальный**)
|
||||
- [tempest](https://github.com/team-cloudchaser/tempest) (поддерживает [`systemd`](https://systemd.io) и [OpenRC](https://github.com/OpenRC/openrc); подходит только для Linux)
|
||||
|
||||
* Установка одной командой
|
||||
|
||||
- [Xray-REALITY](https://github.com/zxcvos/Xray-script), [xray-reality](https://github.com/sajjaddg/xray-reality), [reality-ezpz](https://github.com/aleskxyz/reality-ezpz)
|
||||
- [Xray_bash_onekey](https://github.com/hello-yunshu/Xray_bash_onekey), [XTool](https://github.com/LordPenguin666/XTool)
|
||||
- [v2ray-agent](https://github.com/mack-a/v2ray-agent), [Xray_onekey](https://github.com/wulabing/Xray_onekey), [ProxySU](https://github.com/proxysu/ProxySU)
|
||||
|
||||
@@ -36,12 +36,10 @@
|
||||
## 2.3 Необходимое программное обеспечение
|
||||
|
||||
1. SSH-клиент для удалённого подключения:
|
||||
|
||||
- Windows: [PuTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)
|
||||
- macOS/Linux: Terminal
|
||||
|
||||
2. Программа для передачи файлов:
|
||||
|
||||
- Windows: [WinSCP](https://winscp.net/eng/index.php)
|
||||
- macOS/Linux: Terminal
|
||||
|
||||
|
||||
@@ -41,7 +41,6 @@
|
||||
2. Теперь можете немного осмотреться и познакомиться с командной строкой. На этом экране уже есть полезная информация, например, версия ядра системы (в данном случае `4.19.37-5`), время последнего входа в систему, IP-адрес и т.д. Конечно, в зависимости от VPS, ваш экран может выглядеть немного иначе.
|
||||
|
||||
3. Обратите внимание на последнюю строку командной строки. Слева от мигающего курсора находится набор символов. В данном случае это `root@vps-server:~#`. Что это значит? Всё просто:
|
||||
|
||||
- Текущий пользователь: `root`.
|
||||
- Имя сервера, на котором работает пользователь `root`: `vps-server`.
|
||||
- Текущий каталог, в котором находится пользователь `root`: `~`.
|
||||
|
||||
@@ -21,7 +21,6 @@
|
||||
3. **Имя пользователя**: если вы используете настройки по умолчанию, то имя пользователя — `root`.
|
||||
|
||||
4. **Пароль**: пароль не имеет значения по умолчанию. Он либо генерируется автоматически при создании VPS, либо задаётся вами. Таким образом, если вы не меняли настройки сервера, то три из четырёх элементов уже известны злоумышленникам, и вся безопасность вашего сервера держится на одном только пароле. Возможны следующие варианты:
|
||||
|
||||
- Вы используете автоматически сгенерированный пароль из панели управления VPS. Такие пароли обычно состоят из случайного набора символов (букв в разных регистрах, цифр и спецсимволов) и достаточно надёжны.
|
||||
|
||||
- Вы установили простой пароль, например, `123456`. Взломать такой сервер не составит труда.
|
||||
@@ -72,7 +71,6 @@
|
||||

|
||||
|
||||
5) Второе, что нужно сделать, — это найти строку, начинающуюся с `Port`, и изменить номер порта. Число после `Port` — это номер порта SSH. Рекомендуется использовать число в диапазоне от `1024` до `65535` (в этой статье мы будем использовать порт `9753`). Как это сделать, используя горячие клавиши `nano`? Вы уже наверняка догадались!
|
||||
|
||||
- Нажмите `Ctrl+W`, чтобы открыть поиск, введите `Port 22` и нажмите Enter.
|
||||
- Замените `22` на `9753`.
|
||||
- Примечание: если в начале строки стоит символ `#`, значит, эта строка закомментирована и не будет применяться. Вы можете либо раскомментировать её (удалив `#`), либо добавить новую строку без `#` в конце файла, как показано на скриншоте.
|
||||
@@ -82,7 +80,6 @@
|
||||
:::
|
||||
|
||||
6. Третье, что нужно сделать, — это сохранить изменения и выйти из редактора.
|
||||
|
||||
- Как вы уже могли заметить, для сохранения файла используется не `Ctrl+S`, как в большинстве программ.
|
||||
- Горячие клавиши: `Ctrl+O` — сохранить, `Ctrl+X` — выйти.
|
||||
|
||||
@@ -177,12 +174,10 @@
|
||||
```
|
||||
|
||||
2. Найдите строку `PermitRootLogin Yes` и замените `yes` на `no`. Помните, как это сделать? ... Правильный ответ:
|
||||
|
||||
- Нажмите `Ctrl+W`, чтобы открыть поиск, введите `PermitRootLogin` и нажмите Enter.
|
||||
- Замените `yes` на `no`.
|
||||
|
||||
3. Сохраните изменения и выйдите из редактора. Помните, как это сделать? ... Правильный ответ:
|
||||
|
||||
- `Ctrl+O` — сохранить, `Enter` — подтвердить сохранение.
|
||||
- `Ctrl+X` — выйти.
|
||||
|
||||
@@ -225,7 +220,6 @@
|
||||
Итак, давайте настроим аутентификацию по SSH-ключам.
|
||||
|
||||
1. Запустите программу **PuTTYgen** (генератор ключей PuTTY). Она находится в меню «Пуск» --> «Все программы» --> «PuTTY (64-bit)» --> «PuTTYgen».
|
||||
|
||||
1. Нажмите кнопку **Generate**, чтобы сгенерировать ключи (поводите курсором мыши по пустому пространству окна, чтобы добавить энтропии).
|
||||
|
||||

|
||||
@@ -233,7 +227,6 @@
|
||||
::: warning
|
||||
На скриншоте показан пример генерации 2048-битного RSA-ключа. Однако для достижения уровня безопасности, со comparableного с 256-битным ключом ECDSA/Ed25519, вам нужно сгенерировать 3072-битный RSA-ключ (т.е. ввести значение `3072` в поле «Number of bits in a generated key»).
|
||||
:::
|
||||
|
||||
2. Вы можете установить пароль для защиты приватного ключа.
|
||||
3. Нажмите кнопку **Save public key**, чтобы сохранить публичный ключ в файл `id_rsa.pub`.
|
||||
4. Нажмите кнопку **Save private key**, чтобы сохранить приватный ключ в файл `id_rsa` (приватные ключи PuTTY имеют расширение `.ppk`).
|
||||
@@ -242,7 +235,6 @@
|
||||

|
||||
|
||||
2. Скопируйте публичный ключ на VPS в домашний каталог пользователя `vpsadmin`.
|
||||
|
||||
1. Для этого используйте программу **WinSCP**, которую мы установили ранее.
|
||||
2. Скачайте и установите WinSCP с [официального сайта](https://winscp.net/eng/index.php). При первом запуске программа предложит импортировать настройки из PuTTY. Согласитесь на импорт.
|
||||
|
||||
@@ -275,7 +267,6 @@
|
||||

|
||||
|
||||
3. Настройте SSH-сервер на использование ключей и отключите аутентификацию по паролю.
|
||||
|
||||
1. Базовые команды Linux:
|
||||
| Номер | Команда | Описание |
|
||||
| :----: | :------ | :--------------------------------------- |
|
||||
|
||||
@@ -137,7 +137,6 @@
|
||||
```
|
||||
|
||||
6. Отредактируйте файл `nginx.conf` и перезапустите Nginx, чтобы он открывал созданную нами страницу `index.html` при обращении к порту `80`.
|
||||
|
||||
1. Отредактируйте файл `nginx.conf`.
|
||||
|
||||
```shell
|
||||
|
||||
@@ -86,7 +86,6 @@ Xray основан на проекте с открытым исходным к
|
||||

|
||||
|
||||
5. `acme.sh` проверяет срок действия сертификата каждые 60 дней и автоматически обновляет его при необходимости. Однако, насколько мне известно, он не устанавливает новый сертификат для `xray-core` автоматически. Поэтому нам нужно добавить автоматическое задание cron, которое будет делать это за нас.
|
||||
|
||||
1. Базовые команды Linux:
|
||||
|
||||
| Номер | Команда | Описание |
|
||||
@@ -154,7 +153,6 @@ Xray основан на проекте с открытым исходным к
|
||||
```
|
||||
|
||||
2. Создаём файлы и папки для логов:
|
||||
|
||||
1. Базовые команды Linux:
|
||||
|
||||
| Номер | Команда | Описание |
|
||||
@@ -397,7 +395,6 @@ Xray основан на проекте с открытым исходным к
|
||||
:::
|
||||
|
||||
6. Я так подробно остановился на `BBR`, потому что вокруг него слишком много мифов и откровенной дезинформации, нацеленной на новичков. Надеюсь, теперь у вас есть чёткое представление о том, что такое `BBR` и как он работает. А теперь давайте установим последнюю версию ядра Debian и включим `BBR`! (Это действительно просто)
|
||||
|
||||
1. Добавляем репозиторий `backports` в Debian 10, чтобы получить доступ к более новым версиям пакетов:
|
||||
|
||||
```shell
|
||||
@@ -424,7 +421,6 @@ Xray основан на проекте с открытым исходным к
|
||||
Если ваш VPS поддерживает это, вы можете попробовать установить **специальное ядро для облачных серверов** `linux-image-cloud-amd64`. Его преимущества — это меньший размер и меньшее потребление ресурсов. Однако некоторые пользователи сталкивались с проблемами при установке этого ядра на неподдерживаемые системы, вплоть до невозможности загрузки (ядро не определялось).
|
||||
|
||||
Чтобы не попасть в такую ситуацию, перед установкой этого ядра:
|
||||
|
||||
- создайте снапшот системы или
|
||||
- убедитесь, что у вас есть доступ к `vnc`-консоли (и вы знаете, как ей пользоваться)
|
||||
|
||||
@@ -555,20 +551,16 @@ Xray основан на проекте с открытым исходным к
|
||||
## 7.11 Важные исправления
|
||||
|
||||
1. В первоначальной версии руководства был указан неверный путь к файлу конфигурации `Xray` (`config.json`). Если вы настроили `Xray` по старой инструкции, то он не запустится. Приносим извинения за неудобства!
|
||||
|
||||
- Верный путь: `/usr/local/etc/xray/config.json`
|
||||
- Неверный путь: `/usr/local/etc/config.json`
|
||||
|
||||
Затронутые разделы:
|
||||
|
||||
- 7.4 Настройка Xray - 3. Создание файла конфигурации `Xray` с помощью `nano`
|
||||
- 7.8 Оптимизация сервера: автоматическое перенаправление HTTP на HTTPS - 6. Изменяем настройки перенаправления в файле конфигурации Xray
|
||||
|
||||
2. В первоначальной версии руководства была ошибка в настройках Nginx (неверный путь к папке с файлами сайта). Если вы настроили Nginx по старой инструкции, то сайт не будет работать. Приносим извинения за неудобства!
|
||||
|
||||
- Верный путь: `root /home/vpsadmin/www/webpage;`
|
||||
- Неверный путь: `root /var/www/website/html`
|
||||
|
||||
Затронутые разделы:
|
||||
|
||||
- 7.8 Оптимизация сервера: автоматическое перенаправление HTTP на HTTPS - 4. Добавляем новый сервер, который будет прослушивать локальный порт и отдавать файлы сайта.
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
1. Приложение должно самостоятельно или с помощью стороннего инструмента перенаправить трафик на **входящее подключение** (`inbounds`) клиента `Xray`.
|
||||
|
||||
2. Поступивший на клиент трафик обрабатывается **модулем маршрутизации** (`routing`) в соответствии с заданными правилами и перенаправляется на разные **исходящие подключения** (`outbounds`) клиента `Xray`, например:
|
||||
|
||||
- Трафик на китайские ресурсы — напрямую (`direct`)
|
||||
- Трафик на зарубежные ресурсы — через VPS (`proxy`)
|
||||
- Рекламный трафик — блокируется (`block`)
|
||||
@@ -19,7 +18,6 @@
|
||||
3. Трафик на зарубежные ресурсы, перенаправленный на VPS, проходит через Великий Китайский Файрвол и попадает на **входящее подключение** (`inbounds`) сервера `Xray`.
|
||||
|
||||
4. Как и на клиенте, трафик, поступивший на сервер, обрабатывается **модулем маршрутизации** (`routing`) в соответствии с заданными правилами и перенаправляется на разные **исходящие подключения** (`outbounds`):
|
||||
|
||||
- Поскольку сервер находится за пределами Китая, трафик по умолчанию идёт напрямую, что позволяет получить доступ к заблокированным ресурсам (`direct`).
|
||||
- При необходимости можно настроить перенаправление трафика на другие VPS (`proxy`).
|
||||
- На сервере также можно блокировать нежелательный трафик, например, рекламу или торренты (`block`).
|
||||
@@ -54,29 +52,24 @@
|
||||
:::
|
||||
|
||||
- **v2rayN - для Windows**
|
||||
|
||||
- Скачайте последнюю версию из [репозитория на GitHub](https://github.com/2dust/v2rayN/releases)
|
||||
- Настройте клиент в соответствии с документацией
|
||||
|
||||
- **v2rayNG - для Android**
|
||||
|
||||
- Скачайте последнюю версию из [репозитория на GitHub](https://github.com/2dust/v2rayNG/releases)
|
||||
- Настройте клиент в соответствии с документацией
|
||||
|
||||
- **Shadowrocket - для iOS, macOS на базе Apple M1**
|
||||
|
||||
- Создайте учётную запись iCloud **не** в китайском регионе
|
||||
- Купите приложение в App Store
|
||||
- Настройте клиент в соответствии с документацией
|
||||
|
||||
- **Qv2ray - кроссплатформенный графический интерфейс для Linux, Windows, macOS**
|
||||
|
||||
- Скачайте последнюю версию из [репозитория на GitHub](https://github.com/Qv2ray/Qv2ray/releases) (или более новую версию из раздела [сборок на GitHub](https://github.com/Qv2ray/Qv2ray/actions))
|
||||
- Изучите документацию на [сайте проекта](https://qv2ray.net/)
|
||||
- Настройте клиент в соответствии с документацией
|
||||
|
||||
- **V2RayXS - клиент для macOS, основанный на V2RayX и использующий xray-core**
|
||||
|
||||
- Скачайте последнюю версию из [репозитория на GitHub](https://github.com/tzmax/v2rayXS/releases)
|
||||
- Поддерживает импорт ссылок на конфигурации VLESS / VMessAEAD по стандарту, предложенному в [этой задаче](https://github.com/XTLS/Xray-core/issues/91)
|
||||
- Настройте клиент в соответствии с документацией
|
||||
@@ -99,7 +92,6 @@
|
||||
2. Создайте пустой файл конфигурации `config.json` в той же папке (думаю, с этим проблем не возникнет).
|
||||
3. Что значит "удобное место"? Это зависит от платформы.
|
||||
4. Заполните файл конфигурации.
|
||||
|
||||
- Я написал пример конфигурации, основанный на схеме из раздела 8.1 (прямое подключение к китайским ресурсам, проксирование трафика на зарубежные ресурсы через VPS, блокировка рекламы) и параметрах подключения из раздела 8.2.
|
||||
- Замените `uuid` на идентификатор из вашей конфигурации сервера.
|
||||
- Замените `address` на доменное имя вашего сервера.
|
||||
|
||||
@@ -198,7 +198,6 @@
|
||||
Трафик протокола `vless` напрямую передается в `Xray` для дальнейшей обработки.
|
||||
|
||||
3. **Трафик, не относящийся к протоколу `VLESS`, перенаправляется на 4 различных порта fallback:**
|
||||
|
||||
1. Трафик с `path`, равным `websocket`, перенаправляется на порт `1234` для дальнейшей обработки.
|
||||
2. Трафик с `path`, равным `vmesstcp`, перенаправляется на порт `2345` для дальнейшей обработки.
|
||||
3. Трафик с `path`, равным `vmessws`, перенаправляется на порт `3456` для дальнейшей обработки.
|
||||
@@ -260,7 +259,6 @@
|
||||
```
|
||||
|
||||
Смотрите, произошло чудо, в протоколе `trojan` появился новый `fallbacks`. Как уже говорилось ранее, протокол `trojan` в `xray` также обладает полной функциональностью fallback, поэтому на этом этапе протокол `trojan` может снова выполнять проверку и fallback (это и есть легендарный "fallback в fallback"):
|
||||
|
||||
- Весь трафик протокола `trojan` передается в `Xray` для дальнейшей обработки.
|
||||
- Весь остальной трафик перенаправляется на порт `80`. **Защита от активного зондирования** реализована!
|
||||
|
||||
|
||||
@@ -169,7 +169,6 @@ acme.sh --install-cert -d example.com --fullchain-file /etc/ssl/xray/cert.pem --
|
||||
Proxy Protocol - это протокол, разработанный HaProxy для решения проблемы потери информации о клиенте при проксировании, часто используемый в цепочках прокси-серверов и обратных прокси. Традиционные методы решения этой проблемы, как правило, сложны и имеют много ограничений, в то время как Proxy Protocol очень прост - он просто добавляет пакет данных с информацией об исходном соединении (четверка "источник-назначение:порт") при передаче данных.
|
||||
|
||||
У всего есть свои плюсы и минусы, и Proxy Protocol не исключение.
|
||||
|
||||
- Если есть отправка, должен быть и прием, и наоборот.
|
||||
- Один и тот же порт не может одновременно поддерживать соединения с данными Proxy Protocol и без них (например, разные виртуальные хосты (server) Nginx на одном порту, что по сути является следствием предыдущего пункта)[^2][^3].
|
||||
|
||||
@@ -186,7 +185,6 @@ acme.sh --install-cert -d example.com --fullchain-file /etc/ssl/xray/cert.pem --
|
||||
В приведенной выше конфигурации каждая запись fallback для Nginx разделена на две. Это связано с тем, что h2 - это обязательное зашифрованное соединение HTTP/2, что хорошо для безопасности передачи данных в Интернете, но не нужно внутри сервера. h2c же - это незашифрованное соединение HTTP/2, подходящее для этой среды. Однако Nginx не может одновременно прослушивать HTTP/1.1 и h2c на одном порту. Чтобы решить эту проблему, необходимо указать `alpn` (в разделе `fallbacks`, а не `tlsSettings`), чтобы сопоставить результаты согласования TLS ALPN.
|
||||
|
||||
Рекомендуется указывать `alpn` только в двух случаях[^4]:
|
||||
|
||||
- опустить
|
||||
- `"h2"`
|
||||
|
||||
|
||||
Reference in New Issue
Block a user