Серверы и ИИ: практическое применение
SaveConfig wg-quick: файл может быть перезаписан рабочим состоянием при остановке
При ручном обслуживании легко изменить файл туннеля и предположить, что новая версия уже сохранена для следующего старта. Но при SaveConfig=true wg-quick записывает конфигурацию из текущего состояния интерфейса при его завершении. Поэтому порядок действий имеет практическое значение.
Руководство прямо предупреждает: изменения, сделанные в файле до удаления интерфейса, могут быть перезаписаны. Текущий peer или параметр в памяти и строка на диске не являются автоматически одним состоянием. Отдельная команда save позволяет сохранить существующий интерфейс без его остановки, но это также запись, а не диагностическое чтение.
В проекте выбирают источник истины: управляемый файл либо согласованное сохранение runtime. Учитывают сетевой менеджер, автоматизацию и владельца прав на конфигурацию. Одновременная правка файла человеком и сохранение работающего интерфейса другой службой создают конфликт, который успешный handshake не выявит.
В приёмке используют тестовую конфигурацию и проверяют содержимое после предусмотренных save, down и следующего up. Отдельно сверяют, какие данные должны сохраняться, а какие задаются внешним управлением. Резервную копию конфигурации защищают как источник секретов. Само существование файла после остановки не подтверждает сохранение последней согласованной редакции.
Основание — Official wireguard-tools1.0.20260223 release manual/code sources; Linux wg-quick scope, разделы wg-quick.8 SaveConfig; save; down; linux.bash save_config implementation. Сохранён текст публичной справочной публикации; конкретная реализация может поддерживать только часть возможностей. Использованы руководства и указанные фрагменты Linux-реализации из wireguard-tools 1.0.20260223. Совместимость ядра и установленной сборки не проверялась; ключи, туннели, маршруты, DNS и firewall не изменялись.