作者 主題: Cent 6.10搭建FTP服务器问题  (閱讀 251 次)

0 會員 與 1 訪客 正在閱讀本文。

darlingshall

  • 可愛的小學生
  • *
  • 文章數: 14
    • 檢視個人資料
Cent 6.10搭建FTP服务器问题
« 於: 2019-08-20 16:34 »
搭了一个ftp服务器,启用了匿名访问和本地账号访问。
想要实现:
1 匿名用户上传文件后,即更改文件拥有者为SAS.以便SAS用户可以下载匿名用户上传的文件。匿名用户的根目录为/var/ftp 文件上传至 /var/ftp/uploads;
2 实体账户登录时都会被假设成SAS用户,根目录为SAS用户的家目录。

碰到的问题:
1 实体用户登录ftp后可以根目录下创建文件夹,但无法查看根目录下的内容,执行dir 或ls 命令时提示 ”226 Transfer done (but failed to open directory)“ 在网上搜答案,说是要把selinux设置为disable才可以,或者把SAS家目录权限放开至777(这个操作过,确实可以实现),想问下除了这两种方法,还有别的方法吗?
2 实体用户登录ftp后,根目录为SAS家目录,在此目录下无法看到匿名用户上传的文档,即无法看到/var/ftp/uploads文件夹下折内容,无法实现下载。自己想到的方式为将/var/ftp/uploads 链接至SAS家目录,更改uploads属组为SAS用户组,并给予改组r x 权限。不知道此方案是否可行.还有没有别的更好的方案?

下面是vsftpd.conf里的内容:
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=002
anon_world_readable_only=YES
anon_other_write_enable=YES
anon_mkdir_write_enable=YES
chown_uploads=YES
chown_username=SAS
anon_upload_enable=YES
deny_email_enable=YES
no_anon_password=YES
anon_max_rate=300000
anon_umask=077
dirmessage_enable=YES
message_file=.message
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
nopriv_user=nobody
ftpd_banner=Welcome to SASG FTP service.
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
tcp_wrappers=YES
listen_port=21
pasv_enable=YES
accept_timeout=60
data_connection_timeout=300
idle_session_timeout=300
max_clients=8
max_per_ip=3
pasv_min_port=9521
pasv_min_port=9527
guest_enable=YES
guest_username=SAS
use_localtime=YES
banner_file=/etc/vsftpd/welcome.txt
local_max_rate=800000
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log



netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17463
    • 檢視個人資料
    • http://www.study-area.org
Re: Cent 6.10搭建FTP服务器问题
« 回覆 #1 於: 2019-08-20 22:13 »
1. 如果 chmod 777 可以的話,那幾乎可以排除是 selinux 的影響。
chown_uploads=YES
chown_username=SAS
anon_umask=077
因爲你使用了 chown,上傳後身份就改變了,所以 guest 會無法 ls / dir 那是正常的。
這其實也是匿名上傳的建議做法,沒啥不好,並非遇到問題了。

2. 在匿名上傳的 ftp 管理中,需要本機的管理員檢核過上傳的文件,再決定是否開放匿名 ftp 下載,若覺得可以,執行 chown vsftpd 修改允許之文件即可。