Я пытаюсь настроить Apache с помощью одного пользователя 'ftpuser', который может совместно использовать / обращаться к каталогу /var/www/html
, который содержит различные файлы / подкаталоги. Однако, когда я вхожу через FTP под «ftpuser», все становится пустым, и я ничего не могу загрузить. Вот что я сделал, чтобы сделать это:
Настройка разрешений VSFTPD с сервером Apache
в котором изложены шаги:
- настроить vsftpd для umask 0027 (
/etc/vsftpd.conf
) [local_umask = 0027] - создать группу www (groupadd www)
- добавить пользователя в группу (
usermod -a -G www apache
и та же команда с www ftpuser) - Установите apache для работы в качестве группы www (httpd.conf)
chgrp www /var/www
chmod 2775 /var/www
Я перезапустил Apache/vsftpd после всего этого. Однако, когда я пытаюсь войти в FTP, каталог становится пустым, и если я пытаюсь создать файл, он говорит: «Не удалось начать передачу данных». Я предполагаю, что это ошибка отказа в разрешении.
Я также отредактировал файл /etc/passwd
и изменил домашний каталог на /var/www/html
. Может ли кто-то пролить свет на то, что это за проблема? Благодарю.
РЕДАКТИРОВАТЬ:
В случае, если у кого-то еще есть эта проблема, проблема состояла в том, что selinux был отключен, но фактически не был отключен. Его нужно было перезапустить, прежде чем он был отключен и больше не блокировал домашние каталоги. Если вы хотите оставить selinux включенным, используйте следующую команду:
setsebool -P ftp_home_dir on
Надеюсь, что это помогает кому-то.