Я установил доступ по протоколу sFTP на сервере Karmic Ubuntu 9.10, но у меня возникли проблемы с разрешениями.
С учетной записью sFTP, которую я создал, она автоматически входит в систему, чтобы:
/srv/www/domain.com/
Однако на самом деле я могу загружать только в:
/srv/www/domain.com/public_html
Это не работает, так как мне нужно создавать каталоги и т. Д. Параллельно с public_html. Я понимаю, что это то, что я, вероятно, сделал неправильно, так как он был исправлен из нескольких файлов справки.
Я последовал за эти инструкции чтобы создать группу для доступа по протоколу sFTP, я затем создал пользователя, а затем модифицировал его домашний каталог, используя:
usermod -d /srv/www/domain.com newuser
Дайте мне знать, если вам нужна другая информация для устранения этой проблемы.
ВЫВОД КОМАНД
> ls -al /srv/www/domain.com/ | grep public_html
drwxr-xr-x 2 newuser newuser 4096 2010-08-24 12:38 public_html
> ls -al /srv/www/ | grep domain.com
drwxr-xr-x 5 root root 4096 2010-08-24 12:21 domain.com
> groups newuser
newuser : newuser filetransfer
> ls -ld /srv/www/domain.com/
drwxr-xr-x 5 root root 4096 2010-08-24 12:21 /srv/www/domain.com/
Вы используете ChrootDirectory
директива OpenSSH.
Это будет работать только в том случае, если домашний каталог соответствующего пользователя принадлежит root:root
и является не всемирная или глобальная запись (т. е. имеет маску разрешений 0755
но нет 0770
). sshd
выдаст предупреждение в вашем auth.log
(или место назначения AUTH средства системного журнала) в противном случае.
Домашний каталог здесь вряд ли будет проблемой, если вы видите каталог, в который хотите писать, просто не можете в него писать.
Каков результат следующих команд:
ls -al /srv/www/domain.com/ | grep public_html
(если есть лучший способ, скажите так)
groups newuser