Tutorial: Remove outdated

This commit is contained in:
Fangliding
2026-05-03 14:00:03 +08:00
parent 9827ddf708
commit bea9f0ac17
9 changed files with 99 additions and 249 deletions
+2 -2
View File
@@ -6,7 +6,7 @@
Вам нужно получить работающий VPS с не заблокированным IP-адресом и выполнить следующие базовые действия в панели управления:
1. Установить на VPS операционную систему Debian 10 64-bit.
1. Установить на VPS операционную систему Debian.
2. Записать IP-адрес VPS (в этой статье он будет обозначаться как `"100.200.300.400"`).
::: tip
Это **неверный** IP-адрес, используемый только в качестве примера. Не забудьте заменить его на свой реальный IP-адрес.
@@ -17,7 +17,7 @@
Выбор и покупка VPS — дело непростое. Рекомендуем сначала изучить этот вопрос и выбрать тариф, который соответствует вашим финансовым возможностям и требованиям к скорости и качеству связи. Также можно воспользоваться бесплатными (постоянными или временными) предложениями от крупных облачных провайдеров, таких как Oracle Cloud и Google Cloud. Главное — не влезайте в долги.
::: tip Пояснение
Несколько слов о выборе Debian 10 в качестве операционной системы. Что бы вы ни слышали в интернете, какой бы дистрибутив Linux ни советовали вам гуру, все эти споры о том, какой Linux лучше, **не имеют к вам никакого отношения**! Debian 10 — это надёжная и стабильная операционная система, которая отлично подходит для работы VPN-сервера и достаточно оптимизирована (например, имеет специальное ядро для облачных сред и своевременную поддержку BBR). Когда вы освоитесь с Linux, можете попробовать и другие дистрибутивы.
Несколько слов о выборе Debian в качестве операционной системы. Что бы вы ни слышали в интернете, какой бы дистрибутив Linux ни советовали вам гуру, все эти споры о том, какой Linux лучше, **не имеют к вам никакого отношения**! Последний стабильный выпуск Debian — это надёжная и стабильная операционная система, которая отлично подходит для работы VPN-сервера и достаточно оптимизирована (например, имеет специальное ядро для облачных сред и своевременную поддержку BBR). Когда вы освоитесь с Linux, можете попробовать и другие дистрибутивы.
:::
## 2.2 Выбор доменного имени
+36 -78
View File
@@ -102,7 +102,7 @@ Xray основан на проекте с открытым исходным к
| Номер | Команда | Описание |
| :------: | :-----: | :--------------------- |
| `cmd-16` | `touch` | Создание пустого файла |
| `cmd-15` | `touch` | Создание пустого файла |
2. Создаём папку для логов в домашней директории пользователя `vpsadmin`:
@@ -310,14 +310,12 @@ Xray основан на проекте с открытым исходным к
Одним словом: **нет! Не используйте их! Все эти названия придуманы только для привлечения внимания!**
Обновления `BBR` выпускаются вместе с обновлениями ядра Linux (`Kernel`). Другими словами, если вы используете относительно новое ядро, то у вас уже будет установлена последняя версия `BBR`.
На самом деле эти "крутые" версии — это просто ядра, которые авторы пересобрали со своими собственными изменёнными параметрами `BBR`. А упомянутые скрипты лишь скачивают и устанавливают эти модифицированные ядра.
А все эти скрипты с крутыми названиями просто скачивают и устанавливают предварительные версии ядра (или даже модифицированные сторонними разработчиками версии) с более новыми версиями `BBR`.
Стабильность ядра — это основа стабильной работы сервера. **Незначительное повышение производительности, которое могут дать тестовые версии `BBR`, не стоит того, чтобы рисковать стабильностью сервера.** Используйте последнюю версию ядра, которая поддерживается вашим дистрибутивом Linux. Это обеспечит максимальную стабильность и совместимость вашего сервера.
Стабильность ядра — это основа стабильной работы сервера. **Незначительное повышение производительности, которое могут дать модифицированные версии `BBR`, не стоит того, чтобы рисковать стабильностью сервера.** Используйте последнюю версию ядра, которая поддерживается вашим дистрибутивом Linux. Это обеспечит максимальную стабильность и совместимость вашего сервера.
::: warning
Так называемое "преимущество" модифицированных версий `bbr` **очень недолговечно**. Например, многие скрипты `bbrplus` до сих пор устанавливают ядро версии 4.19, поскольку не обновлялись уже несколько лет. А ведь на дворе уже эпоха Debian 11 с ядром 5.10! То есть, если в январе 2018 года этот скрипт, возможно, и давал какое-то преимущество, то уже к октябрю 2018 года, когда вышла стабильная версия ядра 4.19, он потерял всякий смысл. А сейчас его использование и вовсе можно назвать **даунгрейдом**.
Так называемое "преимущество" модифицированных версий `bbr` **очень недолговечно**. Например, многие скрипты `bbrplus` не обновлялись уже несколько лет и до сих пор устанавливают на сервер очень старые версии ядра, что приводит к потере безопасности системы или даже к невозможности её загрузки.
:::
4. Какой алгоритм управления очередями использовать: `fq`, `fq_codel`, `fq_pie`, `cake` или какой-то другой?
@@ -336,94 +334,54 @@ Xray основан на проекте с открытым исходным к
Если у вас действительно плохой канал с высокими потерями пакетов, то единственное правильное решение — **сменить провайдера**.
:::
6. Я так подробно остановился на `BBR`, потому что вокруг него слишком много мифов и откровенной дезинформации, нацеленной на новичков. Надеюсь, теперь у вас есть чёткое представление о том, что такое `BBR` и как он работает. А теперь давайте установим последнюю версию ядра Debian и включим `BBR`! (Это действительно просто)
1. Добавляем репозиторий `backports` в Debian 10, чтобы получить доступ к более новым версиям пакетов:
6. Я так подробно остановился на `BBR`, потому что вокруг него слишком много мифов и откровенной дезинформации, нацеленной на новичков. Надеюсь, теперь у вас есть чёткое представление о том, что такое `BBR` и как он работает. А теперь давайте включим `BBR`!
```shell
sudo nano /etc/apt/sources.list
```
7. Создаём файл с параметрами и включаем `BBR`:
::: warning
В Debian 10 можно без проблем использовать файл `/etc/apt/sources.list`. Однако, если вы используете другой дистрибутив Linux или не устанавливали систему с нуля по этой инструкции, то рекомендуется создать папку `/etc/apt/sources.list.d/` и добавлять свои файлы конфигурации в неё, например, `/etc/apt/sources.list.d/vpsadmin.list`. Это обеспечит совместимость с другими дистрибутивами и предотвратит потерю настроек при случайном перезаписывании файла `/etc/apt/sources.list`.
:::
```shell
sudo nano /etc/sysctl.d/99-bbr.conf
```
2. Добавляем следующую строку в конец файла и сохраняем его:
8. Добавляем в него следующие строки:
```
deb http://archive.debian.org/debian buster-backports main
```
```
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
```
3. Обновляем список доступных пакетов, ищем последнюю версию ядра Debian и устанавливаем её. Устанавливайте версию ядра, которая подходит для вашей архитектуры (в данном руководстве мы используем `amd64`):
9. Перезагружаем VPS, чтобы настройки `BBR` вступили в силу:
```shell
sudo apt update && sudo apt -t buster-backports install linux-image-amd64
```
```shell
sudo reboot
```
::: warning
Если ваш VPS поддерживает это, вы можете попробовать установить **специальное ядро для облачных серверов** `linux-image-cloud-amd64`. Его преимущества — это меньший размер и меньшее потребление ресурсов. Однако некоторые пользователи сталкивались с проблемами при установке этого ядра на неподдерживаемые системы, вплоть до невозможности загрузки (ядро не определялось).
10. Проверяем, что `BBR` включён
Чтобы не попасть в такую ситуацию, перед установкой этого ядра:
- создайте снапшот системы или
- убедитесь, что у вас есть доступ к `vnc`-консоли (и вы знаете, как ей пользоваться)
Чтобы убедиться, что `BBR` включён правильно, выполните команду:
:::
```shell
sysctl net.ipv4.tcp_congestion_control
```
4. Редактируем файл конфигурации `sysctl.conf` и включаем `BBR`:
В результате вы должны увидеть что-то вроде этого:
```shell
sudo nano /etc/sysctl.conf
```
```
net.ipv4.tcp_congestion_control = bbr
```
::: warning
В Debian 10 можно без проблем использовать файл `/etc/sysctl.conf`. Однако, если вы используете другой дистрибутив Linux или не устанавливали систему с нуля по этой инструкции, то рекомендуется создать папку `/etc/sysctl.d/` и добавлять свои файлы конфигурации в неё, например, `/etc/sysctl.d/vpsadmin.conf`. Это обеспечит совместимость с другими дистрибутивами, поскольку в некоторых из них, начиная с версии `systemd` 207, параметры из файла `/etc/sysctl.conf` не читаются. Использование отдельного файла конфигурации также предотвратит потерю настроек при случайном перезаписывании файла `/etc/sysctl.conf`.
:::
Если вас смущает `ipv4` в названии — не переживайте, это лишь историческое наследие в имени параметра, настройка одинаково действует и для IPv6.
5. Добавляем следующие строки в конец файла:
Чтобы убедиться, что алгоритм `fq` используется, выполните команду:
```
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
```
```shell
sysctl net.core.default_qdisc
```
6. Перезагружаем VPS, чтобы изменения вступили в силу:
В результате вы должны увидеть что-то вроде этого:
```shell
sudo reboot
```
7. Весь процесс показан на гифке:
::: tip
На моём VPS поддерживается специальное ядро для облачных серверов, поэтому на гифке я устанавливаю `linux-image-cloud-amd64`. Если вы не уверены, поддерживается ли оно на вашем VPS, то установите обычное ядро `linux-image-amd64`, как показано в пункте 3.
:::
![Обновление ядра Debian и включение `BBR`](./ch07-img06-bbr-proper.gif)
8. Проверяем, что `BBR` включен
Чтобы убедиться, что модуль `BBR` загружен, выполните команду:
```shell
lsmod | grep bbr
```
В результате вы должны увидеть что-то вроде этого:
```
tcp_bbr
```
Чтобы убедиться, что алгоритм `fq` используется, выполните команду:
```shell
lsmod | grep fq
```
В результате вы должны увидеть что-то вроде этого:
```
sch_fq
```
```
net.core.default_qdisc = fq
```
## 7.8 Оптимизация сервера: автоматическое перенаправление HTTP на HTTPS
+8 -13
View File
@@ -18,22 +18,17 @@
| `cmd-12` | `wget` | Загрузка файла/страницы из сети | [Глава об управлении сертификатами](./ch06-certificates.md) |
| `cmd-13` | `acme.sh` | Управление сертификатами с помощью acme.sh | [Глава об управлении сертификатами](./ch06-certificates.md) |
| `cmd-14` | `rm` | Удаление файлов/папок | [Глава о Xray сервере](./ch07-xray-server.md) |
| `cmd-15` | `crontab -e` | Редактирование crontab текущего пользователя | [Глава о Xray сервере](./ch07-xray-server.md) |
| `cmd-16` | `touch` | Создание пустого файла | [Глава о Xray сервере](./ch07-xray-server.md) |
| `cmd-17` | `systemctl` | Базовые команды управления сервисами systemd | [Глава о Xray сервере](./ch07-xray-server.md) |
| `cmd-18` | `reboot` | Перезагрузка Linux | [Глава о Xray сервере](./ch07-xray-server.md) |
| `cmd-15` | `touch` | Создание пустого файла | [Глава о Xray сервере](./ch07-xray-server.md) |
| `cmd-16` | `systemctl` | Базовые команды управления сервисами systemd | [Глава о Xray сервере](./ch07-xray-server.md) |
| `cmd-17` | `reboot` | Перезагрузка Linux | [Глава о Xray сервере](./ch07-xray-server.md) |
## 2. Индекс важных конфигурационных файлов Linux
| Номер | Расположение файла | Описание файла | Глава |
| :-------: | :-------------------------------------- | :--------------------------------------- | :--------------------------------------------: |
| `conf-01` | `/etc/ssh/sshd_config` | Конфигурация SSH сервера | [Глава о удаленном подключении](./ch03-ssh.md) |
| `conf-02` | `/etc/nginx/nginx.conf` | Конфигурация Nginx | [Глава о создании сайта](./ch05-webpage.md) |
| `conf-03` | `/etc/apt/sources.list` | Список репозиториев APT | [Глава о Xray сервере](./ch07-xray-server.md) |
| `conf-04` | `/etc/apt/sources.list.d/vpsadmin.list` | Список пользовательских репозиториев APT | [Глава о Xray сервере](./ch07-xray-server.md) |
| `conf-05` | `crontab -e` | Crontab текущего пользователя | [Глава о Xray сервере](./ch07-xray-server.md) |
| `conf-06` | `/etc/sysctl.conf` | Настройки ядра Linux | [Глава о Xray сервере](./ch07-xray-server.md) |
| `conf-07` | `/etc/sysctl.d/vpsadmin.conf` | Пользовательские настройки ядра Linux | [Глава о Xray сервере](./ch07-xray-server.md) |
| Номер | Расположение файла | Описание файла | Глава |
| :-------: | :-------------------------- | :------------------------------------ | :--------------------------------------------: |
| `conf-01` | `/etc/ssh/sshd_config` | Конфигурация SSH сервера | [Глава о удаленном подключении](./ch03-ssh.md) |
| `conf-02` | `/etc/nginx/nginx.conf` | Конфигурация Nginx | [Глава о создании сайта](./ch05-webpage.md) |
| `conf-03` | `/etc/sysctl.d/99-bbr.conf` | Пользовательские настройки ядра Linux | [Глава о Xray сервере](./ch07-xray-server.md) |
## 3. Индекс важных файлов Xray