NGINX, FastCGI PHP с Доступом FTP, Как установить пользователей/полномочия?

Я играл вокруг с Ubuntu, NGINX, PHP, и т.д. недавно.

Я хочу смочь установить FTP и пользователя (пользователей)... проблема, которую я имею, то, что FastCGI PHP работает под www-данными (пользователь), но при входе на пути FTP с помощью учетной записи обычного пользователя (farinspace) файлы записан с помощью farinspace как владелец/группа...

в настоящее время я использую vsftpd, но думаю, что pureftp будет отвечать всем требованиям лучше для автоматических полномочий файла установки на загрузке.

Что лучший способ состоит в том, чтобы правильно установить FTP, смочь иметь несколько учетных записей пользователя FTP и правильно/надежно установить разрешение файла для пользователей, позволяя PHP иметь полный доступ для чтения-записи к файлам/каталогам, созданным пользователем FTP?

2
задан 03.08.2010, 02:37

1 ответ

Первые вещи сначала, установите отдельные счета Unix на каждого пользователя. Свяжите те учетные записи с FTP-сервером. Хотя действительно, необходимо использовать Безопасный FTP через SSH. С более новыми версиями OpenSSH можно установить учетные записи "только для SFTP", которые являются Chrooted в корневой каталог того пользователя. Обман! Теперь у Вас есть пользователи, надежно входящие в их собственные корневые каталоги без видимости к целой файловой системе. Файлы записаны с помощью их собственных полномочий пользователя/группы.

Затем можно установить FastCGI для выполнения с полномочиями отдельного пользователя. Это выглядит сложным, но существует учебное руководство, доступное здесь: Как установить FastCGI с Отдельными Полномочиями

Это - вероятно, лучший подход (хотя самое сложное), при попытке установить совместно использованный хостинг для различных пользователей, особенно если они - "недоверяемые" пользователи. Таким образом никто не сможет использовать Сценарии PHP, чтобы испортить файлы друг друга.

Если можно жить с тем, что пользователь может злонамеренно получить доступ к файлам другого пользователя, можно продолжить позволять FastCGI, выполненному как www-данные. Затем при установке корневого каталога каждого пользователя сделайте файлы принадлежавшими ГРУППЕ www-данных. Затем установите бит переключателя в chmod (т.е. chmod 2770 вместо всего 770). Это вынудит недавно созданные файлы наследовать владельца группы www-данных и разрешить FastCGI чтению-записи их.

Уф! Это было многоречиво. Сообщите мне, как это складывается путем добавления комментария здесь!

2
ответ дан 11.12.2019, 22:36

Теги

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