Как настроить доступ SELinux к нестандартному веб-корню? - PullRequest
0 голосов
/ 23 ноября 2018

В качестве учебного упражнения я установил машину CentOS 7 Vagrant VirtualBox на своем компьютере для разработки Fedora 29.Я использую Ansible для настройки VM.В моем Vagrantfile я монтирую свой файл проекта хоста следующим образом:

 config.vm.synced_folder "/home/roger/projects", "/var/www/projects",
    owner: "vagrant",
    group: "nginx",
    mount_options: ["dmode=775,fmode=775"]

В моей роли Nginx Ansible я делаю следующее (в дополнение к установке и запуску):

- name: set SELinux Nginx access to web root   
  command: semanage fcontext -a -t httpd_sys_content_t "/var/www/projects(/*)?" 

- name: persist SELinux access 
  command: restorecon -Rv /var/www/projects

Когдаобращаясь к Nginx через браузер, я получаю ошибку 403 Forbidden.Если я настрою selinux на vm с помощью ssh, чтобы разрешить его, то файлы в моем каталоге проектов хоста будут обслуживаться правильно.

Записи в /etc/selinux/targeted/contexts/files/file_contexts.local выглядят правыми:

/var/www/projects/*    system_u:object_r:httpd_sys_content_t:s0

Я также попытался запустить команды в командной строке на виртуальной машине, чтобы обойти все, что связано с Ansible.

Чего мне не хватает?

...