Commit Graph
5 Commits
Author SHA1 Message Date
gilfanovrandClaude Opus 5 b56c137b5c Механизм поддержания описаний в актуальном состоянии
Сверка fr1 показала, что дока расходится с фактом по десятку пунктов —
значит нужен не разовый проход, а контракт и инструмент.

  CLAUDE.md — правило «тронул сервер, обнови servers/<хост>.md в том же
  прогоне» плюс стиль: факт + причина + что сломается молча. Лежит именно
  в CLAUDE.md, потому что AGENTS.md автоматически агенту не подгружается.

  .claude/skills/server-audit/ — метод сверки и накопленные грабли: где
  дока врёт чаще всего, почему ufw не отвечает на вопрос об открытых
  портах, почему нужен up -d --dry-run, почему «executed successfully»
  не доказывает работу задания.

  scripts/snapshot.sh — инвентаризация живого состояния за один проход:
  только чтение, без sudo, секретов не печатает, недоступное под root
  помечает и подсказывает команду.

Первый же прогон скрипта нашёл две вещи, обе описаны:

  - IPv6 не «починился», а мигает: за один день FAILED -> REACHABLE ->
    FAILED без единой правки конфига. Описан как мигающий, с выводом
    ничего на него не завязывать.
  - В основном sshd_config стоит PermitRootLogin yes (правка шаблона
    Contabo). Root-вход закрыт только потому, что Include дроп-инов
    стоит выше, а sshd берёт первое значение. Уберёшь дроп-ин —
    включится.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-08 16:52:22 +03:00
gilfanovrandClaude Opus 5 4308c5c7e1 fr1: сверка описания с живым сервером
Дока расходилась с фактом по десятку пунктов. Что исправлено по
результатам обхода сервера:

  - ядро 6.8.0-137 (было 134); IPv6 заработал — шлюз отвечает на NDP,
    хотя конфиг не менялся, так что может отвалиться обратно
  - Gitea 1.27.3, 1.9 ГБ, 20 репо (было 1.25.4 / 4.3 ГБ / 16)
  - апекс ruzzy.dev уже на fr1; появились vhost'ы share и www
  - мониторинг шире описанного: таргеты ru1 и job gitea, дашборды
    OpenVPN и Gitea; убраны устаревшие упоминания выведенного de1
  - vault-синк claude-channels работает (дока говорила обратное), том
    claude-home раздулся заново до 2.8 ГБ

Добавлены разделы, которых не было вовсе:
  - tgclaude — общий вход для агентов; цепочка Telegram-бот → агент в
    контейнере → SSH → группа docker → root на хосте
  - imgbot и его переезд в контейнеры
  - расписания: полная инвентаризация cron и таймеров
  - открытые хвосты, включая непогашенные токены в Gitea

Разобрано и описано попутно: ufw не управляет docker-портами (ipcam
месяцами держал 2221 и 30000-30010 наружу без единого правила);
sysstat хранил историю 7 дней при HISTORY=7 — поднято до 365 (при >28
sa1 сам переключает имена на saYYYYMMDD, иначе смысла нет); /etc/cron.
hourly/free час за часом выбрасывал страничный кэш (до -3.89 ГиБ,
подтверждено по Prometheus) — удалён.

Уборка диска: 104 → 52 ГБ занято. Ушли ipcam, sc2-parser, booty,
booty-collector, vacuum-scraper, ollama (8.1 ГБ), легаси-архив
картинок, docker build cache (43.4 ГБ).

В AGENTS.md поправлены две неверные строки: de1 значился действующей
прод-нодой, хотя выведен, а туннель ru1 — идущим до de1. Сами
servers/de1.md и servers/ru1.md не сверялись.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-08 15:26:40 +03:00
Ruslan Gilfanov fa23444148 ru1: паспорт RU entry-ноды (85.198.109.86, VDSina) 2026-06-21 22:03:56 +03:00
Ruslan Gilfanov 9f08a61783 de1: полный паспорт действующей ноды ruzzy.dev 2026-06-21 18:26:38 +03:00
Ruslan Gilfanov 8e632558ac infra: базовая структура + состояние fr1 2026-06-21 18:17:14 +03:00