Веб-сайт не может записывать файлы или создавать каталоги

Как правило, в обозримом будущем MD будет превосходить BTRFS. BTRFS в настоящее время сериализует записи на несколько устройств и читает только с одного для данного вызова чтения ().

Что касается безопасности данных, то для репликации лучше использовать BTRFS, чем MD или LVM2.Из-за внутренней контрольной суммы блока, выполняемой BTRFS, он может сказать, когда вы выполняете вызов чтения, являются ли данные хорошими или нет, и автоматически переключаться на другую копию, если это не так, и он правильно выберет хорошую копию. блок на основе блока -при очистке.

Теперь, с учетом всего сказанного, лучший вариант, который я пока нашел, — это фактически использовать BTRFS в режиме raid1 поверх двух томов MD или LVM2 RAID0. Хотя это не так хорошо работает, как ext4 или XFS поверх MD RAID10, оно все же работает намного лучше, чем реализация BTRFS raid10 или запуск одного устройства BTRFS поверх MD RAID10 на тех же устройствах, и обеспечивает такую ​​же безопасность данных. гарантии. К сожалению, для этого требуется четыре устройства.

0
11.04.2019, 17:09
3 ответа

SELinux существует не просто так. Он применяет ограничения доступа выше стандартных разрешений файловой системы и действительно делает ваш сервер более безопасным.

Вы должны попытаться заставить это работать с принудительным SELinux:-)

Вам необходимо выяснить, какие веб-каталоги TeemIP должны быть доступны только для чтения, а какие — доступны для записи Apache. Затем, используя инструкции в https://wiki.centos.org/HowTos/SELinux(, в частности части о переименовании файлов [5.2] ), соответствующим образом переименуйте каталоги.

Обычно вы должны использовать semanage fcontext -a -t httpd_sys_content_t "/<pathspec>(/.*)?"для каталогов только для чтения и semanage fcontext -a -t httpd_sys_rw_content_t "/<pathspec>(/.*)?"для каталогов с возможностью записи. Затем запустите restorecon -Rvв корневом каталоге, чтобы увидеть, как происходит волшебство.

С помощью таких команд, как ausearch -ts recent -m avc -i, при работе в разрешительном режиме(setenforce 0)вы можете проверить журнал аудита SELinux на наличие проблем с доступом. Вы даже можете получить подсказки, как исправить ошибки SELinux, выполнив audit2why -aили отправив отдельные записи журнала аудита в audit2why.

Как только TeemIP заработает, не создавая новых записей в журнале аудита SELinux, все готово:setenforce 1.

Удачи!

1
28.01.2020, 05:05

Решение состоит в том, чтобы отключить SELinux с помощью команды «setenforce 0». Чтобы навсегда разрешить запись в этот каталог и изменение файлов, либо отключите SELinux, либо установите принудительный режим SELinux в разрешающий режим, выполнив следующие действия:

  1. Введите команду :"nano /etc/selinux/config"
  2. Измените строку «SELINUX=Enforcing» на «SELinux=Permissive» ИЛИ «SELinux=Disabled» (в зависимости от того, хотите ли вы, чтобы SELinux регистрировал действия, нарушающие его политику)
  3. Введите команду :«перезагрузка»
-2
28.01.2020, 05:05

Сегодня я столкнулся с похожими проблемами и решил написать краткий ответ для нетерпеливых относительно прав чтения/записи SELinux.

Getenforce # see current mode.
getsebool -a # find al boolean values
Sudo setenforce 0 # shut it down, but its back at reboot -NOT RECOMMENDED other than debug.

Постоянное решение ниже. Строка 2 будет работать, но не переживет rename & restorecon (строка 3 переживет такие вещи ).

 ls -dZ /var/www/html  # See SELinux context of 
 sudo chcon -R -t httpd_sys_content_t /var/www/html/website-document-root
 sudo semanage fcontext -a -t httpd_sys_content_t "/var/www/html(/.*)?" 

В прошлом я также делал следующее, чтобы дать Apache разрешение на запись.

Selinux позволяет httpd читать и писать в /var/www/html/мой проект -.

sudo chcon -R -t httpd_sys_script_rw_t /var/www/html/my-project/
sudo chcon -R -t httpd_sys_script_rw_t /var/www/my-Symfony-project/var/log/

Ссылки на SELinux :https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/selinux_users_and_administrators_guide/sect-managing_confined_services-the_apache_http_server-types

1
26.04.2020, 12:01

Теги

Похожие вопросы