После обновления или внесения изменений вручную вы можете открыть раздел «Обзор» в административной панели Nextcloud и увидеть сообщение «Некоторые файлы не прошли проверку целостности». Это предупреждение может быть тревожным, но оно не указывает на какую-либо универсальную ошибку. Nextcloud проверяет, соответствует ли установленный серверный и прикладной код ожидаемым подписанным файлам. Измененный или отсутствующий файл, неожиданный файл или проблема с подписью приложения могут вызвать это предупреждение. Повторное сканирование сообщает о текущем состоянии; оно не восстанавливает файлы.
На официальной странице загрузки Nextcloud указана версия Server 35.0.0, выпущенная 16 сентября 2026 года, как последняя на момент написания статьи. Текущая административная документация по-прежнему предписывает администраторам проверить отчет о недействительных файлах, устранить конкретную причину и повторно выполнить сканирование. Ниже описаны шаги, соответствующие этому стандартному процессу; точная формулировка пунктов меню может отличаться в зависимости от версии или пакета хостинга.
1. Перед внесением каких-либо изменений ознакомьтесь с отчетом о некорректных файлах.
Войдите в систему как администратор и откройте «Настройки администрирования» > «Обзор» . В предупреждении о нарушении целостности выберите «Список недействительных файлов…» (название может немного отличаться). Сохраните или скопируйте отчет в конфиденциальное место, чтобы сравнить его после восстановления. В нем указывается приложение или основная область и перечисляются такие условия, как INVALID_HASH, MISSING_FILE, EXTRA_FILE, и EXCEPTION.
Перед заменой серверных файлов создайте резервную копию конфигурации Nextcloud, базы данных и любого пользовательского кода приложения. Не редактируйте файлы signature.json, не создавайте новые подписи для отключения предупреждения и не удаляйте файлы только потому, что их имена фигурируют в отчете. Проверка защищает подлинность кода и может также выявить неожиданный файл, требующий исследования.
2. Сопоставьте тип ошибки с соответствующим способом её устранения.
| Запись в отчете | Что это значит | Безопасные дальнейшие действия |
|---|
INVALID_HASH | Содержимое файла не соответствует подписанной версии. | Определите, является ли это основным кодом или файлом приложения; восстановите этот файл из соответствующего доверенного релиза или пакета приложения. |
MISSING_FILE | Файл, ожидаемый согласно подписи, отсутствует. | Восстановите отсутствующий файл из соответствующего официального пакета или переустановите/обновите затронутое приложение. |
EXTRA_FILE | Файл присутствует, но не входит в набор подписанных файлов. | Выясните, кто добавил этот код и почему. Переместите его за пределы каталога кода Nextcloud или удалите только после подтверждения его ненужности. |
EXCEPTION | Проверить подпись не удалось, например, из-за отсутствия или недействительности данных подписи. | Используйте совместимую, проверенную версию приложения или свяжитесь с его разработчиком; не редактируйте файл подписи. |
Эти метки являются диагностическими признаками, а не доказательством атаки или безопасности установки. Локальное редактирование разработчика, скопированный файл резервной копии, неполное развертывание и несанкционированный код могут привести к различным результатам. Если вы не можете объяснить неожиданный PHP-файл или измененный файл дампа памяти, сохраните отчет и проведите расследование, прежде чем удалять или перезаписывать его.
3. Восстановите основные файлы из той же версии Nextcloud, что и в предыдущем выпуске.
Если в отчете указаны файлы в папке core, например index.php, или version.php, сначала проверьте, не был ли процесс обновления прерван или код был изменен в процессе развертывания. Подтвердите установленную версию в разделе «Обзор» в административной панели или сравните ее с вашими обычными записями развертывания. Не копируйте файл из другой версии Nextcloud: его хеш не будет совпадать с релизом, установленным на сервере.
По возможности используйте поддерживаемый инструмент обновления для завершения прерванного обновления. Если вам необходимо восстановить файлы вручную, загрузите соответствующий архив сервера с официальной страницы загрузки Nextcloud, проверьте архив, используя опубликованную контрольную сумму или подпись PGP, и замените только затронутые файлы кода приложения в соответствии с инструкциями по обновлению Nextcloud. Сохраните config/каталог данных и любые локально поддерживаемые приложения или темы. Следуйте процедуре резервного копирования и режима обслуживания для вашего метода установки; для Docker, Snap, виртуальных устройств и управляемого хостинга может потребоваться собственный процесс обновления.
В руководстве по обеспечению целостности Nextcloud для недействительного хеша ядра применяется тот же принцип: восстановить правильные файлы, а затем повторно просканировать. При передаче файлов через FTP в руководстве особо рекомендуется использовать бинарный режим передачи. Избегайте запуска обновления с отключенной проверкой подписи в качестве быстрого способа. Архив, установленный вручную и не прошедший проверку, может создать новые проблемы с целостностью и безопасностью.
4. Внимательно проверьте дополнительные файлы и внесенные изменения.
Запись EXTRA_FILEможет представлять собой оставшийся временный файл, резервную копию редактора, пользовательский скрипт или что-то, что вы не узнаете. Проверьте его полный путь, метку времени, владельца и историю развертывания. Если это легитимный пользовательский инструмент, переместите его за пределы каталога кода Nextcloud и предоставьте к нему доступ через поддерживаемое приложение или отдельную службу, где это уместно. Если это устаревшая резервная копия, удалите ее только после сохранения всего необходимого. Если недавно появился необъяснимый исполняемый файл или PHP-файл, рассматривайте это как расследование безопасности: сохраните доказательства, просмотрите журналы доступа и веб-сервера и следуйте своему процессу реагирования на инциденты, а не просто удаляйте предупреждение.
В случае, INVALID_HASHесли вы намеренно отредактировали основной файл, наиболее эффективным решением будет восстановление подписанного основного файла и перенос пользовательского поведения в поддерживаемое приложение, тему или документированную точку расширения. Не изменяйте ожидаемый хеш и не меняйте метаданные релиза, чтобы проверка прошла успешно. Для пользовательских дистрибутивов Nextcloud существуют отдельные требования к веткам релизов, описанные в документации по подписи кода; изменение этого параметра предназначено для сопровождающих пользовательский дистрибутив, а не для стандартного исправления при обычной установке.
5. Восстановите цифровую подпись приложения или файл приложения.
Если в отчете указан каталог приложений, определите его идентификатор и выясните, было ли приложение обновлено, скопировано вручную или изменено локально. Используйте интерфейс приложений Nextcloud или свой метод развертывания для обновления или переустановки совместимой версии из надежного источника. Сначала создайте резервную копию данных и конфигурации приложения и проверьте совместимость с вашей основной версией Nextcloud. Для пользовательских или разработанных внутри компании приложений обратитесь к их сопровождающему за подписанным пакетом или исправленной версией. Nextcloud требует подписывания кода для приложений, опубликованных через его магазин приложений; требования к подписи и их соблюдение могут отличаться для других категорий приложений, поэтому используйте соответствующую документацию для разработчиков, а не придумывайте локальную подпись.
Не перезаписывайте каталог приложения случайным архивом и не копируйте его signature.jsonиз другой версии. Подпись описывает конкретный код; смешивание файлов из разных релизов может привести к дополнительным ошибкам. Если вам необходимо удалить приложение, используйте поддерживаемый процесс управления приложениями и убедитесь, что удаление не приведет к потере данных, необходимых вашей организации.
6. Выполните повторную проверку целостности.
После исправления обнаруженных файлов вернитесь в раздел «Администрирование» > «Обзор» и выберите «Повторное сканирование…» . Дождитесь завершения сканирования, затем снова откройте список недействительных файлов. Если вы администрируете сервер по SSH, в документации Nextcloud 35 описаны следующие команды из каталога установки Nextcloud:
sudo -E -u www-data php occ integrity:check-core
sudo -E -u www-data php occ integrity:check-app calendar
sudo -E -u www-data php occ integrity:check-app --all
Замените calendarна идентификатор приложения, указанный в вашем отчете. Учетная www-dataзапись является распространенной в установках на основе Debian или Ubuntu, но пользователь вашего веб-сервера и исполняемый файл PHP могут отличаться. Используйте правильную учетную запись и среду PHP для вашей системы; для установок в контейнерах выполните эквивалентную команду внутри соответствующего контейнера. В текущем руководстве OCC указано, что успешная проверка приложения может не выдавать никакого вывода, если не запрошен подробный режим, в то время как при ошибках отображаются подробные сведения.
Как определить, исправлено ли предупреждение
Откройте заново панель обзора администратора и убедитесь, что предупреждение о нарушении целостности исчезло после нового сканирования. Если оно осталось, сравните новый отчет с сохраненной копией: одинаковый путь означает, что базовый файл не был восстановлен или использовалась неправильная версия; другой путь может выявить вторую проблему. Снова запустите соответствующую проверку ядра или приложения и просмотрите журнал Nextcloud на наличие ошибки подписи. Также убедитесь, что экземпляр выполняет обычный вход в систему, просмотр файлов, загрузку и скачивание.
Если предупреждение появляется снова после развертывания, поищите сценарии автоматизации, плагины или скрипты ручного обслуживания, которые перезаписывают файлы внутри дерева подписанного кода. Если отчет о целостности чист, но пользователи по-прежнему видят ошибки, исходная проблема может иметь другую причину и должна быть устранена отдельно. Для размещенного Nextcloud отправьте провайдеру точный отчет и установленную версию; избегайте включения паролей, закрытых ключей или содержимого пользовательских файлов.
Подробную информацию о конкретной версии см. в документации Nextcloud по цифровой подписи и целостности кода , справочнике по проверке целостности OCC , руководстве по обновлению Nextcloud и на официальной странице загрузки .