Как разрешить нескольким пользователям SFTP с S3FS и OpenSSH?
Все работает, за исключением того, что пользователи SFTP не имеют разрешения на запись в свой Chrooted домашний каталог: remote open("/some_file"): Permission denied
Настроить
У меня есть экземпляр Amazon EC2 под управлением Amazon Linux. Я установил S3FS и установил ведро S3. Я также настроил OpenSSH, чтобы пользователи SFTP могли получать доступ к Chrooted Home каталогу внутри смонтированного S3 Bucket. /s3_mounted_folder/user_folder/
. Я успешно использовал SFTP-соединение в каталоге, не подключенном к S3. Я успешно использовал ведро S3 для создания и загрузки файлов с S3 как root на экземпляре EC2 через SSH. Мои пользователи SFTP могут успешно загружать файлы со своих /s3_mounted_folder/user_folder/
каталог. Проблема в том, что пользователи SFTP не могут put
файлы в смонтированную папку S3.
Проблема ... я думаю
Я могу настроить только все папки (/s3_mounted_folder/
и /s3_mounted_folder/user_folder/
) с тем же пользователем: группой и теми же разрешениями, поэтому я не могу предоставить пользователю доступ для записи в его / ее домашний каталог (/s3_mounted_folder/user_folder/
). Если я смонтирую корзину с пользователем или группой и дам разрешения на запись, тогда OpenSSH SFTP не позволит пользователям подключаться, поскольку считает, что разрешения пользователя настроены неправильно (пример: drwxr-xr-x 1 root root
vs. drwxrwxr-x 1 root usergroup
).
Команды S3FS
Вот две разные команды для запуска S3FS в этих двух режимах (где пользователь 501 и группа 501 являются пользователем и группой SFTP):
права пользователя root (drwxr-xr-x 1 root root
): sudo s3fs nwd-sftp /sftp/ -o iam_role=sftp-server -o allow_other -o umask=022
разрешения пользователя sftp (drwxrwxr-x 1 root usergroup
): sudo s3fs nwd-sftp /sftp/ -o iam_role=sftp-server -o allow_other -o umask=002 -o gid=501
В этом втором сценарии пользователь теоретически сможет put
файлы в свой домашний каталог через SFTP, но SFTP не позволит им подключиться, потому что их домашний каталог Chrooted имеет права записи для группы, которая не является корневой.