Лучший способ настроить apache2 права доступа

У меня есть сервер с человечностью 14.04.

Я установил apache2, php5 и чистый-FTPd.

Таким образом апач работает в mpm предварительном ветвлении с одним процессом, принадлежавшим корню и всем дочерним процессам, принадлежавшим www-данным.

/var/www/html принадлежит корню (-rw-r - r - 1 корневой корень)

Теперь у меня есть пользователь FTP, названный ftpuser.

Каков был бы лучший способ (и более безопасный) так, чтобы ftpuser мог создать и отредактировать файлы под/var/www/html?

Я могу изменить владельца группы/var/www/html к www-данным с доступом для записи и добавить ftpuser к группе www-данных?

Если теперь я также хочу использовать mediawiki, ему иногда нужен доступ для записи к/var/www/html. Так тот же вопрос: я могу изменить владельца группы/var/www/html к www-данным с доступом для записи?

2
задан 19 June 2014 в 13:36

3 ответа

Обычно, это - плохая идея дать доступ для записи к учетной записи, выполняющей веб-сервер (www-данные в соответствии с Ubuntu).

Для Вашего сценария я изменил бы владельца /var/www/html к ftpuser с чтением-записью для него, только для чтения для группы и других. Apache должен, по крайней мере, смочь читать в этом каталоге.

UPD: Если у Вас есть больше чем один пользователь для предоставления доступа к, поместите их всех в ту же группу, измените владение группы на эту группу и дайте чтение группы и доступ для записи также.

Мудрый безопасностью, это - плохая идея дать доступ для записи Apache ко всем файлам, к которым он может получить доступ. Если кто-то сможет сделать "противные вещи" с Вашим веб-сервером, то по крайней мере, он не сможет изменить файлы с помощью Apache непосредственно.

Не забывайте защищать установку FTP-сервера, который Вы намереваетесь использовать, чтобы позволить ftpuser загрузить файлы.

Если бы Mediawiki должен записать на некоторых файлах, я дал бы этим файлам только права чтения-записи для www-пользователя-данных (путем установки владельца этих файлов к www-данным). Если Вы не можете предсказать, какие файлы должны быть перезаписываемы веб-приложением, Вы были бы лучше для изоляции этого приложения в подпапку ´/var/www/html´.

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

2
ответ дан 2 December 2019 в 04:01

Веб-сервер Apache2 доступен в Ubuntu Linux. Устанавливать Apache2:

При терминальной подсказке вводят следующую команду:

sudo apt-get install apache2 

Основные настройки

Если Вы хотите настроить новый виртуальный хост или сайт, скопировать тот файл в тот же каталог с именем, Вы выбираете. Например:

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mynewsite

Отредактируйте новый файл для конфигурирования нового сайта с помощью некоторых директив, описанных ниже.

0
ответ дан 2 December 2019 в 04:01

Если Вам уже не установили Apache, можно сделать так теперь путем выдачи следующих команд:

sudo apt-get update
sudo apt-get install apache2

Это - все, что необходимо, чтобы иметь рабочий веб-сервер. При посещении IP-адреса VPS в веб-браузере Вы получите индексную страницу Apache по умолчанию:

your_domain_name_or_ip_address

It works!
This is the default web page for this server.
The web server software is running but no content has been added, yet.

Файловая иерархия Apache в Ubuntu и Debian

На Ubuntu и Debian, Apache сохраняет свои основные конфигурационные файлы в "/etc/apache2" папке:

cd /etc/apache2
ls -F

apache2.conf  envvars     magic            mods-enabled/  sites-available/
conf.d/       httpd.conf  mods-available/  ports.conf     sites-enabled/

Рассмотрение файла Apache2.conf

Основные детали конфигурации для Вашего сервера Apache сохранены в "/etc/apache2/apache2.conf" файле.

Этот файл разделен на три основных раздела: конфигурация для глобального серверного процесса Apache, конфигурация для сервера по умолчанию и конфигурация Виртуальных Хостов.

В Ubuntu и Debian, большинство файла для глобальных определений, и конфигурация сервера по умолчанию и виртуальных хостов обрабатывается в конце, при помощи "Включают..." директиву.

"Включать" директива позволяет Apache читать другие конфигурационные файлы в текущий файл в местоположении, что оператор появляется. Результат состоит в том, что Apache динамично генерирует всеобъемлющий конфигурационный файл на запуске.

Если Вы прокручиваете к нижней части файла, существует много различных операторов "Include". Эти определения загрузочного модуля, ports.conf документ, определенные конфигурационные файлы в "conf.d /" каталог, и наконец, Виртуальные определения Хоста в "поддерживающий сайты /" каталог.

Мы сфокусируемся на первой части файла, чтобы изучить, как Apache определяет свои глобальные настройки.

Я надеюсь, что это работает на Вас

0
ответ дан 2 December 2019 в 04:01

Другие вопросы по тегам:

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