feat: warn if role missing

This commit is contained in:
deadcxap
2025-08-24 04:05:17 +03:00
parent ce4c60ed02
commit c1e6a22fdc
2 changed files with 47 additions and 25 deletions
+7 -7
View File
@@ -1,8 +1,8 @@
# Стартовые скрипты для настройки серверов
Этот репозиторий содержит скрипт `core.sh` для базовой подготовки Ubuntu/Debian сервера. Скрипт автоматизирует установку полезных пакетов, создание пользователя, настройку сетевой безопасности и журналирования.
Этот репозиторий содержит скрипт `setup.sh` для базовой подготовки Ubuntu/Debian сервера. Скрипт автоматизирует установку полезных пакетов, создание пользователя, настройку сетевой безопасности и журналирования.
## Возможности `core.sh`
## Возможности `setup.sh`
- обновление пакетов и установка базового софта;
- создание нового пользователя с `sudo` без пароля;
- настройка SSH‑доступа только по указанному ключу;
@@ -12,7 +12,8 @@
- включение автоматических обновлений `unattended-upgrades`;
- установка часового пояса Europe/Moscow;
- ротация логов и их отправка через Vector, включая логи Docker;
- установка и запуск Netbird по ключу с добавлением правила UFW для центрального сервера.
- установка и запуск Netbird по ключу с добавлением правила UFW для центрального сервера;
- проверка наличия роли в репозитории, копирование её в `/opt/` и запуск `init.sh` (если есть) для старта первого Docker Compose стека; если роль не найдена, выводится предупреждение.
- проверки запуска UFW, Docker, Vector, Netbird и конфигурации SSH.
## Требования
@@ -24,11 +25,11 @@
Запуск осуществляется одной командой:
```bash
curl -fsSL https://raw.githubusercontent.com/deadcxap/init_scripts/main/core.sh | \
curl -fsSL https://raw.githubusercontent.com/deadcxap/init_scripts/main/setup.sh | \
sudo bash -s -- --user <username> --sshkey "<ssh_pubkey>" \
[--ssh-ip <ssh_allowed_ip>] [--monitor-ip <monitor_ip>] \
[--vector <vector_endpoint>] \
[--compose-url <compose_url> --compose-dir <compose_dir>] \
[--role <name>] \
[--netbird-key <key> [--netbird-ip <ip> --netbird-port <port>]]
```
@@ -38,8 +39,7 @@ curl -fsSL https://raw.githubusercontent.com/deadcxap/init_scripts/main/core.sh
- `-s, --ssh-ip` — IP‑адрес, с которого разрешён SSH‑доступ (если не указан — порт открыт всем);
- `-m, --monitor-ip` — IP‑адрес сервера мониторинга для порта 45876/tcp (если не указан — порт не открывается);
- `-v, --vector` — URL приёмника логов Vector (если не указан — Vector не устанавливается);
- `-c, --compose-url` — ссылка на `docker-compose.yml` (например с GitHub);
- `-d, --compose-dir` — каталог, куда сохранить и запустить композ (указывается вместе с `--compose-url`).
- `-r, --role` — имя роли из [репозитория](https://github.com/deadcxap/init_scripts); перед запуском проверяется наличие папки, после чего её содержимое копируется в `/opt/` и при наличии выполняется `init.sh`; если папка отсутствует, выводится предупреждение и шаг пропускается;
- `-n, --netbird-key` — ключ настройки Netbird;
- `-i, --netbird-ip` — IP центрального сервера Netbird (если указан вместе с портом, добавляется правило UFW);
- `-p, --netbird-port` — порт центрального сервера Netbird (используется вместе с IP).