您尚未登录。

#1 2016-12-09 21:24:12

roadgo
会员
注册时间: 2012-04-07
帖子: 380

初学vsftpd之一(anonymous模式)

书是这个
http://www.linuxprobe.com/chapter-00.html
安装

Vsftpd包含在官方软件库中, 可以通过pacman轻松安装

# pacman -S vsftpd
修改 /etc/hosts.allow 可以限制vsftp的允许连接:

# 允许所有连接
vsftpd: ALL
# 只允许固定IP范围用户登录
vsftpd: 10.0.0.0/255.255.255.0
服务器可以通过如下脚本启动:
# systemctl start vsftpd.service
让vsftpd随系统自动启动:
# systemctl enable vsftpd.service

配置
vsftpd的大多数配置都可以通过编辑/etc/vsftpd.conf文件实现. 这个文件自身有大量注释说明, 所以这一章节只就一些重要的配置予以说明. 如果要了解所有的选顶和文档, 请使用man vsftpd.conf (5).
匿名用户登录
/etc/vsftpd.conf如下行控制着匿名用户登录:

anonymous_enable=YES    允许匿名访问模式。
write_enable=YES必需将/etc/vsftpd.conf中的write_enable值设为YES, 以便允许修改系统, 比如上传:
no_anon_password=YES # 匿名用户登录不再需要密码
anon_max_rate=30000  # 每个匿名用户最大下载速度(单位:字节每秒)
anon_umask=022    匿名用户上传文件的umask值。
anon_upload_enable=YES    允许匿名用户上传文件
anon_mkdir_write_enable=YES    允许匿名用户创建目录
anon_other_write_enable=YES    允许匿名用户修改目录名或删除目录
anon_root=/var/ftp       设置文件目录(会出现一个错误,要#chmod a-w /var/ftp )
确认填写正确后保存并退出vsftpd.conf文件,然后重启vsftpd服务程序     
# systemctl restart vsftpd
该运行了
# ftp 192.168.10.10
Connected to 192.168.10.10 (192.168.10.10).
220 (vsFTPd 3.0.2)
Name (192.168.10.10:root): anonymous
331 Please specify the password.
Password:敲击回车
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd pub
250 Directory successfully changed.
ftp> mkdir files
550 Permission denied.
失败原因:
# ls -ld /var/ftp
drwxr-xr-x. 3 root root 16 Jul 13 14:38 /var/ftp
原来匿名用户的FTP根目录所有者/组都是root,所以匿名用户没有写入权限,那我们将所有者修改为ftp试试吧。
# chown  ftp /var/ftp
再来试试
ftp> mkdir   pub
又失败
# chown  ftp /var/ftp/pub
就可以/var/ftp/pub目录里上传和下载。

还存在问题:虽然能正常上传下载文件,但总是有550 Permission denied.

最近编辑记录 roadgo (2016-12-09 21:31:10)

离线

页脚