FTP는 작업 수행 권한이 있는 사용자에게 권한을 부여하지 않습니다.

FTP는 작업 수행 권한이 있는 사용자에게 권한을 부여하지 않습니다.

내 서버(Debian)에 FTP에 사용할 사용자가 있습니다. 파일 시스템의 특정 디렉토리에 대해 그는 디렉토리를 생성하거나 파일을 생성할 수 있습니다.

myuser@debian-server:/storage$ su ftp_accesser
Password: 
ftp_accesser@debian-server:/storage$ echo "foobar" > foobar.txt
ftp_accesser@debian-server:/storage$ mkdir -v foobar2
mkdir: created directory 'foobar2'
ftp_accesser@debian-server:/storage$ ls -l
total 448380
drwxr-xr-x 2 root         root              4096 Mar 25 19:32 other_dir
drwxrwxr-x 2 ftp_accesser ftp_accesser      4096 Apr  9 11:32 foobar2
-rw-rw-r-- 1 ftp_accesser ftp_accesser       7 Apr  9 11:31 foobar.txt

ftp_accesser@debian-server:/storage$ 

나는 또한 이 서버 에서 서버 를 운영 합니다 vsftpd. 위와 동일한 작업을 수행하기 위해 클라이언트를 사용해 보았습니다(물론 파일 삭제) ftp.

Connected to localhost.
220 (vsFTPd 3.0.3)
Name (localhost:myuser): ftp_accesser
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd /storage
250 Directory successfully changed.
ftp> mkdir foobar3
550 Permission denied.
ftp> put /home/myuser/foobar.txt foobar.txt
local: /home/myuser/foobar.txt remote: foobar.txt
200 PORT command successful. Consider using PASV.
550 Permission denied.
ftp> 

ftp_accesser가 /mkdir 파일을 서버에 넣을 수 있도록 하는 방법이 있습니까?

답변1

이것이 내 파일 write_enable=YES에서 주석 처리된 것으로 나타났습니다. /etc/vsftpd.conf주석을 제거하고 서버를 다시 시작하면 성공적으로 디렉터리를 만들고 파일을 배치할 수 있습니다.

관련 정보