Вы хотите протестировать это сначала (поскольку я не сделал):
find . -type d -exec chmod u+x {} \;
Найдите все каталоги, затем добавьте x-bit для владельца/пользователя.
Запустите эту команду, не нужно перезапустить любой сервис и сервер:
# setenforce 0
Чтобы проверить статус SELinux:
# getenforce
или
Изменить файл / etc / sysconfig / SELINUX
, чтобы включить
SELINUX=disabled
. Для этого потребуется перезагрузка.
Я отключил selinux путем следования этим инструкциям здесь. Я смог войти в систему, не используя sftp.
Для отключения постоянно я отредактировал /etc/selinux/config
и набор
SELINUX=disabled
После перезагрузки я смог войти в систему обычно.
Хотя отключая SELinux SELINUX=disabled
решит проблему, это не было бы желательно. Можно позволить пользователю FTP получить доступ к своему корневому каталогу путем конфигурирования булева значения SELinux ftp_home_dir
путем выполнения следующей команды:
setsebool -P ftp_home_dir=1
Вероятно, у пользователя нет прав на выполнение в своей домашней папке. Выполните:
chmod +x /home/user
или,
chmod 700 /home/user
Запуск setenforce 0
, предложенный другим ответом, у меня не сработал.
Следующая команда решила проблему:
chmod -R 755 /home/dbadmin
(Ранее каталог /home/dbadmin имел 700 разрешений.)
Надеюсь, это поможет.
local_root=/var/www/ftp/$USER
user_sub_token=$USER