Это действительно странно. У меня настроен сервер Ubuntu (12.04) с proFTPD, и я включил SFTP. У меня есть пользователь, которому я хочу иметь возможность редактировать набор файлов. Файлы принадлежат пользователю www-data и группе www-data. Файлы имеют права 664. Пользователь состоит в группе www-data и имеет возможность просматривать и редактировать файлы при подключении по ssh через шелл. Однако через SFTP пользователь может просматривать эти файлы, но попытка их редактирования приводит к тому, что SFTP сообщает об отказе в разрешении, а затем размер файла становится нулевым. Однако пользователь может удалять и перемещать файлы. Может ли кто-нибудь думать о какой-либо причине, почему это может происходить? Я также попытался изменить групповое владение файлом на другую группу и добавить пользователя в эту группу, но возникает та же проблема.
Проблема не возникает при использовании обычного FTP с proFTPD.
Изменить: по запросу полный текст ошибки (это интерактивный режим командной строки sftp):
Uploading /Users/leonaves/Desktop/testfile to /testfile
remote open("/testfile"): Permission denied
Изменить 2: вывод ls -l для домашнего каталога пользователя:
Редактировать 3: журнал SFTP показывает следующее:
error changing permissions of '/testfile' to 0100644: Operation not permitted
testfile
? - person Kenster   schedule 04.11.2015strace
на серверном процессе и повторить тест. Если системный вызов не работает — в отличие от того, что proFTPD применяет какое-то собственное правило — тогда strace должен точно показать, что происходит. - person Kenster   schedule 04.11.2015