Commit Graph
3 Commits
Author SHA1 Message Date
mrleo1nidandClaude Opus 5.5 97c7051021 Restore: перевод бэкапов на восстановленный сервер
CI / test (push) Successful in 1m36s
Release / release (push) Successful in 1m33s
Раньше восстановленная копия получала конфиг и таймер агента со старым токеном
(через категории etc и units), и бэкапы шли с двух серверов одновременно.

- конфиг и юниты агента больше не бэкапятся
- в конце restore спрашивает, сделать ли сервер основным: сервер бэкапов
  выпускает новый токен (POST /api/v1/restore/takeover), restore ставит
  агента; токен старого сервера отозван — его агент получает отказ
- --takeover / --no-takeover; без них — вопрос (с --yes — да)
- уведомление «Сервер восстановлен» в ntfy/Telegram

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 15:29:34 +03:00
mrleo1nidandClaude Opus 5.5 1947b26913 Полнота бэкапа: SSH, весь UFW, свои юниты, конфиги пакетов, системные параметры
Release / release (push) Successful in 1m26s
CI / test (push) Successful in 1m27s
Агент:
- ssh: sshd_config(.d), ключи хоста, authorized_keys root и пользователей
- system: весь /etc/ufw и /etc/default/ufw, /etc/sysctl.conf, /etc/hosts,
  свои файлы в /etc/cron.d (пакетные отсекаются через dpkg -S)
- certs: /etc/letsencrypt, /root/.acme.sh; xui: сертификаты по путям из базы
- docker: daemon.json и логины в registry; telegraf: /etc/default/telegraf
- caddy: бинарник бэкапится, если Caddy собран с плагинами
- units: свои systemd-юниты с состоянием enabled/active и drop-in *.service.d
- etc: изменённые конфиги любых пакетов (dpkg conffiles) и свои файлы в /etc,
  кроме привязанного к железу и облаку
- в манифесте: часовой пояс, swap, вручную поставленные пакеты; версия
  apt-пакета в строке категории
- предупреждения: программы юнитов вне бэкапа, каталоги /opt и /usr/local/bin
  без категории, контейнеры без compose

Restore:
- часовой пояс, swap-файл, доустановка вручную поставленных пакетов
- свои юниты включаются и запускаются как на старом сервере

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 15:19:34 +03:00
mrleo1nidandClaude Opus 5.5 cbd3cde01d Бэкап fail2ban и своих geo-файлов 3x-ui
CI / test (push) Successful in 1m48s
- новая категория fail2ban: jail.local, jail.d (в т.ч. 3x-ipl.local),
  IP-лимит 3x-ui (filter.d/action.d/3x-ipl.conf), свои *.local;
  при восстановлении создаются логи 3xipl*.log, без которых jail не поднимается
- xui: свои *.dat из /usr/local/x-ui/bin (ipcheck, discord-*) — на них ссылается
  роутинг; штатные geo-файлы релиза не бэкапятся
- recipe 3x-ui больше не очищает /usr/local/x-ui и не стирает восстановленные файлы
- маски (*, ?) в paths и keep_binaries каталога
- provision ставит nftables вместе с fail2ban
- .gitattributes: LF во всех файлах

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 14:24:21 +03:00