大家好,提前谢谢大家。
所以我被困住了FTP 响应“550 权限被拒绝。”
系统:Ubuntu 14.04
和vsftpd: version 3.0.2
我创建了一个drupal
用于通过 FTP 工作的用户,homedir:/var/www/vhosts/somedomain.com
部分/etc/passwd
:
drupal:x:1005:65034::/var/www/vhosts/somedomain.com:/bin/false
VSFTPD 配置/etc/vsftpd.conf:
listen=YES
listen_port=xxxx
anonymous_enable=NO
local_enable=YES
write_enable=YES
allow_writeable_chroot=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/nchroot
log_ftp_protocol=YES
secure_chroot_dir=/var/run/vsftpd/empty
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
tcp_wrappers=YES
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
pasv_address=x.x.x.x
user_config_dir=/etc/vsftpd/user_conf
guest_enable=YES
guest_username=vsftpd
所有 /etc/pam.d/vsftpd:
auth sufficient pam_pwdfile.so pwdfile /etc/vsftpd/ftpd.passwd
account required pam_permit.so
我尝试将权限更改为 777,并将所有者更改为 drupal:drupal/var/www/vhosts/somedomain.com/htdocs
与 FTP 服务器的连接似乎可以工作,并且我可以看到正确的文件和目录的列表,但是我无法创建文件。
在 vsftpd 日志中我得到:FTP 响应“550 权限被拒绝。”
Google 一直告诉我,这要么是权限问题,要么是 vsftpd.conf 配置错误
write_enable=YES
allow_writeable_chroot=YES
但就我而言,一切都已安排好。
我觉得我遗漏了一些东西/etc/pam.d/vsftpd因为它是由其他人定制的。
答案1
由于您使用 guest_username 选项,因此 vsftpd.conf 文件需要添加以下行:
virtual_use_local_privs=是
来自手册:
虚拟使用本地权限 如果启用,虚拟用户将使用与本地用户相同的权限。默认情况下,虚拟用户将使用与匿名用户相同的权限,这往往更加严格(特别是在写访问方面)。
Default: NO