Parece que o SELinux entrou no seu caminho aqui. Se você não quiser que o SELinux impeça o FTP de gravar arquivos em qualquer parte do sistema, você precisa ativar o booleano allow_ftpd_full_access. Primeiro de tudo, verifique se ele está ativado ou desativado no momento:
getsebool allow_ftpd_full_access
Se ele disser que está desativado, ative-o com este comando (pode demorar um minuto ou mais para ser aplicado em todo o sistema, por isso seja paciente):
setsebool -P allow_ftpd_full_access=1
Além disso, como você configurou o homedir do usuário para / var / www, também será necessário definir a configuração ftp_home_dir
como Ativada.
setsebool -P ftp_home_dir=1
Quando você define o homedir, o contexto de segurança user_home_t
provavelmente também foi definido em / var / www. Defina-o como algo mais público, como httpd_sys_content_t
ou public_content_rw_t
. Você pode usar chcon
para isso.
chcon -R -t httpd_sys_content_t /var/www
Reinicie seu servidor FTP depois de aplicar essas configurações e você deve estar pronto.
Veja esta documentação se quiser informações mais aprofundadas.