加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 允许匿名上传Vsftpd?

发布时间:2020-12-13 17:58:10 所属栏目:Linux 来源:网络整理
导读:我需要一个基本的FTP服务器在 Linux(CentOS 5.5)上没有任何安全措施,因为服务器和客户端位于测试局域网上,没有连接到网络的其余部分,网络本身使用NAT防火墙后面的不可路由的IP没有FTP访问权限. 有些人建议Vsftpd或0700或ProFTPd.无论我尝试什么,我都不能让它
我需要一个基本的FTP服务器在 Linux(CentOS 5.5)上没有任何安全措施,因为服务器和客户端位于测试局域网上,没有连接到网络的其余部分,网络本身使用NAT防火墙后面的不可路由的IP没有FTP访问权限.

有些人建议Vsftpd或0700或ProFTPd.无论我尝试什么,我都不能让它允许匿名用户(即记录为“ftp”或“匿名”并输入任何字符串作为密码)来上传文件:

# yum install vsftpd

# mkdir /var/ftp/pub/upload

# cat vsftpd.conf
listen=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
xferlog_file=YES

#anonymous users are restricted (chrooted) to anon_root
#directory was created by root,hence owned by root.root
anon_root=/var/ftp/pub/incoming
anon_upload_enable=YES
anon_mkdir_write_enable=YES

#chroot_local_user=NO
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
chown_uploads=YES

当我从客户端登录时,这是我得到的:

500 OOPS: cannot change directory:/var/ftp/pub/incoming

我也试过“#chmod 777 / var / ftp / incoming /”,但得到了同样的错误.

有人知道如何以最低的安全性配置Vsftpd吗?

谢谢.

编辑:SELinux被禁用,这是文件权限:

# cat /etc/sysconfig/selinux
SELINUX=disabled
SELINUXTYPE=targeted
SETLOCALDEFS=0

# sestatus
SELinux status:                 disabled
# getenforce
Disabled

# grep ftp /etc/passwd
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

# ll /var/
drwxr-xr-x  4 root root 4096 Mar 14 10:53 ftp

# ll /var/ftp/
drwxrwxrwx 2 ftp ftp 4096 Mar 14 10:53 incoming
drwxr-xr-x 3 ftp ftp 4096 Mar 14 11:29 pub

编辑:最新的vsftpd.conf:

listen=YES
local_enable=YES
write_enable=YES
xferlog_file=YES

#anonymous users are restricted (chrooted) to anon_root
anonymous_enable=YES
anon_root=/var/ftp/pub/incoming
anon_upload_enable=YES
anon_mkdir_write_enable=YES

#500 OOPS: bad bool value in config file for: chown_uploads
chown_uploads=YES
chown_username=ftp

编辑:从“chown_uploads”中删除尾随空格,错误500已解决,但匿名仍无效:

client> ./ftp server
Connected to server.
220 (vsFTPd 2.0.5)
Name (server:root): ftp
331 Please specify the password.
Password:
500 OOPS: cannot change directory:/var/ftp/pub/incoming
Login failed.
ftp> bye

在/ etc / passwd中列出用户“ftp”,主目录设置为“/ var / ftp”,并且/ var / ftp的访问权限设置为“drwxr-xr-x”,/ var / ftp / incoming设置为“drwxrwxrwx” ……可能是因为PAM可能?我没有在/ var / log中找到任何FTP日志文件来调查.

编辑:这是一个工作配置,让ftp /匿名连接并上传文件到/ var / ftp:

listen=YES
anonymous_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES

解决方法

您已经创建了一个名为pub / upload的目录:
# mkdir /var/ftp/pub/upload

但后来你配置了上传到pub / incoming:

anon_root=/var/ftp/pub/incoming

所以这是一个简单的路径不匹配,其余的似乎都没问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读