На эту тему много обсуждений, но многие из них субъективны, поскольку это такая гибкая тема, поэтому я надеюсь, что задаю объективный вопрос, относящийся к моей настройке, а именно: разумный ли это подход к проблеме разрешений Apache и FTP.
64-битный сервер LAMP Ubuntu 12.04 LTS, работающий в Amazon EC2; Apache2, MySQL, PHP.
Apache2 работает под www-данными.
Сайт по умолчанию Apache2 отключен. Сайт: mysitename.com включен.
siteavailable / mysitename.com настроен с DocumentRoot и директивой Directory для указания на / mnt / ebs1 / public_html
Чтобы передавать файлы FTP в указанный выше каталог public_html, а также иметь возможность управлять ими с терминала, я создал две конкретные учетные записи пользователей и группу:
удаленный-системный-пользователь удаленный-ftp-пользовательская группа: ftp
remote-system-user является членом группы администраторов, поэтому может выполнять операции sudo на терминале, а также в группе ftp. Он был создан с помощью adduser и имеет домашний каталог.
remote-ftp-user является только членом группы ftp. Он был создан с помощью useradd и не имеет домашнего каталога.
Затем я установил разрешения для / mnt / eb1 / public_html следующим образом:
sudo chgrp -R ftp / var / www sudo chmod -R g + w / var / www
Я использую proFTPd в качестве FTP-сервера, и используя его файл conf, я заключаю пользователя FTP в тюрьму в / mnt / ebs1 / public_html
Помимо, возможно, выбора лучшего имени для группы ftp, поскольку это немного нелогично, если удаленный пользователь SSH также является ее членом, каковы отзывы людей об этой настройке?
Цель состоит в том, чтобы не предоставлять полные разрешения www-data для папки public_html, но мне понадобятся пользователи сайта, чтобы иметь возможность загружать файлы. Я намереваюсь создать папку в public_html, доступную для записи с помощью www-data, чтобы решить эту проблему.
Спасибо
Я решил эту проблему, используя одного и того же пользователя веб-сервера, проблема в том, что вы хотите получить доступ с использованием групповых привилегий, но обычно у группы нет такой же авторизации пользователя, я имею в виду файлы веб-сервера, когда я был на Apache1 (я не знаю, является ли этот модуль доступно для Apache2) Я использовал для указания идентификатора пользователя и владельца группы для каждого виртуального хоста, что было полезно иметь пользователя ftp для каждого виртуального сервера ...