我已成功安装并配置了 vsftp。我已创建用户 (joe) 和同伴组 (joes)。
我的用户“joe”可以在通过 ssh 登录时在其“主”目录中创建、更新和删除文件,而不会出现错误。Joe 的主目录已通过 usermod -d 设置为 /var/www/site。当通过 ssh 登录操作系统时,Joe 可以 CRUD /tmp、/home/joe 和 /var/www/site 中的任何文件。检查后,我通过 usermod -s 将 joe 的 shell 设置为“noshell”
joe 的本地目录权限:drwxrwxr-x. 2 joe joe 27 Jun 8 10:05 site
Joe 可以使用 FileZilla 成功登录 vsftpd。但是 Joe 无法使用 FileZilla 将文件拖放到其主目录。Joe 可以从 ftp 托管目录中获取文件。
这是我为完成此任务而创建的当前程序。
# yum install vsftpd
# service vsftpd stop
# vi /etc/vsftpd/vsftpd.userlist
添加: joe
# vi /etc/vsftpd/vsftpd.conf
添加/编辑:
anonymous_enable=NO
local_enable=YES
write_enable=YES
connect_from_port_20=NO
chroot_local_user=YES
local_umask=022
userlist_file=/etc/vsftpd/vsftpd.userlist
userlist_enable=YES
userlist_deny=NO
然后
# useradd -d /var/www/site -s /usr/sbin/nologin joe
# passwd joe
# chown -R joe /var/www/site
# chmod 775 /var/www/site
# vi /etc/shells
如果需要的话,添加:/usr/sbin/nologin
# addgroup joes
# usermod -G joes joe
# service vsftpd start
启动 vsftpd 成功且没有错误。
需要如何配置 vsftp 才能允许 joe 从远程加载文件?
答案1
这两件事使得这项工作有效:
local_umask=777
并且 没有和/或useradd joe -d /var/www/site
的排列似乎会影响任何积极的结果chown
chown