FTP - 550 Failed to change directory
Je suis en train d'écrire un fichier distant en utilisant le protocole FTP. Je suis l'aide de la flysystem de la bibliothèque de le faire en PHP. Il semble bien fonctionner. Cependant, quand j'essaye d'écrire dans un fichier dans un emplacement spécifique, il me donne la chdir() erreur. Pour tester cela, j'ai essayé cela sur le FTP en console.
[kbg@ip-192-0-1-118 ~]$ ftp
ftp> open 192.0.1.118
Connected to 192.0.1.118 (192.0.1.118).
220 (vsFTPd 2.2.2)
Name (192.0.1.118:kbg):
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/"
ftp> cd /projects/test
550 Failed to change directory.
Quand j'ai changé le suivant dans le vsftpd.fichier conf, il semble bien fonctionner.
chroot_local_user=NO
chroot_list_enable=NO
Je peux même utiliser la bibliothèque PHP pour écrire sans aucun problème. Quelle est la bonne façon de permettre à mes utilisateurs d'écrire dans un fichier dans le /projets/test/t1.fichier conf?
Vous devez vous connecter pour publier un commentaire.
Vous avez
chroot_local_user = No
mais il semble que vous n'avez pas la permission de traverser /projets/test .
Vous avez pour permettre ftp_user parcourir le répertoire ci-dessus. Pour cela :-
mais si vous avez à modifier le contenu d'un répertoire, vous avez de mieux ajouter ftp_user laisser dire ftp groupe par: -
Vous avez obtenu pour ajouter ftp groupe si vous ne l'avez pas déjà.
Maintenant modifier le groupe de la propriété et les autorisations pour le répertoire par:-
Et définir le guid bits, de sorte que tous les futurs fichiers et des répertoires à l'intérieur il permettra ftp_user pour y accéder.
Au lieu de le groupe , la même procédure peut être suivie pour l'utilisateur ownsership, des autorisations et de peu, mais je suppose que si vous travaillez avec un répertoire web, la propriété par défaut de l'utilisateur du serveur comme www, www-data, apache, etc ... , si vous avez de mieux travailler avec des groupes d'ici.
Ou, alternativement, l'option sécuritaire : -
et vous pouvez lier le sous-répertoire ftp répertoire home de l'utilisateur. Pour cela :-chroot_local_user = Yes
Pour l'obtenir persistante ajouter l'entrée à fstab :-
et maintenant, vous pouvez parcourir projects_test comme il est /projets/test.