Перейти к содержанию

Базовая настройка

·3 минуты·
Каждый узел плоскости данных (Core-нода и Entry-нода) проходит стандартную процедуру начальной настройки безопасности перед вводом в эксплуатацию. Цель — минимизировать поверхность атаки и обеспечить безопасное удаленное управление.

Требования к серверу #

ПараметрМинимум
ОСDebian 12 / Ubuntu 22.04
RAM512 MB
Диск10 GB SSD
СетьВыделенный IPv4, открытый порт 22
Права доступаПользователь root или пользователь с правами sudo

Этапы настройки #

Настройка выполняется последовательно с Root-ноды (или другого управляющего сервера) и состоит из семи этапов:

graph TD S1["1. Проверка и диагностика"] S2["2. Обновление системы"] S3["3. Создание сервисного пользователя"] S4["4. Размещение SSH-ключа"] S5["5. Проверка доступа по ключу"] S6["6. Защита SSH"] S7["7. Настройка firewall"] S1 --> S2 --> S3 --> S4 --> S5 --> S6 --> S7 style S1 fill:#1e40af,color:#fff,stroke:#1d4ed8 style S2 fill:#1e40af,color:#fff,stroke:#1d4ed8 style S3 fill:#1e40af,color:#fff,stroke:#1d4ed8 style S4 fill:#1e40af,color:#fff,stroke:#1d4ed8 style S5 fill:#1e40af,color:#fff,stroke:#1d4ed8 style S6 fill:#7c3aed,color:#fff,stroke:#1d4ed8 style S7 fill:#7c3aed,color:#fff,stroke:#1d4ed8

1. Проверка и диагностика #

Проверка сетевой доступности сервера и SSH-авторизации root по паролю. На этом этапе проводится диагностика: версия ОС, объем RAM, дисковое пространство. Параметры сервера регистрируются в системе хранения данных сети Sigil Gate.

2. Обновление системы #

  • Полное обновление пакетов (apt update && apt upgrade).
  • Установка базовых зависимостей: sudo, curl, wget, ufw, cron.
  • Настройка автоматического обновления безопасности (ежедневно).

3. Создание сервисного пользователя #

Создание непривилегированного пользователя с правами sudo. Вся дальнейшая работа с нодой выполняется от имени этого пользователя, а не от root.

4. Размещение SSH-ключа #

Публичный SSH-ключ управляющего сервера размещается в ~/.ssh/authorized_keys сервисного пользователя. Права на директорию и файл устанавливаются в соответствии со стандартами OpenSSH (700/600).

5. Проверка доступа по ключу #

Верификация: сервисный пользователь может подключиться по SSH-ключу без пароля и выполнять команды через sudo.

6. Защита SSH #

Применение ключевых настроек sshd_config:

ПараметрЗначениеНазначение
PermitRootLoginnoЗапрет входа root
PasswordAuthenticationnoЗапрет авторизации по паролю
PubkeyAuthenticationyesАвторизация только по ключу

После применения доступ к серверу возможен только по SSH-ключу для сервисного пользователя.

7. Настройка firewall #

Настройка UFW (Uncomplicated Firewall):

ПравилоОписание
По умолчаниюЗапрет всех входящих соединений
Порт 22SSH — удаленное управление
Порт 80HTTP — перенаправление на HTTPS
Порт 443HTTPS — основной рабочий порт

Модель SSH-доступа #

Для разграничения привилегий используются отдельные SSH-ключи для разных уровней доступа:

graph TD RootKey["Ключ Root-ноды"] CoreKey["Ключ Core-ноды"] Core["Core-ноды"] Entry["Entry-ноды"] RootKey -->|"полный доступ"| Core RootKey -->|"полный доступ"| Entry CoreKey -->|"управление"| Entry style RootKey fill:#7c3aed,color:#fff,stroke:#6d28d9 style CoreKey fill:#1d4ed8,color:#fff,stroke:#1e40af style Core fill:#1d4ed8,color:#fff,stroke:#1e40af style Entry fill:#0891b2,color:#fff,stroke:#0e7490
КлючДоступНазначение
Ключ Root-нодыВсе ноды (Core + Entry)Полное администрирование сети
Ключ Core-нодыEntry-нодыУправление привязанными Entry-нодами

Результат настройки #

После прохождения всех этапов нода готова к установке специфичных компонентов (Nginx, Xray-core, сайт-прикрытие):

  • система обновлена, установлены базовые пакеты;
  • настроено автоматическое обновление безопасности;
  • создан сервисный пользователь с правами sudo;
  • SSH-доступ — только по ключу, вход root отключен;
  • firewall разрешает только порты 22, 80, 443.