Я создал пользователя и сделал его домашний каталог /var/www/mysite/ftpdir
Я также добавил запись пользователя Match для этого пользователя в sshd_config
ChrootDirectory, который указывает на/var/www/mysite
Я перезапустил, ssh
чтобы забрать это.
Когда я вхожу с sftp - пользователь все еще идет в старый каталог пользователя, т.е. /home/user
Что мне не хватает?
/home/user
на цель?Ответы:
Это процесс:
Добавьте пользователя в группу:
sudo usermod -aG www blub
как в « Какой самый простой способ редактировать и добавлять файлы в« / var / www »?или просто использовать
sudo adduser <username> www-data
sudo apt-get install vsftpd
Настройте vsftpd для удаленного доступа:
sudo nano /etc/vsftpd.conf
и внутри набора файлови убедитесь, что это закомментировано:
в соответствии с документацией .
sudo service vsftpd restart
Настройте домашний каталог пользователя на веб-каталог (не в
/home
):Настроить ssh chroot
добавить в конец следующее:
и убедитесь, что далее в файле это закомментировано (т.е. перед тем, который вы только что добавили)
Перезагрузите SSH
Изменим разрешения для apache:
Как в документации здесь .
Убедитесь, что ваш каталог имеет доступ к данным www
источник
chown root:root /var/www/site
только вернуть егоsudo chown -R www-data:www-data /var/www/site
на шаг 10, это преднамеренно?Если в конце вы получаете сообщение об ошибке «Отказано в соединении», убедитесь, что после «UsePAM yes» указано «Subsystem sftp internal- sftp» . Если нет, то обновите и перезапустите ssh и все заработало.
источник
У меня есть простой метод, и он работал для меня Apache.
Вот и все, если вы все еще сталкиваетесь с проблемой использования разрешений
chmod
иchown
решаете их в соответствии со своими потребностями.источник