Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

CHMOD_RESET_PERMS Linux / DevOps

Как вернуть стандартные права (chmod 755 / 644) на веб-папку в Linux

Обновлено: 27.08.2026 · Официальная документация ↗

Что происходит после ошибочного chmod -R 777

Новички часто пытаются решить проблемы с загрузкой картинок командой chmod -R 777 /var/www. Это создает критическую дыру в безопасности (любой пользователь может перезаписать скрипты) и часто ломает работу SSH и веб-сервера (ошибки 500 Internal Server Error и 403 Forbidden).

Золотой стандарт прав доступа для веб-директорий

Правильная схема разрешений в Linux для сайтов:

  • Все директории (папки) должны иметь права 755 (чтение, запись владельцу, вход всем);
  • Все файлы должны иметь права 644 (чтение всем, запись только владельцу).

Команды безопасного сброса прав (на примере /var/www/my_site):

# 1. Меняем владельца на системного пользователя веб-сервера (www-data):
sudo chown -R www-data:www-data /var/www/my_site

# 2. Находим ВСЕ папки и выставляем 755:
sudo find /var/www/my_site -type d -exec chmod 755 {} +

# 3. Находим ВСЕ файлы и выставляем 644:
sudo find /var/www/my_site -type f -exec chmod 644 {} +

Для файлов конфигурации с паролями (.env, wp-config.php): Рекомендуется выставить еще более строгие права 600 или 640, чтобы их не могли прочитать посторонние локальные пользователи: chmod 600 /var/www/my_site/.env.

💡 Практика специалистов: Конструкция find ... -exec chmod {} + работает в сотни раз быстрее, чем вызов с окончанием \;, так как группирует файлы в один вызов команды вместо запуска отдельного процесса на каждый файл.

Частые вопросы (FAQ)

Почему нельзя просто сделать chmod -R 644 на всю папку?

Если сделать chmod 644 на папки, они потеряют флаг исполнения (+x). В Linux флаг +x для каталогов означает право войти в папку. Без него сервер выдаст ошибку 403 Forbidden на весь сайт.

Кто такой пользователь www-data?

Это специальная системная непривилегированная учетная запись, от имени которой работают веб-серверы Nginx, Apache и службы PHP-FPM в Ubuntu и Debian.

Как дать права на запись только одной конкретной папке uploads?

Убедитесь, что владелец www-data: sudo chown -R www-data:www-data /var/www/site/uploads и установите права: chmod 775 /var/www/site/uploads.

Какой пользователь веб-сервера используется в CentOS/AlmaLinux?

В семействе Red Hat / CentOS веб-сервер работает от имени пользователя apache или nginx (вместо www-data).

Полезные материалы
Рекомендуем