Я изучил многие веб-сайты и форумы о том, как настроить пользователя SFTP, который помещен в определенный каталог с помощью CHROOT. Вот шаги, которые я выполнил, но я не могу получить разрешение на запись для работы.
Настроить
sshd_config
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp
Match group webmaster
X11Forwarding no
ChrootDirectory %h
AllowTcpForwarding no
ForceCommand internal-sftp
Создать папку
mkdir /var/www/sites
Создать пользователя и группу
useradd uploader
passwd uploader
usermod -d /var/www/sites uploader
groupadd webmaster uploader
groupadd www-data uploader
Разрешения и владение
chown root:root /var/www
chmod 755 /var/www/sites
Теперь с этими настройками пользователь может загружать SFTP в домашний каталог, но не может записывать в каталог.
Возникают 2 типичные ошибки: я либо не могу войти, либо у меня нет прав на запись.
Ошибка входа
Error: Network error: Software caused connection abort
Error: Could not connect to server
Changing permissions of /var/www/sites to 775 or 777 causes login error.
chown /var/www/sites to uploader:root causes login error.
chwon root:webmaster or root:www-data I have no write permissions
Я в конце концов пытаюсь понять это, и если бы кто-то мог указать мне правильное направление, я был бы очень признателен.
Спасибо.
Match
поддерживают несколько целей в списках, разделенных запятыми, поэтому мы могли бы значительно упростить / привести в порядок, имея один набор переопределений для обоих пользователей, по заголовкуMatch User dev1,dev2