ограничить доступ к виртуальному хосту - PullRequest
0 голосов
/ 04 мая 2018

У меня 3 простых виртуальных хоста:

<VirtualHost *:80>
  DocumentRoot /var/www/example1.com/public_html
</VirtualHost>

<VirtualHost *:80>
  DocumentRoot /var/www/example2.com/public_html
</VirtualHost>

<VirtualHost *:80>
  DocumentRoot /var/www/example1-example2-log.com/public_html
</VirtualHost>

Ну, мой вопрос, как настроить это:

Example1.com и example2.com могут записать , включают , требуют для example1-example2 -журнал и собственный каталог, но не может писать, включать, требовать каталоги друг друга.

1 Ответ

0 голосов
/ 04 мая 2018

После добавления директив ServerName вы можете сделать это в каталоге / var / www:

-rwxr-x---     u1:g1       /var/www/example1.com
-rwxr-x---     u2:g1       /var/www/example2.com
-rwxrwx---  httpd:httpd    /var/www/example1-example2-log.com
  • Создание пользователя u1 и группы g1.
  • Создание пользователя u2 и группы g2.
  • Сделать пользователя httpd членом групп g1 и g2.
  • Сделать пользователей u1 и u2 членами группы httpd

Таким образом:

  • u1: доступ к example1.com (u1 является владельцем == rwx)
  • u1: полный доступ к example1-example2-log.com (группа httpd == rwx)
  • u1: невозможно получить доступ к example2.com (другие = ---)
  • u2: может получить доступ к example2.com (u2 является владельцем == rwx)
  • u2: полный доступ к example1-example2-log.com (группа httpd == rwx)
  • u2: невозможно получить доступ к example1.com (другие = ---)
  • httpduser может получить доступ ко всем каталогам (группы g1 и g2 == r-x, группа httpd = rwx)

Другими словами:

  • только u1 может полностью получить доступ к своим файлам
  • только u2 может полностью получить доступ к своим файлам
  • httpd может читать все файлы (требуется, поскольку Apache должен иметь возможность читать файлы, чтобы передавать их клиентам)
  • u1 и u2 могут полностью обращаться к файлам httpd.
  • но u1 не может получить доступ к файлам u2 (наоборот)
...