Мы просто потратили немало времени на ошибки прав доступа к файлам для GitList. Нас ввели в заблуждение, потому что отказов нет ни в одном из ожидаемых журналов, и они не сообщаются ausearch или setroubleshoot. Единственная причина, по которой мы знаем, что проблема была в selinux, заключается в том, что все снова начало работать после того, как мы запустили:
WWW_DIR=/usr/exports/www/html/gitlist
GIT_DIR=/usr/exports/repositories/git
sudo semanage fcontext -a -t httpd_sys_rw_content_t "$WWW_DIR/cache(/.*)?"
sudo restorecon -R -v $WWW_DIR/cache
sudo chcon -R --reference=$WWW_DIR/src/Git/Client.php $GIT_DIR
# Allow the webserver to read, home directories have stricter default rules.
sudo semanage fcontext -a -t httpd_sys_content_t "$GIT_DIR(/.*)?"
sudo restorecon -R -v $GIT_DIR
Почему могут быть скрыты отрицания?
Apache:
Server version: Apache/2.4.6 (CentOS)
Server built: Aug 8 2019 11:41:18
CentOS Linux release 7.7.1908 (Core):
Linux choochoo.dungeon.org 3.10.0-1062.4.1.el7.x86_64 #1 SMP Fri Oct 18 17:15:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux