Чеклист старта: что нужно перед первым сервером
Прежде чем ставить панель и ноды, надо привести сервер в порядок и убедиться, что фундамент не гнилой. Ниже — короткий маршрут проверок и базовой защиты хоста. Команды копируй по порядку, свои данные впиши в конструктор сверху.
Перед покупкой: короткий чек
Ещё до оплаты VPS прогони себя по списку — эти четыре пункта ловят 90% будущих проблем:
- Нода — за рубежом (NL/DE/FI/PL), панель и релей — можно РФ.
- Разные ASN у разных нод — блокируют пачкой по подсети.
- IP белый — не в чёрных списках, не в засвеченной прокси-подсети.
- Оплата — там, где можно, крипта или СБП без лишней привязки.
Механику каждого пункта разбирали в теории «Как выбрать сервер». Здесь — практика проверки уже купленного.
Проверяем DNS домена
Если ставишь панель или ноду с доменом — первым делом убедись, что A-запись реально смотрит на IP сервера. Пока DNS не резолвится, TLS-сертификат не выпустится, и дальше идти бессмысленно:
# должен вернуть IP твоего сервера, и ничего больше
dig +short your-domain.comПусто или чужой адрес — правь A-запись у регистратора и жди распространения. Сначала DNS, потом всё остальное. Это правило сэкономит тебе час злости на этапе выпуска сертификата.
Приводим систему в порядок
Заходим на свежий сервер и ставим базу. Ubuntu 22.04 или 24.04 — рабочий выбор:
# обновляем систему
apt update && apt -y upgrade
# базовый набор: файервол, защита от перебора, утилиты
apt -y install ufw fail2ban curl git nanoSSH только по ключу
Пароль на SSH — открытая дверь для перебора. Переводим вход на ключ. Сначала на своей машине, если ключа ещё нет:
# генерим ключ и кладём его на сервер
ssh-keygen -t ed25519 -C "vpn-admin"
ssh-copy-id root@SERVER_IPТеперь на сервере отключаем вход по паролю совсем:
sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin prohibit-password/' /etc/ssh/sshd_config
systemctl restart sshПроверь, что новый вход работает, не закрывая текущую сессию — если что-то не так, ты успеешь откатить. Закрылся, а ключ не подхватился — останешься за дверью.
Файервол: закрываем всё лишнее
По умолчанию рубим весь входящий, открываем только нужное. Для панели и нод наружу смотрит 443, для управления — SSH:
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw allow 443/tcp # ноды/панель за 443
ufw --force enableДополнительные порты под транспорты (gRPC, XHTTP, node-агент) откроешь позже, когда будешь настраивать конкретную ноду. Пока — минимум.
Защита от перебора SSH
fail2ban банит IP, который долбится паролями. Настраиваем джейл под sshd:
systemctl enable --now fail2ban
cat >/etc/fail2ban/jail.d/sshd.local <<'CFG'
[sshd]
enabled = true
maxretry = 4
bantime = 1h
findtime = 10m
CFG
systemctl restart fail2banЧетыре промаха за десять минут — час бана. Для входа по ключу этого с запасом.
Подкрутка сети для нод
На нодах (не на панели) включи BBR — он заметно улучшает скорость на дальних маршрутах, а именно такие у зарубежного выхода до РФ:
cat >>/etc/sysctl.conf <<'CFG'
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
CFG
sysctl -pПроверить, что применилось:
# должно вывести: bbr
sysctl net.ipv4.tcp_congestion_control | awk '{print $NF}'Финальная проверка перед панелью
Прогон по готовности хоста — если все пункты зелёные, можно ставить панель:
# ключевой вход — по ключу, пароль отбит
grep -E '^(PasswordAuthentication|PermitRootLogin)' /etc/ssh/sshd_config
# файервол включён и правила на месте
ufw status verbose
# fail2ban живой
systemctl is-active fail2banВсё в порядке — фундамент готов. Дальше идёшь в раздел «Панель» и ставишь Remnawave на этот сервер. Помни правило разделения: панель и ноды — на разных машинах, так что эту базовую подготовку ты повторишь на каждом сервере отдельно. Механику, зачем каждый шаг нужен, разбирали в теории «Как выбрать сервер и локацию».
Следующий гайд Экономика VPN-сервиса: откуда маржа → ↗ Не понравилась статья или что-то непонятно? Напишите мне — помогу или поправлю. @notrealvpn →