Требования:

  1. Пользователи sftp должны иметь возможность поддерживать сайты своей учетной записи через sftp. Я создал для них "sponponly" группу.

  2. Apache (пользователь: www-data) должен уметь читать, писать и выполнять в этих пользовательских папках "www". Например, функция автоматического обновления Wordpress должна работать без указания учетных данных ftp.

Файловая структура, которой я следую, выглядит следующим образом:

/home/<username>/www/<domain.tld>/public

Мне удалось заставить любое требование работать, но не два вместе.

Вот процесс, которым я следую, чтобы создать нового пользователя в данный момент:

adduser <username>
usermod -G sftponly <username>
chown root:root /home/<username>
chmod 755 /home/<username>
cd /home/<username>
mkdir www
chown -R <username>:sftponly *
chown -R www-data:www-data /home/<username>/www
chmod -R 770 /home/<username>/www

Как я могу удовлетворить оба требования?

Система: Ubuntu 14.04, Apache 2.4.7

1 ответ1

0

Я считаю, что самым простым способом удовлетворения обоих требований, вероятно, было бы использование списков контроля доступа:

ACL - Arch-Wiki

Просто добавьте еще одну группу примерно так:

setfacl -mR "g:sftponly:rw" /home/<username>/www

Если вы не можете или не хотите использовать ACL, я бы посоветовал взглянуть на эту документацию:

SCPOnly

SCPOnly - это специальная оболочка, которая может работать с тюрьмами chroot и PAM, чтобы обеспечить более безопасный удаленный доступ пользователей.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .